Example usage for org.apache.wicket.markup.html.panel Fragment setEnabled

List of usage examples for org.apache.wicket.markup.html.panel Fragment setEnabled

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.panel Fragment setEnabled.

Prototype

public final Component setEnabled(final boolean enabled) 

Source Link

Document

Sets whether this component is enabled.

Usage

From source file:org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksPanel.java

License:Apache License

public ActionLinksPanel<T> add(final ActionLink<T> link, final ActionLink.ActionType type,
        final String entitlements, final boolean enabled) {

    Fragment fragment = null;

    switch (type) {

    case CLAIM:/*from  www .  j  a  va  2  s. c  o m*/
        fragment = new Fragment("panelClaim", "fragmentClaim", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("claimLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case MANAGE_RESOURCES:
        fragment = new Fragment("panelManageResources", "fragmentManageResources", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("manageResourcesLink") {

            private static final long serialVersionUID = -6957616042924610291L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case MANAGE_USERS:
        fragment = new Fragment("panelManageUsers", "fragmentManageUsers", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("manageUsersLink") {

            private static final long serialVersionUID = -6957616042924610292L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case MANAGE_GROUPS:
        fragment = new Fragment("panelManageGroups", "fragmentManageGroups", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("manageGroupsLink") {

            private static final long serialVersionUID = -6957616042924610293L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case MAPPING:
        fragment = new Fragment("panelMapping", "fragmentMapping", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("mappingLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case MUSTCHANGEPASSWORD:
        fragment = new Fragment("panelMustChangePassword", "fragmentMustChangePassword", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("MustChangePasswordLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case SET_LATEST_SYNC_TOKEN:
        fragment = new Fragment("panelSetLatestSyncToken", "fragmentSetLatestSyncToken", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("setLatestSyncTokenLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case REMOVE_SYNC_TOKEN:
        fragment = new Fragment("panelRemoveSyncToken", "fragmentRemoveSyncToken", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("removeSyncTokenLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case CLONE:
        fragment = new Fragment("panelClone", "fragmentClone", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("cloneLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case CREATE:
        fragment = new Fragment("panelCreate", "fragmentCreate", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("createLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case RESET:
        fragment = new Fragment("panelReset", "fragmentReset", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("resetLink") {

            private static final long serialVersionUID = -6957616042924610290L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case TEMPLATE:
        fragment = new Fragment("panelTemplate", "fragmentTemplate", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("templateLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EDIT:
        fragment = new Fragment("panelEdit", "fragmentEdit", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("editLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case TYPE_EXTENSIONS:
        fragment = new Fragment("panelTypeExtensions", "fragmentTypeExtensions", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("typeExtensionsLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case FO_EDIT:
        fragment = new Fragment("panelFoEdit", "fragmentFoEdit", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("foEditLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case HTML:
        fragment = new Fragment("panelHtml", "fragmentHtml", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("htmlLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case TEXT:
        fragment = new Fragment("panelText", "fragmentText", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("textLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case COMPOSE:
        fragment = new Fragment("panelCompose", "fragmentCompose", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("composeLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case LAYOUT_EDIT:
        fragment = new Fragment("panelLayoutEdit", "fragmentLayoutEdit", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("layoutEditLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case ENABLE:
        fragment = new Fragment("panelEnable", "fragmentEnable", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("enableLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case NOT_FOND:
        fragment = new Fragment("panelNotFound", "fragmentNotFound", this);
        break;

    case VIEW:
        fragment = new Fragment("panelView", "fragmentView", this);
        fragment.addOrReplace(new IndicatingAjaxLink<Void>("viewLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case MEMBERS:
        fragment = new Fragment("panelMembers", "fragmentMembers", this);
        fragment.addOrReplace(new IndicatingAjaxLink<Void>("membersLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case SEARCH:
        fragment = new Fragment("panelSearch", "fragmentSearch", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("searchLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EXECUTE:
        fragment = new Fragment("panelExecute", "fragmentExecute", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("executeLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case DRYRUN:
        fragment = new Fragment("panelDryRun", "fragmentDryRun", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("dryRunLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case DELETE:
        fragment = new Fragment("panelDelete", "fragmentDelete", this);

        fragment.addOrReplace(new IndicatingOnConfirmAjaxLink<Void>("deleteLink", enabled) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }).setVisible(link.isEnabled(model.getObject()));

        break;

    case SELECT:
        fragment = new Fragment("panelSelect", "fragmentSelect", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("selectLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }).setVisible(link.isEnabled(model.getObject()));

        break;
    case CLOSE:
        fragment = new Fragment("panelClose", "fragmentClose", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("closeLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }).setVisible(link.isEnabled(model.getObject()));

        break;

    case EXPORT:
        fragment = new Fragment("panelExport", "fragmentExport", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("exportLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EXPORT_CSV:
        fragment = new Fragment("panelExportCSV", "fragmentExportCSV", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("exportCSVLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EXPORT_HTML:
        fragment = new Fragment("panelExportHTML", "fragmentExportHTML", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("exportHTMLLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EXPORT_PDF:
        fragment = new Fragment("panelExportPDF", "fragmentExportPDF", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("exportPDFLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EXPORT_RTF:
        fragment = new Fragment("panelExportRTF", "fragmentExportRTF", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("exportRTFLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case EXPORT_XML:
        fragment = new Fragment("panelExportXML", "fragmentExportXML", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("exportXMLLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case SUSPEND:
        fragment = new Fragment("panelSuspend", "fragmentSuspend", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("suspendLink") {

            private static final long serialVersionUID = -6957616042924610291L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case REACTIVATE:
        fragment = new Fragment("panelReactivate", "fragmentReactivate", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("reactivateLink") {

            private static final long serialVersionUID = -6957616042924610292L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case RELOAD:
        fragment = new Fragment("panelReload", "fragmentReload", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("reloadLink") {

            private static final long serialVersionUID = -6957616042924610293L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case CHANGE_VIEW:
        fragment = new Fragment("panelChangeView", "fragmentChangeView", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("changeViewLink") {

            private static final long serialVersionUID = -6957616042924610292L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case UNLINK:
        fragment = new Fragment("panelUnlink", "fragmentUnlink", this);

        fragment.addOrReplace(new IndicatingOnConfirmAjaxLink<Void>("unlinkLink", "confirmUnlink", enabled) {

            private static final long serialVersionUID = -6957616042924610293L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case LINK:
        fragment = new Fragment("panelLink", "fragmentLink", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("linkLink") {

            private static final long serialVersionUID = -6957616042924610303L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case UNASSIGN:
        fragment = new Fragment("panelUnassign", "fragmentUnassign", this);

        fragment.addOrReplace(
                new IndicatingOnConfirmAjaxLink<Void>("unassignLink", "confirmUnassign", enabled) {

                    private static final long serialVersionUID = -6957616042924610294L;

                    @Override
                    public void onClick(final AjaxRequestTarget target) {
                        link.onClick(target, model.getObject());
                    }

                    @Override
                    public String getAjaxIndicatorMarkupId() {
                        return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                                : super.getAjaxIndicatorMarkupId();
                    }
                }.setVisible(link.isEnabled(model.getObject())));
        break;

    case ASSIGN:
        fragment = new Fragment("panelAssign", "fragmentAssign", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("assignLink") {

            private static final long serialVersionUID = -6957616042924610304L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case DEPROVISION:
        fragment = new Fragment("panelDeprovision", "fragmentDeprovision", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("deprovisionLink") {

            private static final long serialVersionUID = -6957616042924610295L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case PROVISION:
        fragment = new Fragment("panelProvision", "fragmentProvision", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("provisionLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case DEPROVISION_MEMBERS:
        fragment = new Fragment("panelDeprovisionMembers", "fragmentDeprovisionMembers", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("deprovisionMembersLink") {

            private static final long serialVersionUID = -6957616042924610295L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case PROVISION_MEMBERS:
        fragment = new Fragment("panelProvisionMembers", "fragmentProvisionMembers", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("provisionMembersLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case PROPAGATION_TASKS:
        fragment = new Fragment("panelPropagationTasks", "fragmentPropagationTasks", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("propagationTasksLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case NOTIFICATION_TASKS:
        fragment = new Fragment("panelNotificationTasks", "fragmentNotificationTasks", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("notificationTasksLink") {

            private static final long serialVersionUID = -1876519166660008562L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case ZOOM_IN:
        fragment = new Fragment("panelZoomIn", "fragmentZoomIn", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("zoomInLink") {

            private static final long serialVersionUID = -6957616042924610305L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    case ZOOM_OUT:
        fragment = new Fragment("panelZoomOut", "fragmentZoomOut", this);

        fragment.addOrReplace(new IndicatingAjaxLink<Void>("zoomOutLink") {

            private static final long serialVersionUID = -6957616042924610305L;

            @Override
            public void onClick(final AjaxRequestTarget target) {
                link.onClick(target, model.getObject());
            }

            @Override
            public String getAjaxIndicatorMarkupId() {
                return disableIndicator || !link.isIndicatorEnabled() ? StringUtils.EMPTY
                        : super.getAjaxIndicatorMarkupId();
            }
        }.setVisible(link.isEnabled(model.getObject())));
        break;

    default:
        // do nothing
    }

    if (fragment != null) {
        fragment.setEnabled(enabled);
        if (StringUtils.isNotBlank(entitlements)) {
            MetaDataRoleAuthorizationStrategy.authorize(fragment, RENDER, entitlements);
        }
        super.addOrReplace(fragment);
    }

    return this;
}

From source file:org.apache.syncope.console.wicket.markup.html.form.ActionLinksPanel.java

License:Apache License

public void addWithRoles(final ActionLink link, final ActionLink.ActionType type, final String roles,
        final boolean enabled) {

    Fragment fragment = null;

    switch (type) {

    case CLAIM://from   w w w.j  av a 2 s .  c o  m
        fragment = new Fragment("panelClaim", "fragmentClaim", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("claimLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case MANAGE_RESOURCES:
        fragment = new Fragment("panelManageResources", "fragmentManageResources", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("manageResourcesLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610291L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case MANAGE_USERS:
        fragment = new Fragment("panelManageUsers", "fragmentManageUsers", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("manageUsersLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610292L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case MANAGE_ROLES:
        fragment = new Fragment("panelManageRoles", "fragmentManageRoles", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("manageRolesLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610293L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case CREATE:
        fragment = new Fragment("panelCreate", "fragmentCreate", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("createLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case RESET:
        fragment = new Fragment("panelReset", "fragmentReset", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("resetLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610290L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        });
        break;

    case EDIT:
        fragment = new Fragment("panelEdit", "fragmentEdit", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("editLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case USER_TEMPLATE:
        fragment = new Fragment("panelUserTemplate", "fragmentUserTemplate", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("userTemplateLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case ROLE_TEMPLATE:
        fragment = new Fragment("panelRoleTemplate", "fragmentRoleTemplate", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("roleTemplateLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case ENABLE:
        fragment = new Fragment("panelEnable", "fragmentEnable", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("enableLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case SEARCH:
        fragment = new Fragment("panelSearch", "fragmentSearch", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("searchLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case EXECUTE:
        fragment = new Fragment("panelExecute", "fragmentExecute", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("executeLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case DRYRUN:
        fragment = new Fragment("panelDryRun", "fragmentDryRun", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("dryRunLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case DELETE:
        fragment = new Fragment("panelDelete", "fragmentDelete", this);

        fragment.addOrReplace(new IndicatingOnConfirmAjaxLink<Void>("deleteLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));

        break;

    case SELECT:
        fragment = new Fragment("panelSelect", "fragmentSelect", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("selectLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));

        break;

    case EXPORT:
        fragment = new Fragment("panelExport", "fragmentExport", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("exportLink", pageRef) {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case SUSPEND:
        fragment = new Fragment("panelSuspend", "fragmentSuspend", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("suspendLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610291L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case REACTIVATE:
        fragment = new Fragment("panelReactivate", "fragmentReactivate", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("reactivateLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610292L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case RELOAD:
        fragment = new Fragment("panelReload", "fragmentReload", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("reloadLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610293L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case CHANGE_VIEW:
        fragment = new Fragment("panelChangeView", "fragmentChangeView", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("changeViewLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610292L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case UNLINK:
        fragment = new Fragment("panelUnlink", "fragmentUnlink", this);

        fragment.addOrReplace(new IndicatingOnConfirmAjaxLink<Void>("unlinkLink", pageRef, "confirmUnlink") {

            private static final long serialVersionUID = -6957616042924610293L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case LINK:
        fragment = new Fragment("panelLink", "fragmentLink", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("linkLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610303L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case UNASSIGN:
        fragment = new Fragment("panelUnassign", "fragmentUnassign", this);

        fragment.addOrReplace(
                new IndicatingOnConfirmAjaxLink<Void>("unassignLink", pageRef, "confirmUnassign") {

                    private static final long serialVersionUID = -6957616042924610294L;

                    @Override
                    protected void onClickInternal(final AjaxRequestTarget target) {
                        link.onClick(target);
                    }
                }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case ASSIGN:
        fragment = new Fragment("panelAssign", "fragmentAssign", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("assignLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610304L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case DEPROVISION:
        fragment = new Fragment("panelDeprovision", "fragmentDeprovision", this);

        fragment.addOrReplace(
                new IndicatingOnConfirmAjaxLink<Void>("deprovisionLink", pageRef, "confirmDeprovision") {

                    private static final long serialVersionUID = -6957616042924610295L;

                    @Override
                    protected void onClickInternal(final AjaxRequestTarget target) {
                        link.onClick(target);
                    }
                }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;

    case PROVISION:
        fragment = new Fragment("panelProvision", "fragmentProvision", this);

        fragment.addOrReplace(new ClearIndicatingAjaxLink<Void>("provisionLink", pageRef) {

            private static final long serialVersionUID = -6957616042924610305L;

            @Override
            protected void onClickInternal(final AjaxRequestTarget target) {
                link.onClick(target);
            }
        }.feedbackPanelAutomaticReload(link.feedbackPanelAutomaticReload()));
        break;
    default:
        // do nothing
    }

    if (fragment != null) {
        fragment.setEnabled(enabled);
        MetaDataRoleAuthorizationStrategy.authorize(fragment, ENABLE, roles);
        super.addOrReplace(fragment);
    }
}

From source file:org.geoserver.web.data.workspace.WorkspacePage.java

License:Open Source License

protected Component headerPanel() {
    Fragment header = new Fragment(HEADER_PANEL, "header", this);

    // the add button
    header.add(new BookmarkablePageLink("addNew", WorkspaceNewPage.class));

    // the removal button
    header.add(removal = new SelectionRemovalLink("removeSelected", table, dialog));
    removal.setOutputMarkupId(true);//from   w  ww. j a  v a2 s .c  o  m
    removal.setEnabled(false);

    //check for full admin, we don't allow workspace admins to add new workspaces
    header.setEnabled(isAuthenticatedAsAdmin());
    return header;
}

From source file:org.syncope.console.wicket.markup.html.form.ActionLinksPanel.java

License:Apache License

public void add(final ActionLink link, final ActionLink.ActionType type, final String roles,
        final boolean enabled) {

    Fragment fragment = null;

    switch (type) {
    case CLAIM:/* www  .  j  av  a2 s  .  co  m*/
        fragment = new Fragment("panelClaim", "fragmentClaim", this);

        fragment.addOrReplace(new IndicatingAjaxLink("claimLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    case CREATE:
        fragment = new Fragment("panelCreate", "fragmentCreate", this);

        fragment.addOrReplace(new IndicatingAjaxLink("createLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;

    case EDIT:
        fragment = new Fragment("panelEdit", "fragmentEdit", this);

        fragment.addOrReplace(new IndicatingAjaxLink("editLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    case TEMPLATE:
        fragment = new Fragment("panelTemplate", "fragmentTemplate", this);

        fragment.addOrReplace(new IndicatingAjaxLink("templateLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    case SEARCH:
        fragment = new Fragment("panelSearch", "fragmentSearch", this);

        fragment.addOrReplace(new IndicatingAjaxLink("searchLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    case EXECUTE:
        fragment = new Fragment("panelExecute", "fragmentExecute", this);

        fragment.addOrReplace(new IndicatingAjaxLink("executeLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    case DRYRUN:
        fragment = new Fragment("panelDryRun", "fragmentDryRun", this);

        fragment.addOrReplace(new IndicatingAjaxLink("dryRunLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    case DELETE:
        fragment = new Fragment("panelDelete", "fragmentDelete", this);

        fragment.addOrReplace(new IndicatingDeleteOnConfirmAjaxLink("deleteLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });

        break;
    case EXPORT:
        fragment = new Fragment("panelExport", "fragmentExport", this);

        fragment.addOrReplace(new IndicatingAjaxLink("exportLink") {

            private static final long serialVersionUID = -7978723352517770644L;

            @Override
            public void onClick(final AjaxRequestTarget target) {

                link.onClick(target);
            }
        });
        break;
    default:
        // do nothink
    }

    if (fragment != null) {
        fragment.setEnabled(enabled);
        MetaDataRoleAuthorizationStrategy.authorize(fragment, ENABLE, roles);
        super.addOrReplace(fragment);
    }
}