Example usage for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel

List of usage examples for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel

Introduction

In this page you can find the example usage for org.apache.wicket.model AbstractReadOnlyModel AbstractReadOnlyModel.

Prototype

AbstractReadOnlyModel

Source Link

Usage

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertCampaigns.java

License:Apache License

private IModel<String> createCloseCampaignConfirmString() {
    return new AbstractReadOnlyModel<String>() {

        @Override/*w w  w .ja va 2 s.c o m*/
        public String getObject() {

            return createStringResource("PageCertCampaigns.message.closeCampaignConfirmSingle",
                    relevantCampaign.getName()).getString();
        }
    };
}

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertCampaigns.java

License:Apache License

private IModel<String> createCloseSelectedCampaignsConfirmString() {
    return new AbstractReadOnlyModel<String>() {

        @Override//w w w .  j  a  v a 2s .  c  om
        public String getObject() {

            final List<Selectable> selectedData = WebComponentUtil.getSelectedData(getCampaignsTable());
            if (selectedData.size() > 1) {
                return createStringResource("PageCertCampaigns.message.closeCampaignConfirmMultiple",
                        selectedData.size()).getString();
            } else if (selectedData.size() == 1) {
                return createStringResource("PageCertCampaigns.message.closeCampaignConfirmSingle",
                        ((CertCampaignListItemDto) selectedData.get(0)).getName()).getString();
            } else {
                return "EMPTY";
            }
        }
    };
}

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertCampaigns.java

License:Apache License

private IModel<String> createDeleteCampaignConfirmString() {
    return new AbstractReadOnlyModel<String>() {

        @Override//from   w ww. jav a2 s .  c  om
        public String getObject() {
            return createStringResource("PageCertCampaigns.message.deleteCampaignConfirmSingle",
                    relevantCampaign.getName()).getString();
        }
    };
}

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertCampaigns.java

License:Apache License

private IModel<String> createDeleteSelectedCampaignsConfirmString() {
    return new AbstractReadOnlyModel<String>() {

        @Override//from   w w w .j  a  v  a2s.  c om
        public String getObject() {
            final List<Selectable> selectedData = WebComponentUtil.getSelectedData(getCampaignsTable());
            if (selectedData.size() > 1) {
                return createStringResource("PageCertCampaigns.message.deleteCampaignConfirmMultiple",
                        selectedData.size()).getString();
            } else if (selectedData.size() == 1) {
                return createStringResource("PageCertCampaigns.message.deleteCampaignConfirmSingle",
                        ((CertCampaignListItemDto) selectedData.get(0)).getName()).getString();
            } else {
                return "EMPTY";
            }
        }
    };
}

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertCampaigns.java

License:Apache License

private void createInlineMenuForItem(final CertCampaignListItemDto dto) {

    dto.getMenuItems().clear();/*from   www .  ja  v a2s .c  om*/
    dto.getMenuItems().add(new InlineMenuItem(createStringResource("PageCertCampaigns.menu.close"),
            new ColumnMenuAction<CertCampaignListItemDto>() {
                @Override
                public void onClick(AjaxRequestTarget target) {
                    closeCampaignConfirmation(target, dto);
                }
            }) {
        @Override
        public IModel<Boolean> getEnabled() {
            return new AbstractReadOnlyModel<Boolean>() {
                @Override
                public Boolean getObject() {
                    return dto.getState() != AccessCertificationCampaignStateType.CLOSED;
                }
            };
        }
    });
    dto.getMenuItems().add(new InlineMenuItem(createStringResource("PageCertCampaigns.menu.delete"),
            new ColumnMenuAction<CertCampaignListItemDto>() {

                @Override
                public void onClick(AjaxRequestTarget target) {
                    deleteCampaignConfirmation(target, dto);
                }
            }));
}

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertDecisions.java

License:Apache License

private List<IColumn<CertDecisionDto, String>> initColumns() {
    List<IColumn<CertDecisionDto, String>> columns = new ArrayList<>();

    IColumn column;//from  w  w  w  .  jav  a2s. c o m

    column = new CheckBoxHeaderColumn<>();
    columns.add(column);

    column = helper.createObjectOrTargetTypeColumn(true, this);
    columns.add(column);

    column = helper.createObjectNameColumn(this, "PageCertDecisions.table.objectName");
    columns.add(column);

    column = helper.createObjectOrTargetTypeColumn(false, this);
    columns.add(column);

    column = helper.createTargetNameColumn(this, "PageCertDecisions.table.targetName");
    columns.add(column);

    column = helper.createDetailedInfoColumn(this);
    columns.add(column);

    if (WebComponentUtil.isAuthorized(AuthorizationConstants.AUTZ_UI_CERTIFICATION_ALL_URL,
            AuthorizationConstants.AUTZ_UI_CERTIFICATION_CAMPAIGN_URL)) {

        column = new LinkColumn<CertDecisionDto>(createStringResource("PageCertDecisions.table.campaignName"),
                AccessCertificationCaseType.F_CAMPAIGN_REF.getLocalPart(), CertDecisionDto.F_CAMPAIGN_NAME) {
            @Override
            public void populateItem(Item<ICellPopulator<CertDecisionDto>> item, String componentId,
                    IModel<CertDecisionDto> rowModel) {
                super.populateItem(item, componentId, rowModel);
                AccessCertificationCampaignType campaign = rowModel.getObject().getCampaign();
                if (campaign != null && campaign.getDescription() != null) {
                    item.add(AttributeModifier.replace("title", campaign.getDescription()));
                    item.add(new TooltipBehavior());
                }
            }

            @Override
            public void onClick(AjaxRequestTarget target, IModel<CertDecisionDto> rowModel) {
                CertDecisionDto dto = rowModel.getObject();
                PageParameters parameters = new PageParameters();
                parameters.add(OnePageParameterEncoder.PARAMETER, dto.getCampaignRef().getOid());
                setResponsePage(PageCertCampaign.class, parameters);
            }
        };
    } else {
        column = new AbstractColumn<CertDecisionDto, String>(
                createStringResource("PageCertDecisions.table.campaignName")) {
            @Override
            public void populateItem(Item<ICellPopulator<CertDecisionDto>> item, String componentId,
                    final IModel<CertDecisionDto> rowModel) {
                item.add(new Label(componentId, new AbstractReadOnlyModel<Object>() {
                    @Override
                    public Object getObject() {
                        return rowModel.getObject().getCampaignName();
                    }
                }));
            }
        };
    }
    columns.add(column);

    column = new AbstractColumn<CertDecisionDto, String>(
            createStringResource("PageCertDecisions.table.campaignStage")) {
        @Override
        public void populateItem(Item<ICellPopulator<CertDecisionDto>> item, String componentId,
                final IModel<CertDecisionDto> rowModel) {
            item.add(new Label(componentId, new AbstractReadOnlyModel<String>() {
                @Override
                public String getObject() {
                    CertDecisionDto dto = rowModel.getObject();
                    return dto.getCampaignStageNumber() + "/" + dto.getCampaignStageCount();
                }
            }));
            String stageName = rowModel.getObject().getCurrentStageName();
            if (stageName != null) {
                item.add(AttributeModifier.replace("title", stageName));
                item.add(new TooltipBehavior());
            }
        }
    };
    columns.add(column);

    column = new PropertyColumn<CertDecisionDto, String>(
            createStringResource("PageCertDecisions.table.requested"),
            AccessCertificationCaseType.F_CURRENT_REVIEW_REQUESTED_TIMESTAMP.getLocalPart(),
            CertDecisionDto.F_REVIEW_REQUESTED) {
        @Override
        public void populateItem(Item<ICellPopulator<CertDecisionDto>> item, String componentId,
                IModel<CertDecisionDto> rowModel) {
            super.populateItem(item, componentId, rowModel);
            CertDecisionDto dto = rowModel.getObject();
            Date started = dto.getStageStarted();
            if (started != null) {
                item.add(AttributeModifier.replace("title",
                        WebComponentUtil.getLocalizedDate(started, DateLabelComponent.LONG_MEDIUM_STYLE)));
                item.add(new TooltipBehavior());
            }
        }
    };
    columns.add(column);

    column = new PropertyColumn<CertDecisionDto, String>(
            createStringResource("PageCertDecisions.table.deadline"),
            AccessCertificationCaseType.F_CURRENT_REVIEW_DEADLINE.getLocalPart(),
            CertDecisionDto.F_DEADLINE_AS_STRING) {
        @Override
        public void populateItem(Item<ICellPopulator<CertDecisionDto>> item, String componentId,
                final IModel<CertDecisionDto> rowModel) {
            super.populateItem(item, componentId, rowModel);
            XMLGregorianCalendar deadline = rowModel.getObject().getCertCase().getCurrentReviewDeadline();
            if (deadline != null) {
                item.add(AttributeModifier.replace("title", WebComponentUtil.formatDate(deadline)));
                item.add(new TooltipBehavior());
            }
        }
    };
    columns.add(column);

    final AvailableResponses availableResponses = new AvailableResponses(getPage());
    final int responses = availableResponses.getResponseKeys().size();

    column = new MultiButtonColumn<CertDecisionDto>(new Model(), responses + 1) {

        @Override
        public String getCaption(int id) {
            return availableResponses.getCaption(id);
        }

        @Override
        public boolean isButtonEnabled(int id, IModel<CertDecisionDto> model) {
            if (id < responses) {
                return !decisionEquals(model, availableResponses.getResponseValues().get(id));
            } else {
                return false;
            }
        }

        @Override
        public boolean isButtonVisible(int id, IModel<CertDecisionDto> model) {
            if (id < responses) {
                return true;
            } else {
                return !availableResponses.isAvailable(model.getObject().getResponse());
            }
        }

        @Override
        public String getButtonColorCssClass(int id) {
            if (id < responses) {
                return getDecisionButtonColor(getRowModel(), availableResponses.getResponseValues().get(id));
            } else {
                return BUTTON_COLOR_CLASS.DANGER.toString();
            }
        }

        @Override
        public void clickPerformed(int id, AjaxRequestTarget target, IModel<CertDecisionDto> model) {
            if (id < responses) { // should be always the case
                recordActionPerformed(target, model.getObject(),
                        availableResponses.getResponseValues().get(id));
            }
        }

    };
    columns.add(column);

    column = new DirectlyEditablePropertyColumn(createStringResource("PageCertDecisions.table.comment"),
            CertDecisionDto.F_COMMENT) {
        @Override
        public void onBlur(AjaxRequestTarget target, IModel model) {
            // TODO determine somehow if the model.comment was really changed
            recordActionPerformed(target, (CertDecisionDto) model.getObject(), null);
        }
    };
    columns.add(column);

    columns.add(new InlineMenuHeaderColumn(createInlineMenu(availableResponses)));

    return columns;
}

From source file:com.evolveum.midpoint.web.page.admin.certification.PageCertDefinitions.java

License:Apache License

private IModel<String> createDeleteConfirmString() {
    return new AbstractReadOnlyModel<String>() {
        @Override//from   ww w  .  java2  s .  c  o m
        public String getObject() {
            if (singleDelete == null) {
                return "";
            } else {
                return createStringResource("PageCertDefinitions.deleteDefinitionConfirmSingle",
                        singleDelete.getName()).getString();
            }
        }
    };
}

From source file:com.evolveum.midpoint.web.page.admin.configuration.component.ChooseTypePanel.java

License:Apache License

@Override
protected void initLayout() {

    final Label name = new Label(ID_OBJECT_NAME, new AbstractReadOnlyModel<String>() {

        @Override/*  w w w.  j a v  a 2 s .  co m*/
        public String getObject() {
            ObjectViewDto dto = getModel().getObject();

            if (dto.getName() != null)
                return getModel().getObject().getName();
            else
                return createStringResource("chooseTypePanel.ObjectNameValue.null").getString();
        }
    });
    name.setOutputMarkupId(true);

    AjaxLink choose = new AjaxLink(ID_LINK_CHOOSE) {
        @Override
        public void onClick(AjaxRequestTarget target) {
            changeOptionPerformed(target);
        }
    };

    AjaxLink remove = new AjaxLink(ID_LINK_REMOVE) {
        @Override
        public void onClick(AjaxRequestTarget target) {
            setToDefault();
            target.add(name);
        }
    };

    add(choose);
    add(remove);
    add(name);

    initDialog();
}

From source file:com.evolveum.midpoint.web.page.admin.configuration.component.LoggingConfigPanel.java

License:Apache License

private IModel<List<String>> createNewLoggerAppendersListModel() {
    return new AbstractReadOnlyModel<List<String>>() {

        @Override/*from   w w  w.j a  v a  2 s  .  c  o m*/
        public List<String> getObject() {
            List<String> list = new ArrayList<String>();

            LoggingDto dto = getModel().getObject();

            //list.add(PageSystemConfiguration.ROOT_APPENDER_INHERITANCE_CHOICE);
            for (AppenderConfiguration appender : dto.getAppenders()) {

                if (!appender.getName().equals(dto.getRootAppender())) {
                    list.add(appender.getName());
                }
            }

            return list;
        }
    };
}

From source file:com.evolveum.midpoint.web.page.admin.configuration.component.LoggingConfigPanel.java

License:Apache License

private IModel<List<String>> createAppendersListModel() {
    return new AbstractReadOnlyModel<List<String>>() {

        @Override/* www .  j a v  a  2 s.co  m*/
        public List<String> getObject() {
            List<String> list = new ArrayList<String>();

            LoggingDto dto = getModel().getObject();
            for (AppenderConfiguration appender : dto.getAppenders()) {
                list.add(appender.getName());
            }

            return list;
        }
    };
}