Class SecuredAjaxButton

  • All Implemented Interfaces:
    com.googlecode.wicket.jquery.core.IJQueryWidget, Serializable, Iterable<org.apache.wicket.Component>, org.apache.wicket.event.IEventSink, org.apache.wicket.event.IEventSource, org.apache.wicket.feedback.IFeedbackContributor, org.apache.wicket.IConverterLocator, org.apache.wicket.IGenericComponent<String,​org.apache.wicket.markup.html.form.FormComponent<String>>, org.apache.wicket.IMetadataContext<Serializable,​org.apache.wicket.Component>, org.apache.wicket.markup.html.form.IFormModelUpdateListener, org.apache.wicket.markup.html.form.IFormSubmitter, org.apache.wicket.markup.html.form.IFormSubmittingComponent, org.apache.wicket.markup.html.form.IFormVisitorParticipant, org.apache.wicket.markup.html.form.ILabelProvider<String>, org.apache.wicket.markup.html.IHeaderContributor, org.apache.wicket.request.component.IRequestableComponent, org.apache.wicket.util.IHierarchical<org.apache.wicket.Component>, org.apache.wicket.util.io.IClusterable

    public abstract class SecuredAjaxButton
    extends AjaxButton
    Provides a jQuery button based on the built-in AjaxButton, protected by roles. Roles are checked against an IJQuerySecurityProvider
    Assuming the WebSession is implementing IJQuerySecurityProvider if not provided.
    Author:
    Sebastien Briquet - sebfz1
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface com.googlecode.wicket.jquery.core.IJQueryWidget

        com.googlecode.wicket.jquery.core.IJQueryWidget.JQueryWidget
    • Field Summary

      • Fields inherited from class org.apache.wicket.markup.html.form.FormComponent

        FLAG_CONVERT_EMPTY_INPUT_STRING_TO_NULL, VALUE_SEPARATOR
      • Fields inherited from class org.apache.wicket.Component

        ENABLE, FLAG_INITIALIZED, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected String getIcon()
      Gets the icon being displayed in the button
      boolean isLocked()
      Indicates whether the button is locked.
      protected void onComponentTag​(org.apache.wicket.markup.ComponentTag tag)  
      protected void onConfigure()  
      void setRoles​(String[] roles)
      Sets the roles if there are not transmitted to the constructor
      • Methods inherited from class org.apache.wicket.ajax.markup.html.form.AjaxButton

        getForm, getStatelessHint, newAjaxFormSubmitBehavior, onAfterSubmit, onAfterSubmit, onError, onSubmit, onSubmit, updateAjaxAttributes
      • Methods inherited from class org.apache.wicket.markup.html.form.Button

        getDefaultFormProcessing, getOnClickScript, initModel, onComponentTagBody, setDefaultFormProcessing, updateModel
      • Methods inherited from class org.apache.wicket.markup.html.form.FormComponent

        add, add, checkRequired, clearInput, convertInput, convertValue, error, getConvertedInput, getDefaultLabel, getDefaultLabel, getInput, getInputAsArray, getInputName, getModelValue, getParameterValues, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isInputNullable, isMultiPart, isRequired, isValid, newValidatable, newValidationError, onDetach, onDisabled, onInvalid, onValid, processChildren, processInput, remove, reportRequiredError, setConvertedInput, setLabel, setModelValue, setRequired, setType, shouldTrimInput, trim, updateAutoLabels, updateCollectionModel, valid, validate, validateRequired, validateValidators, visitComponentsPostOrder, visitFormComponentsPostOrder
      • Methods inherited from class org.apache.wicket.markup.html.form.LabeledWebMarkupContainer

        getLabel
      • Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer

        getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession
      • Methods inherited from class org.apache.wicket.MarkupContainer

        add, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findChildComponent, findComponentToDequeue, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, getRegionMarkup, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildren
      • Methods inherited from class org.apache.wicket.Component

        add, addStateChange, beforeRender, canCallListener, canCallListenerAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, createConverter, debug, detach, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSession, getSizeInBytes, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, newMarkupSourcingStrategy, onAfterRender, onBeforeRender, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderPart, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlForListener, urlForListener, visitParents, visitParents, warn, wrap
      • Methods inherited from interface org.apache.wicket.markup.html.form.IFormSubmittingComponent

        getInputName
      • Methods inherited from interface org.apache.wicket.IGenericComponent

        getDefaultModel, getDefaultModelObject, getModel, getModelObject, setDefaultModel, setDefaultModelObject, setModel, setModelObject
    • Constructor Detail

      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 com.googlecode.wicket.jquery.core.IJQuerySecurityProvider provider,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        provider - the IJQuerySecurityProvider that will check roles
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 org.apache.wicket.markup.html.form.Form<?> form,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        form - the Form
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 org.apache.wicket.markup.html.form.Form<?> form,
                                 com.googlecode.wicket.jquery.core.IJQuerySecurityProvider provider,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        form - the Form
        provider - the IJQuerySecurityProvider that will check roles
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 org.apache.wicket.model.IModel<String> model,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 org.apache.wicket.model.IModel<String> model,
                                 com.googlecode.wicket.jquery.core.IJQuerySecurityProvider provider,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        provider - the IJQuerySecurityProvider that will check roles
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 org.apache.wicket.model.IModel<String> model,
                                 org.apache.wicket.markup.html.form.Form<?> form,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        form - the Form
        roles - list of roles allowed to enable the button
      • SecuredAjaxButton

        public SecuredAjaxButton​(String id,
                                 org.apache.wicket.model.IModel<String> model,
                                 org.apache.wicket.markup.html.form.Form<?> form,
                                 com.googlecode.wicket.jquery.core.IJQuerySecurityProvider provider,
                                 String... roles)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        form - the Form
        provider - the IJQuerySecurityProvider that will check roles
        roles - list of roles allowed to enable the button
    • Method Detail

      • setRoles

        public void setRoles​(String[] roles)
        Sets the roles if there are not transmitted to the constructor
        Parameters:
        roles - the role list
      • isLocked

        public final boolean isLocked()
        Indicates whether the button is locked.
        Returns:
        the result of IJQuerySecurityProvider.hasRole(String...)
      • onConfigure

        protected void onConfigure()
        Overrides:
        onConfigure in class org.apache.wicket.Component
      • onComponentTag

        protected void onComponentTag​(org.apache.wicket.markup.ComponentTag tag)
        Overrides:
        onComponentTag in class org.apache.wicket.markup.html.form.Button