Example usage for org.apache.wicket.markup.html.list ListView ListView

List of usage examples for org.apache.wicket.markup.html.list ListView ListView

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.list ListView ListView.

Prototype

public ListView(final String id, final List<T> list) 

Source Link

Usage

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

License:Apache License

private void initLayout() {
    Label revision = new Label(ID_REVISION, createStringResource("PageAbout.midPointRevision"));
    revision.setRenderBodyOnly(true);/*ww  w  .  j a  v  a2s .  c o m*/
    add(revision);

    ListView<SystemItem> listSystemItems = new ListView<SystemItem>(ID_LIST_SYSTEM_ITEMS, getItems()) {

        @Override
        protected void populateItem(ListItem<SystemItem> item) {
            SystemItem systemItem = item.getModelObject();

            Label property = new Label(ID_PROPERTY, systemItem.getProperty());
            property.setRenderBodyOnly(true);
            item.add(property);

            Label value = new Label(ID_VALUE, systemItem.getValue());
            value.setRenderBodyOnly(true);
            item.add(value);
        }
    };
    add(listSystemItems);

    addLabel(ID_IMPLEMENTATION_SHORT_NAME, "implementationShortName");
    addLabel(ID_IMPLEMENTATION_DESCRIPTION, "implementationDescription");
    addLabel(ID_IS_EMBEDDED, "isEmbedded");
    addLabel(ID_DRIVER_SHORT_NAME, "driverShortName");
    addLabel(ID_DRIVER_VERSION, "driverVersion");
    addLabel(ID_REPOSITORY_URL, "repositoryUrl");

    ListView<LabeledString> additionalDetails = new ListView<LabeledString>(ID_ADDITIONAL_DETAILS,
            new PropertyModel<List<? extends LabeledString>>(repoDiagModel, "additionalDetails")) {

        @Override
        protected void populateItem(ListItem<LabeledString> item) {
            LabeledString labeledString = item.getModelObject();

            Label property = new Label(ID_DETAIL_NAME, labeledString.getLabel());
            property.setRenderBodyOnly(true);
            item.add(property);

            Label value = new Label(ID_DETAIL_VALUE, labeledString.getData());
            value.setRenderBodyOnly(true);
            item.add(value);
        }
    };
    add(additionalDetails);

    Label jvmProperties = new Label(ID_JVM_PROPERTIES, new LoadableModel<String>(false) {

        @Override
        protected String load() {
            try {
                RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean();
                List<String> arguments = runtimeMxBean.getInputArguments();

                return StringUtils.join(arguments, "<br/>");
            } catch (Exception ex) {
                return PageAbout.this.getString("PageAbout.message.couldntObtainJvmParams");
            }
        }
    });
    jvmProperties.setEscapeModelStrings(false);
    add(jvmProperties);

    initButtons();
}

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

License:Apache License

private void initLayout() {
    Form form = new Form(ID_MAIN_FORM);
    add(form);//from ww w . jav a 2s.co m

    DropDownChoice<ResourceItemDto> resources = new DropDownChoice<ResourceItemDto>(ID_RESOURCES, resourceModel,
            resourcesModel, new IChoiceRenderer<ResourceItemDto>() {

                @Override
                public Object getDisplayValue(ResourceItemDto object) {
                    if (object == null) {
                        return "";
                    }

                    return object.getName();
                }

                @Override
                public String getIdValue(ResourceItemDto object, int index) {
                    return Integer.toString(index);
                }
            });
    form.add(resources);

    initLinks(form);
    initTotals(form);

    final AjaxDownloadBehaviorFromFile ajaxDownloadBehavior = new AjaxDownloadBehaviorFromFile(true) {

        @Override
        protected File initFile() {
            return downloadFile;
        }
    };
    ajaxDownloadBehavior.setRemoveFile(false);
    form.add(ajaxDownloadBehavior);

    WebMarkupContainer filesContainer = new WebMarkupContainer(ID_FILES_CONTAINER);
    filesContainer.setOutputMarkupId(true);
    form.add(filesContainer);

    filesModel = createFilesModel();
    ListView<String> files = new ListView<String>(ID_FILES, filesModel) {

        @Override
        protected void populateItem(final ListItem<String> item) {
            AjaxLink file = new AjaxLink(ID_FILE) {

                @Override
                public void onClick(AjaxRequestTarget target) {
                    downloadPerformed(target, item.getModelObject(), ajaxDownloadBehavior);
                }
            };
            file.add(new Label(ID_FILE_NAME, item.getModelObject()));
            item.add(file);
        }
    };
    files.setRenderBodyOnly(true);
    filesContainer.add(files);

    WebMarkupContainer accountsContainer = new WebMarkupContainer(ID_ACCOUNTS_CONTAINER);
    accountsContainer.setOutputMarkupId(true);
    form.add(accountsContainer);

    ObjectDataProvider provider = new ObjectDataProvider(this, ShadowType.class);
    provider.setOptions(SelectorOptions.createCollection(GetOperationOptions.createRaw()));
    provider.setQuery(ObjectQuery.createObjectQuery(createResourceQueryFilter()));
    TablePanel accounts = new TablePanel(ID_ACCOUNTS, provider, createAccountsColumns());
    accounts.add(new VisibleEnableBehaviour() {

        @Override
        public boolean isVisible() {
            return resourceModel.getObject() != null;
        }
    });
    accounts.setItemsPerPage(50);
    accountsContainer.add(accounts);
}

From source file:com.evolveum.midpoint.web.page.admin.reports.PageAuditLogDetails.java

License:Apache License

private void initEventPanel(WebMarkupContainer eventPanel) {

    WebMarkupContainer eventDetailsPanel = new WebMarkupContainer(ID_EVENT_DETAILS_PANEL);
    eventDetailsPanel.setOutputMarkupId(true);
    eventPanel.addOrReplace(eventDetailsPanel);

    final Label identifier = new Label(ID_PARAMETERS_EVENT_IDENTIFIER,
            new PropertyModel(recordModel, ID_PARAMETERS_EVENT_IDENTIFIER));
    identifier.setOutputMarkupId(true);/*from   w  w w.j  ava  2 s .c o  m*/
    eventDetailsPanel.add(identifier);

    final Label timestamp = new Label(ID_PARAMETERS_TIMESTAMP,
            new PropertyModel(recordModel, ID_PARAMETERS_TIMESTAMP));
    timestamp.setOutputMarkupId(true);
    eventDetailsPanel.add(timestamp);

    final Label sessionIdentifier = new Label(ID_PARAMETERS_SESSION_IDENTIFIER,
            new PropertyModel(recordModel, ID_PARAMETERS_SESSION_IDENTIFIER));
    sessionIdentifier.setOutputMarkupId(true);
    eventDetailsPanel.add(sessionIdentifier);

    final Label taskIdentifier = new Label(ID_PARAMETERS_TASK_IDENTIFIER,
            new PropertyModel(recordModel, ID_PARAMETERS_TASK_IDENTIFIER));
    taskIdentifier.setOutputMarkupId(true);
    eventDetailsPanel.add(taskIdentifier);

    final Label taskOID = new Label(ID_PARAMETERS_TASK_OID,
            new PropertyModel(recordModel, ID_PARAMETERS_TASK_OID));
    taskOID.setOutputMarkupId(true);
    eventDetailsPanel.add(taskOID);

    final Label hostIdentifier = new Label(ID_PARAMETERS_HOST_IDENTIFIER,
            new PropertyModel(recordModel, ID_PARAMETERS_HOST_IDENTIFIER));
    hostIdentifier.setOutputMarkupId(true);
    eventDetailsPanel.add(hostIdentifier);

    final Label nodeIdentifier = new Label(ID_PARAMETERS_NODE_IDENTIFIER,
            new PropertyModel(recordModel, ID_PARAMETERS_NODE_IDENTIFIER));
    nodeIdentifier.setOutputMarkupId(true);
    eventDetailsPanel.add(nodeIdentifier);

    final Label remoteHostAddress = new Label(ID_PARAMETERS_REMOTE_HOST_ADDRESS,
            new PropertyModel(recordModel, ID_PARAMETERS_REMOTE_HOST_ADDRESS));
    remoteHostAddress.setOutputMarkupId(true);
    eventDetailsPanel.add(remoteHostAddress);

    final Label initiatorRef = new Label(ID_PARAMETERS_EVENT_INITIATOR,
            new Model<>(WebModelServiceUtils.resolveReferenceName(recordModel.getObject().getInitiatorRef(),
                    this, createSimpleTask(ID_PARAMETERS_EVENT_INITIATOR),
                    new OperationResult(ID_PARAMETERS_EVENT_INITIATOR))));
    initiatorRef.setOutputMarkupId(true);
    eventDetailsPanel.add(initiatorRef);

    final Label attorneyRef = new Label(ID_PARAMETERS_EVENT_ATTORNEY,
            new Model<>(WebModelServiceUtils.resolveReferenceName(recordModel.getObject().getAttorneyRef(),
                    this, createSimpleTask(ID_PARAMETERS_EVENT_ATTORNEY),
                    new OperationResult(ID_PARAMETERS_EVENT_ATTORNEY))));
    attorneyRef.setOutputMarkupId(true);
    eventDetailsPanel.add(attorneyRef);

    final Label targetRef = new Label(ID_PARAMETERS_EVENT_TARGET,
            new Model<>(WebModelServiceUtils.resolveReferenceName(recordModel.getObject().getTargetRef(), this,
                    createSimpleTask(ID_PARAMETERS_EVENT_TARGET),
                    new OperationResult(ID_PARAMETERS_EVENT_TARGET))));
    targetRef.setOutputMarkupId(true);
    eventDetailsPanel.add(targetRef);

    IModel<String> targetOwnerRefModel = new IModel<String>() {
        @Override
        public String getObject() {
            return WebModelServiceUtils.resolveReferenceName(recordModel.getObject().getTargetOwnerRef(),
                    PageAuditLogDetails.this, createSimpleTask(OPERATION_RESOLVE_REFERENCE_NAME),
                    new OperationResult(OPERATION_RESOLVE_REFERENCE_NAME));
        }

        @Override
        public void setObject(String s) {

        }

        @Override
        public void detach() {

        }
    };
    final Label targetOwnerRef = new Label(ID_PARAMETERS_EVENT_TARGET_OWNER, targetOwnerRefModel);
    targetOwnerRef.setOutputMarkupId(true);
    eventDetailsPanel.add(targetOwnerRef);

    final Label eventType = new Label(ID_PARAMETERS_EVENT_TYPE,
            new PropertyModel(recordModel, ID_PARAMETERS_EVENT_TYPE));
    eventType.setOutputMarkupId(true);
    eventDetailsPanel.add(eventType);

    final Label eventStage = new Label(ID_PARAMETERS_EVENT_STAGE,
            new PropertyModel(recordModel, ID_PARAMETERS_EVENT_STAGE));
    eventStage.setOutputMarkupId(true);
    eventDetailsPanel.add(eventStage);

    final Label channel = new Label(ID_PARAMETERS_CHANNEL,
            new PropertyModel(recordModel, ID_PARAMETERS_CHANNEL));
    channel.setOutputMarkupId(true);
    eventDetailsPanel.add(channel);

    final Label eventOutcome = new Label(ID_PARAMETERS_EVENT_OUTCOME,
            new PropertyModel(recordModel, ID_PARAMETERS_EVENT_OUTCOME));
    eventOutcome.setOutputMarkupId(true);
    eventDetailsPanel.add(eventOutcome);

    final Label eventResult = new Label(ID_PARAMETERS_EVENT_RESULT,
            new PropertyModel(recordModel, ID_PARAMETERS_EVENT_RESULT));
    eventResult.setOutputMarkupId(true);
    eventDetailsPanel.add(eventResult);

    final Label parameter = new Label(ID_PARAMETERS_PARAMETER,
            new PropertyModel(recordModel, ID_PARAMETERS_PARAMETER));
    parameter.setOutputMarkupId(true);
    eventDetailsPanel.add(parameter);

    final Label message = new Label(ID_PARAMETERS_MESSAGE,
            new PropertyModel(recordModel, ID_PARAMETERS_MESSAGE));
    message.setOutputMarkupId(true);
    eventDetailsPanel.add(message);

    ListView<AuditEventRecordItemValueDto> additionalItemsList = new ListView<AuditEventRecordItemValueDto>(
            ID_ADDITIONAL_ITEM_LINE, new IModel<List<AuditEventRecordItemValueDto>>() {
                @Override
                public List<AuditEventRecordItemValueDto> getObject() {
                    List<AuditEventRecordItemValueDto> rv = new ArrayList<>();
                    for (AuditEventRecordItemType item : getSortedItems()) {
                        String currentName = getDisplayName(item.getName());
                        if (item instanceof AuditEventRecordPropertyType) {
                            for (String value : ((AuditEventRecordPropertyType) item).getValue()) {
                                rv.add(new AuditEventRecordItemValueDto(currentName, value));
                                currentName = null;
                            }
                        } else if (item instanceof AuditEventRecordReferenceType) {
                            for (AuditEventRecordReferenceValueType value : ((AuditEventRecordReferenceType) item)
                                    .getValue()) {
                                rv.add(new AuditEventRecordItemValueDto(currentName,
                                        value.getTargetName() != null ? value.getTargetName().getOrig()
                                                : value.getOid()));
                                currentName = null;
                            }
                        } else {
                            // should not occur
                        }
                    }
                    return rv;
                }

                // TODO take locale into account when sorting
                private List<AuditEventRecordItemType> getSortedItems() {
                    AuditEventRecordType record = recordModel.getObject();
                    List<AuditEventRecordItemType> rv = new ArrayList<>();
                    rv.addAll(record.getProperty());
                    rv.addAll(record.getReference());
                    rv.sort((a, b) -> {
                        // explicitly enumerated are shown first; others are sorted by display name
                        int index_a = EXTENSION_ITEMS_ORDER.indexOf(a.getName());
                        int index_b = EXTENSION_ITEMS_ORDER.indexOf(b.getName());
                        if (index_a != -1 && index_b != -1) {
                            return Integer.compare(index_a, index_b);
                        } else if (index_a != -1) {
                            return -1;
                        } else if (index_b != -1) {
                            return 1;
                        }
                        String name_a = getDisplayName(a.getName());
                        String name_b = getDisplayName(b.getName());
                        return String.CASE_INSENSITIVE_ORDER.compare(name_a, name_b);
                    });
                    return rv;
                }

                private String getDisplayName(String nameKey) {
                    // null should not occur so we don't try to be nice when displaying it
                    return nameKey != null ? createStringResource(nameKey).getString() : "(null)";
                }
            }) {
        @Override
        protected void populateItem(ListItem<AuditEventRecordItemValueDto> item) {
            item.add(new Label(ID_ITEM_NAME,
                    new PropertyModel<String>(item.getModel(), AuditEventRecordItemValueDto.F_NAME)));
            item.add(new Label(ID_ITEM_VALUE,
                    new PropertyModel<String>(item.getModel(), AuditEventRecordItemValueDto.F_VALUE)));
        }
    };
    WebMarkupContainer additionalItemsContainer = new WebMarkupContainer(ID_ADDITIONAL_ITEMS);
    additionalItemsContainer.add(additionalItemsList);
    additionalItemsContainer.add(new VisibleBehaviour(() -> !additionalItemsList.getModelObject().isEmpty()));
    eventDetailsPanel.add(additionalItemsContainer);
}

From source file:com.evolveum.midpoint.web.page.admin.resources.component.TestConnectionMessagesPanel.java

License:Apache License

private void initLayout() {
    setOutputMarkupId(true);//ww w.  j a  v a  2  s .c  o  m

    WebMarkupContainer messagesPanel = new WebMarkupContainer(ID_MESSAGES_PANEL);
    messagesPanel.setOutputMarkupId(true);
    add(messagesPanel);

    ListView<ConnectorStruct> connectorView = new ListView<ConnectorStruct>(ID_CONNECTOR_MESSAGES_PANEL,
            connectorResourceResults) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(ListItem<ConnectorStruct> item) {
            Label connectorNameLabel = new Label(ID_CONNECTOR_NAME, item.getModelObject().connectorName);
            item.add(connectorNameLabel);
            RepeatingView connectorResultView = new RepeatingView(ID_CONNECTOR_MESSAGES);
            List<OpResult> resultsDto = item.getModelObject().connectorResultsDto;
            if (resultsDto != null) {
                initResultsPanel(connectorResultView, resultsDto, parentPage);
            }
            item.add(connectorResultView);
        }

    };
    messagesPanel.add(connectorView);

    RepeatingView resultView = new RepeatingView(ID_RESOURCE_MESSAGES);
    if (modelResourceResults.getObject() != null) {
        initResultsPanel(resultView, modelResourceResults.getObject(), parentPage);
    }
    resultView.setOutputMarkupId(true);
    messagesPanel.add(resultView);
}

From source file:com.evolveum.midpoint.web.page.admin.resources.PageResource.java

License:Apache License

private void createCapabilitiesList(Form mainForm) {
    ListView<String> listCapabilities = new ListView<String>("listCapabilities",
            createCapabilitiesModel(model)) {

        @Override//from w ww . jav a  2 s  .com
        protected void populateItem(ListItem<String> item) {
            item.add(new Label("capabilities", item.getModel()));

        }
    };
    mainForm.add(listCapabilities);
}

From source file:com.evolveum.midpoint.web.page.admin.server.currentState.ActionsExecutedInformationPanel.java

License:Apache License

protected void initLayout() {

    WebMarkupContainer tableLinesContainer = new WebMarkupContainer(ID_OBJECTS_TABLE_LINES_CONTAINER);
    ListView tableLines = new ListView<ActionsExecutedObjectsTableLineDto>(ID_OBJECTS_TABLE_LINES,
            new AbstractReadOnlyModel<List<ActionsExecutedObjectsTableLineDto>>() {
                @Override//  w  w  w .j  ava2 s .  co  m
                public List<ActionsExecutedObjectsTableLineDto> getObject() {
                    final ActionsExecutedInformationDto modelObject = getModelObject();
                    if (modelObject == null) {
                        return new ArrayList<>();
                    }
                    if (showResultingActionsOnly) {
                        return modelObject.getUniqueObjectsTableLines();
                    } else {
                        return modelObject.getObjectsTableLines();
                    }
                }
            }) {
        protected void populateItem(final ListItem<ActionsExecutedObjectsTableLineDto> item) {
            item.add(new Label(ID_OBJECT_TYPE, new AbstractReadOnlyModel<String>() {
                @Override
                public String getObject() {
                    String key = item.getModelObject().getObjectTypeLocalizationKey();
                    if (key != null) {
                        return createStringResource(key).getString();
                    } else {
                        return item.getModelObject().getObjectType().getLocalPart();
                    }
                }
            }));
            item.add(new Label(ID_OPERATION, new AbstractReadOnlyModel<String>() {
                @Override
                public String getObject() {
                    return createStringResource(item.getModelObject().getOperation()).getString();
                }
            }));
            item.add(new Label(ID_CHANNEL, new AbstractReadOnlyModel<String>() {
                @Override
                public String getObject() {
                    String channel = item.getModelObject().getChannel();
                    if (channel != null && !channel.isEmpty()) {
                        String key = "Channel." + channel;
                        return createStringResource(key).getString();
                    } else {
                        return "";
                    }
                }
            }));

            item.add(new Label(ID_SUCCESS_COUNT, new PropertyModel<String>(item.getModel(),
                    ActionsExecutedObjectsTableLineDto.F_SUCCESS_COUNT)));
            item.add(new Label(ID_LAST_SUCCESS_OBJECT, new PropertyModel<String>(item.getModel(),
                    ActionsExecutedObjectsTableLineDto.F_LAST_SUCCESS_OBJECT)));
            item.add(new Label(ID_LAST_SUCCESS_TIMESTAMP, new PropertyModel<String>(item.getModel(),
                    ActionsExecutedObjectsTableLineDto.F_LAST_SUCCESS_TIMESTAMP)));
            item.add(new Label(ID_FAILURE_COUNT, new PropertyModel<String>(item.getModel(),
                    ActionsExecutedObjectsTableLineDto.F_FAILURE_COUNT)));
        }
    };
    tableLinesContainer.add(tableLines);
    tableLinesContainer.setOutputMarkupId(true);
    add(tableLinesContainer);

    final Label showResultingActionsOnlyLabel = new Label(ID_SHOW_RESULTING_ACTIONS_ONLY_LABEL,
            new AbstractReadOnlyModel<String>() {
                @Override
                public String getObject() {
                    return showResultingActionsOnly
                            ? createStringResource(
                                    "ActionsExecutedInformationPanel.showingResultingActionsOnly").getString()
                            : createStringResource("ActionsExecutedInformationPanel.showingAllActions")
                                    .getString();
                }
            });
    showResultingActionsOnlyLabel.setOutputMarkupId(true);
    add(showResultingActionsOnlyLabel);
    add(new AjaxFallbackLink<String>(ID_SHOW_RESULTING_ACTIONS_ONLY_LINK) {
        @Override
        public void onClick(AjaxRequestTarget ajaxRequestTarget) {
            showResultingActionsOnly = !showResultingActionsOnly;
            ajaxRequestTarget.add(ActionsExecutedInformationPanel.this);
        }
    });

    add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            return getModelObject() != null;
        }
    });
}

From source file:com.evolveum.midpoint.web.page.admin.server.PageTaskEdit.java

License:Apache License

private void initMainInfo(Form mainForm) {
    RequiredTextField<String> name = new RequiredTextField<String>(ID_NAME,
            new PropertyModel<String>(model, TaskDto.F_NAME));
    name.add(new VisibleEnableBehaviour() {

        @Override//from w ww  . j av  a2s  .com
        public boolean isVisible() {
            return edit;
        }
    });
    name.add(new AttributeModifier("style", "width: 100%"));
    name.add(new EmptyOnBlurAjaxFormUpdatingBehaviour());
    mainForm.add(name);

    Label nameLabel = new Label(ID_NAME_LABEL, new PropertyModel(model, TaskDto.F_NAME));
    nameLabel.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            return !edit;
        }
    });
    mainForm.add(nameLabel);

    TextArea<String> description = new TextArea<String>(ID_DESCRIPTION,
            new PropertyModel<String>(model, TaskDto.F_DESCRIPTION));
    description.add(new VisibleEnableBehaviour() {

        @Override
        public boolean isVisible() {
            return edit;
        }
    });
    //        description.add(new AttributeModifier("style", "width: 100%"));
    //        description.add(new EmptyOnBlurAjaxFormUpdatingBehaviour());
    mainForm.add(description);

    Label descriptionLabel = new Label(ID_DESCRIPTION_LABEL, new PropertyModel(model, TaskDto.F_DESCRIPTION));
    descriptionLabel.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            return !edit;
        }
    });
    mainForm.add(descriptionLabel);

    Label oid = new Label("oid", new PropertyModel(model, "oid"));
    mainForm.add(oid);

    mainForm.add(new Label(ID_IDENTIFIER, new PropertyModel(model, TaskDto.F_IDENTIFIER)));

    Label category = new Label("category", new PropertyModel(model, "category"));
    mainForm.add(category);

    LinkPanel parent = new LinkPanel(ID_PARENT, new PropertyModel(model, TaskDto.F_PARENT_TASK_NAME)) {
        @Override
        public void onClick(AjaxRequestTarget target) {
            String oid = model.getObject().getParentTaskOid();
            if (oid != null) {
                PageParameters parameters = new PageParameters();
                parameters.add(OnePageParameterEncoder.PARAMETER, oid);
                setResponsePage(new PageTaskEdit(parameters, PageTaskEdit.this));
            }
        }
    };
    mainForm.add(parent);

    ListView<String> handlerUriList = new ListView<String>(ID_HANDLER_URI_LIST,
            new PropertyModel(model, TaskDto.F_HANDLER_URI_LIST)) {
        @Override
        protected void populateItem(ListItem<String> item) {
            item.add(new Label(ID_HANDLER_URI, item.getModelObject()));
        }
    };
    mainForm.add(handlerUriList);
    //      Label uri = new Label(ID_HANDLER_URI, new PropertyModel(model, "uri"));
    //      mainForm.add(uri);

    Label execution = new Label("execution", new AbstractReadOnlyModel<String>() {

        @Override
        public String getObject() {
            TaskDtoExecutionStatus executionStatus = model.getObject().getExecution();
            if (executionStatus != TaskDtoExecutionStatus.CLOSED) {
                return getString(TaskDtoExecutionStatus.class.getSimpleName() + "." + executionStatus.name());
            } else {
                return getString(TaskDtoExecutionStatus.class.getSimpleName() + "." + executionStatus.name()
                        + ".withTimestamp", new AbstractReadOnlyModel<String>() {
                            @Override
                            public String getObject() {
                                if (model.getObject().getCompletionTimestamp() != null) {
                                    return new Date(model.getObject().getCompletionTimestamp())
                                            .toLocaleString(); // todo correct formatting
                                } else {
                                    return "?";
                                }
                            }
                        });
            }
        }
    });
    mainForm.add(execution);

    Label node = new Label("node", new AbstractReadOnlyModel<String>() {
        @Override
        public String getObject() {
            TaskDto dto = model.getObject();
            if (!TaskDtoExecutionStatus.RUNNING.equals(dto.getExecution())) {
                return null;
            }
            return PageTaskEdit.this.getString("pageTaskEdit.message.node", dto.getExecutingAt());
        }
    });
    mainForm.add(node);
}

From source file:com.evolveum.midpoint.web.page.admin.server.TaskBasicTabPanel.java

License:Apache License

private void initLayoutBasic() {

    // Name/*from www.ja  v a  2 s .com*/
    WebMarkupContainer nameContainer = new WebMarkupContainer(ID_NAME_CONTAINER);
    RequiredTextField<String> name = new RequiredTextField<>(ID_NAME,
            new PropertyModel<String>(taskDtoModel, TaskDto.F_NAME));
    name.add(parentPage.createEnabledIfEdit(new ItemPath(TaskType.F_NAME)));
    name.add(new AttributeModifier("style", "width: 100%"));
    name.add(new EmptyOnBlurAjaxFormUpdatingBehaviour());
    nameContainer.add(name);
    nameContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_NAME)));
    add(nameContainer);

    // Description
    WebMarkupContainer descriptionContainer = new WebMarkupContainer(ID_DESCRIPTION_CONTAINER);
    TextArea<String> description = new TextArea<>(ID_DESCRIPTION,
            new PropertyModel<String>(taskDtoModel, TaskDto.F_DESCRIPTION));
    description.add(parentPage.createEnabledIfEdit(new ItemPath(TaskType.F_DESCRIPTION)));
    //        description.add(new AttributeModifier("style", "width: 100%"));
    //        description.add(new EmptyOnBlurAjaxFormUpdatingBehaviour());
    descriptionContainer.add(description);
    descriptionContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_DESCRIPTION)));
    add(descriptionContainer);

    // OID
    Label oid = new Label(ID_OID, new PropertyModel(getObjectWrapperModel(), ID_OID));
    add(oid);

    // Identifier
    WebMarkupContainer identifierContainer = new WebMarkupContainer(ID_IDENTIFIER_CONTAINER);
    identifierContainer.add(new Label(ID_IDENTIFIER, new PropertyModel(taskDtoModel, TaskDto.F_IDENTIFIER)));
    identifierContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_TASK_IDENTIFIER)));
    add(identifierContainer);

    // Category
    WebMarkupContainer categoryContainer = new WebMarkupContainer(ID_CATEGORY_CONTAINER);
    categoryContainer.add(new Label(ID_CATEGORY, WebComponentUtil.createCategoryNameModel(this,
            new PropertyModel(taskDtoModel, TaskDto.F_CATEGORY))));
    categoryContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_CATEGORY)));
    add(categoryContainer);

    // Parent
    WebMarkupContainer parentContainer = new WebMarkupContainer(ID_PARENT_CONTAINER);
    final LinkPanel parent = new LinkPanel(ID_PARENT,
            new PropertyModel<String>(taskDtoModel, TaskDto.F_PARENT_TASK_NAME)) {
        @Override
        public void onClick(AjaxRequestTarget target) {
            String oid = taskDtoModel.getObject().getParentTaskOid();
            if (oid != null) {
                PageParameters parameters = new PageParameters();
                parameters.add(OnePageParameterEncoder.PARAMETER, oid);
                setResponsePage(PageTaskEdit.class, parameters);
            }
        }
    };
    parentContainer.add(parent);
    parentContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_PARENT)));
    add(parentContainer);

    // Owner
    WebMarkupContainer ownerContainer = new WebMarkupContainer(ID_OWNER_CONTAINER);
    final LinkPanel owner = new LinkPanel(ID_OWNER,
            new PropertyModel<String>(taskDtoModel, TaskDto.F_OWNER_NAME)) {
        @Override
        public void onClick(AjaxRequestTarget target) {
            String oid = taskDtoModel.getObject().getOwnerOid();
            if (oid != null) {
                PageParameters parameters = new PageParameters();
                parameters.add(OnePageParameterEncoder.PARAMETER, oid);
                setResponsePage(PageUser.class, parameters);
            }
        }
    };
    ownerContainer.add(owner);
    ownerContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_OWNER_REF)));
    add(ownerContainer);

    // Handler URI
    ListView<String> handlerUriContainer = new ListView<String>(ID_HANDLER_URI_CONTAINER,
            new PropertyModel(taskDtoModel, TaskDto.F_HANDLER_URI_LIST)) {
        @Override
        protected void populateItem(ListItem<String> item) {
            item.add(new Label(ID_HANDLER_URI, item.getModelObject()));
        }
    };
    handlerUriContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_HANDLER_URI),
            new ItemPath(TaskType.F_OTHER_HANDLERS_URI_STACK)));
    add(handlerUriContainer);

    // Execution
    WebMarkupContainer executionContainer = new WebMarkupContainer(ID_EXECUTION_CONTAINER);
    Label execution = new Label(ID_EXECUTION, new AbstractReadOnlyModel<String>() {

        @Override
        public String getObject() {
            TaskDtoExecutionStatus executionStatus = taskDtoModel.getObject().getExecution();
            if (executionStatus != TaskDtoExecutionStatus.CLOSED) {
                return getString(TaskDtoExecutionStatus.class.getSimpleName() + "." + executionStatus.name());
            } else {
                return getString(TaskDtoExecutionStatus.class.getSimpleName() + "." + executionStatus.name()
                        + ".withTimestamp", new AbstractReadOnlyModel<String>() {
                            @Override
                            public String getObject() {
                                if (taskDtoModel.getObject().getCompletionTimestamp() != null) {
                                    return new Date(taskDtoModel.getObject().getCompletionTimestamp())
                                            .toLocaleString(); // todo correct formatting
                                } else {
                                    return "?";
                                }
                            }
                        });
            }
        }
    });
    executionContainer.add(execution);
    Label node = new Label(ID_NODE, new AbstractReadOnlyModel<String>() {
        @Override
        public String getObject() {
            TaskDto dto = taskDtoModel.getObject();
            if (!TaskDtoExecutionStatus.RUNNING.equals(dto.getExecution())) {
                return null;
            }
            return parentPage.getString("pageTaskEdit.message.node", dto.getExecutingAt());
        }
    });
    executionContainer.add(node);
    executionContainer.add(parentPage.createVisibleIfAccessible(new ItemPath(TaskType.F_EXECUTION_STATUS),
            new ItemPath(TaskType.F_NODE_AS_OBSERVED)));
    add(executionContainer);

}

From source file:com.evolveum.midpoint.web.page.admin.users.PageUser.java

License:Apache License

private void initAccounts(final WebMarkupContainer accounts) {
    InlineMenu accountMenu = new InlineMenu(ID_ACCOUNT_MENU, new Model((Serializable) createAccountsMenu()));
    accounts.add(accountMenu);//from  w w  w. j  ava 2s.  c o  m

    final ListView<UserAccountDto> accountList = new ListView<UserAccountDto>(ID_ACCOUNT_LIST, accountsModel) {

        @Override
        protected void populateItem(final ListItem<UserAccountDto> item) {
            PackageResourceReference packageRef;
            final UserAccountDto dto = item.getModelObject();

            Panel panel;

            if (dto.isLoadedOK()) {
                packageRef = new PackageResourceReference(ImgResources.class, ImgResources.HDD_PRISM);

                panel = new PrismObjectPanel("account",
                        new PropertyModel<ObjectWrapper>(item.getModel(), "object"), packageRef,
                        (Form) PageUser.this.get(ID_MAIN_FORM)) {

                    @Override
                    protected Component createHeader(String id, IModel<ObjectWrapper> model) {
                        return new CheckTableHeader(id, model) {

                            @Override
                            protected List<InlineMenuItem> createMenuItems() {
                                return createDefaultMenuItems(getModel());
                            }
                        };
                    }
                };
            } else {
                panel = new SimpleErrorPanel("account", item.getModel()) {

                    @Override
                    public void onShowMorePerformed(AjaxRequestTarget target) {
                        OperationResult fetchResult = dto.getResult();
                        if (fetchResult != null) {
                            showResult(fetchResult);
                            target.add(getPageBase().getFeedbackPanel());
                        }
                    }
                };
            }

            panel.setOutputMarkupId(true);
            item.add(panel);
        }
    };

    AjaxCheckBox accountCheckAll = new AjaxCheckBox(ID_ACCOUNT_CHECK_ALL, new Model()) {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            for (UserAccountDto dto : accountList.getModelObject()) {
                if (dto.isLoadedOK()) {
                    ObjectWrapper accModel = dto.getObject();
                    accModel.setSelected(getModelObject());
                }
            }

            target.add(accounts);
        }
    };
    accounts.add(accountCheckAll);

    accounts.add(accountList);
}

From source file:com.evolveum.midpoint.web.page.admin.users.PageUser.java

License:Apache License

private void initAssignments(final WebMarkupContainer assignments) {
    InlineMenu accountMenu = new InlineMenu(ID_ASSIGNMENT_MENU,
            new Model((Serializable) createAssignmentsMenu()));
    assignments.add(accountMenu);/*from  w w  w.  jav  a2s .c o  m*/

    final ListView<AssignmentEditorDto> assignmentList = new ListView<AssignmentEditorDto>(ID_ASSIGNMENT_LIST,
            assignmentsModel) {

        @Override
        protected void populateItem(final ListItem<AssignmentEditorDto> item) {
            AssignmentEditorPanel assignmentEditor = new AssignmentEditorPanel(ID_ASSIGNMENT_EDITOR,
                    item.getModel());
            item.add(assignmentEditor);
        }
    };
    assignmentList.setOutputMarkupId(true);
    assignments.add(assignmentList);

    AjaxCheckBox assignmentCheckAll = new AjaxCheckBox(ID_ASSIGNMENT_CHECK_ALL, new Model()) {

        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            for (AssignmentEditorDto item : assignmentList.getModelObject()) {
                item.setSelected(this.getModelObject());
            }

            target.add(assignments);
        }
    };
    assignments.add(assignmentCheckAll);
}