Skip to content

Commit

Permalink
Merge branch 'master' into feature/groovy-sandbox
Browse files Browse the repository at this point in the history
  • Loading branch information
semancik committed Apr 5, 2019
2 parents 4e025a9 + 10b6c8e commit 6003f05
Show file tree
Hide file tree
Showing 50 changed files with 1,811 additions and 386 deletions.
Expand Up @@ -3245,6 +3245,10 @@ public static String getDisplayTypeTitle(DisplayType displayType){
return displayType.getTooltip().getOrig();
}

public static DisplayType createDisplayType(String iconCssClass){
return createDisplayType(iconCssClass, "", "");
}

public static DisplayType createDisplayType(String iconCssClass, String iconColor, String title){
DisplayType displayType = new DisplayType();
IconType icon = new IconType();
Expand Down Expand Up @@ -3438,9 +3442,9 @@ public static String getDisplayPolyStringValue(PolyStringType polyString, PageBa

public static <T> List<T> sortDropDownChoices(IModel<? extends List<? extends T>> choicesModel, IChoiceRenderer<T> renderer){
List<T> sortedList = choicesModel.getObject().stream().sorted((choice1, choice2) -> {
Validate.notNull(choice1);
Validate.notNull(choice2);

if (choice1 == null || choice2 == null){
return 0;
}
return String.CASE_INSENSITIVE_ORDER.compare(renderer.getDisplayValue(choice1).toString(), renderer.getDisplayValue(choice2).toString());


Expand Down
Expand Up @@ -23,6 +23,7 @@

import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.query.*;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
Expand Down Expand Up @@ -61,13 +62,6 @@
import com.evolveum.midpoint.web.session.PageStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage.TableId;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AreaCategoryType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ExclusionPolicyConstraintType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.GlobalPolicyRuleType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectSelectorType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.PolicyActionsType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.PolicyConstraintsType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SystemConfigurationType;

/**
* @author skublik
Expand Down Expand Up @@ -216,16 +210,8 @@ private List<IColumn<ContainerValueWrapper<GlobalPolicyRuleType>, String>> initB
private static final long serialVersionUID = 1L;

@Override
protected IModel<String> createIconModel(IModel<ContainerValueWrapper<GlobalPolicyRuleType>> rowModel) {
return new IModel<String>() {

private static final long serialVersionUID = 1L;

@Override
public String getObject() {
return WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE);
}
};
protected DisplayType getIconDisplayType(IModel<ContainerValueWrapper<GlobalPolicyRuleType>> rowModel) {
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
}

});
Expand Down
Expand Up @@ -23,6 +23,8 @@

import javax.xml.namespace.QName;

import com.evolveum.midpoint.web.page.admin.home.dto.PasswordAccountDto;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
Expand Down Expand Up @@ -78,13 +80,6 @@
import com.evolveum.midpoint.web.session.PageStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage.TableId;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AppenderConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AuditingConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ClassLoggerConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.FileAppenderConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.LoggingConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SyslogAppenderConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SystemConfigurationType;

/**
* @author skublik
Expand Down Expand Up @@ -326,19 +321,11 @@ private List<IColumn<ContainerValueWrapper<ClassLoggerConfigurationType>, String
columns.add(new IconColumn<ContainerValueWrapper<ClassLoggerConfigurationType>>(Model.of("")) {

private static final long serialVersionUID = 1L;

@Override
protected IModel<String> createIconModel(IModel<ContainerValueWrapper<ClassLoggerConfigurationType>> rowModel) {
return new IModel<String>() {

private static final long serialVersionUID = 1L;

@Override
public String getObject() {
return WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE);
}
};
protected DisplayType getIconDisplayType(IModel<ContainerValueWrapper<ClassLoggerConfigurationType>> rowModel) {
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
}

});

columns.add(new EditableLinkPropertyWrapperColumn<ClassLoggerConfigurationType>(createStringResource("LoggingConfigurationTabPanel.loggers.package"), ClassLoggerConfigurationType.F_PACKAGE, getPageBase()) {
Expand Down Expand Up @@ -524,16 +511,8 @@ private List<IColumn<ContainerValueWrapper<AppenderConfigurationType>, String>>
private static final long serialVersionUID = 1L;

@Override
protected IModel<String> createIconModel(IModel<ContainerValueWrapper<AppenderConfigurationType>> rowModel) {
return new IModel<String>() {

private static final long serialVersionUID = 1L;

@Override
public String getObject() {
return WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE);
}
};
protected DisplayType getIconDisplayType(IModel<ContainerValueWrapper<AppenderConfigurationType>> rowModel) {
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
}
});

Expand Down
Expand Up @@ -35,6 +35,7 @@
import com.evolveum.midpoint.gui.impl.model.RealValueOfSingleValuePropertyFromSingleValueContainerWrapperModel;
import com.evolveum.midpoint.web.component.menu.cog.ButtonInlineMenuItem;
import com.evolveum.midpoint.web.component.menu.cog.InlineMenuItemAction;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.Component;
Expand Down Expand Up @@ -80,12 +81,6 @@
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;
import com.evolveum.midpoint.web.session.PageStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.xml.ns._public.common.common_3.FileConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.MailConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.MailServerConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.MailTransportSecurityType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.NotificationConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SystemConfigurationType;


/**
Expand Down Expand Up @@ -338,8 +333,8 @@ private List<IColumn<MailServerConfiguration, String>> initMailServersColumns()
private static final long serialVersionUID = 1L;

@Override
protected IModel<String> createIconModel(IModel<MailServerConfiguration> rowModel) {
return Model.of(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
protected DisplayType getIconDisplayType(IModel<MailServerConfiguration> rowModel) {
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
}

});
Expand Down
Expand Up @@ -24,6 +24,7 @@
import javax.xml.namespace.QName;

import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
Expand Down Expand Up @@ -64,11 +65,6 @@
import com.evolveum.midpoint.web.session.PageStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.web.session.UserProfileStorage.TableId;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AreaCategoryType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.LifecycleStateModelType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.LifecycleStateType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectPolicyConfigurationType;
import com.evolveum.midpoint.xml.ns._public.common.common_3.SystemConfigurationType;

/**
* @author skublik
Expand Down Expand Up @@ -218,8 +214,8 @@ private List<IColumn<ContainerValueWrapper<ObjectPolicyConfigurationType>, Strin
private static final long serialVersionUID = 1L;

@Override
protected IModel<String> createIconModel(IModel<ContainerValueWrapper<ObjectPolicyConfigurationType>> rowModel) {
return Model.of(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
protected DisplayType getIconDisplayType(IModel<ContainerValueWrapper<ObjectPolicyConfigurationType>> rowModel) {
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(SystemConfigurationType.COMPLEX_TYPE));
}
});

Expand Down
Expand Up @@ -43,7 +43,6 @@
import com.evolveum.midpoint.web.component.search.SearchFactory;
import com.evolveum.midpoint.web.component.search.SearchItemDefinition;
import com.evolveum.midpoint.web.component.util.VisibleBehaviour;
import com.evolveum.midpoint.web.component.util.VisibleEnableBehaviour;
import com.evolveum.midpoint.web.page.admin.PageAdminFocus;
import com.evolveum.midpoint.web.page.admin.users.component.AllAssignmentsPreviewDialog;
import com.evolveum.midpoint.web.page.admin.users.component.AssignmentInfoDto;
Expand Down Expand Up @@ -373,17 +372,32 @@ protected List<IColumn<ContainerValueWrapper<AssignmentType>, String>> initBasic

private static final long serialVersionUID = 1L;

// @Override
@Override
protected IModel<String> createIconModel(IModel<ContainerValueWrapper<AssignmentType>> rowModel) {
return new IModel<String>() {

private static final long serialVersionUID = 1L;

@Override
public String getObject() {
return WebComponentUtil.createDefaultBlackIcon(AssignmentsUtil.getTargetType(rowModel.getObject().getContainerValue().asContainerable()));
protected DisplayType getIconDisplayType(IModel<ContainerValueWrapper<AssignmentType>> rowModel){
AssignmentType assignment = rowModel.getObject().getContainerValue().asContainerable();
if (assignment != null && assignment.getTargetRef() != null && StringUtils.isNotEmpty(assignment.getTargetRef().getOid())){
List<ObjectType> targetObjectList = WebComponentUtil.loadReferencedObjectList(Arrays.asList(assignment.getTargetRef()), OPERATION_LOAD_ASSIGNMENTS_TARGET_OBJ,
AssignmentPanel.this.getPageBase());
if (targetObjectList != null && targetObjectList.size() > 0){
ObjectType targetObject = targetObjectList.get(0);
DisplayType displayType = WebComponentUtil.getArchetypePolicyDisplayType(targetObject, AssignmentPanel.this.getPageBase());
if (displayType != null){
String disabledStyle = "";
if (targetObject instanceof FocusType) {
disabledStyle = WebComponentUtil.getIconEnabledDisabled(((FocusType)targetObject).asPrismObject());
if (displayType.getIcon() != null && StringUtils.isNotEmpty(displayType.getIcon().getCssClass()) &&
disabledStyle != null){
displayType.getIcon().setCssClass(displayType.getIcon().getCssClass() + " " + disabledStyle);
displayType.getIcon().setColor("");
}
}
return displayType;
}
}
};
}
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(
AssignmentsUtil.getTargetType(rowModel.getObject().getContainerValue().asContainerable())));
}

});
Expand Down
Expand Up @@ -349,16 +349,9 @@ protected List<IColumn<ContainerValueWrapper<AssignmentType>, String>> initBasic
private static final long serialVersionUID = 1L;

@Override
protected IModel<String> createIconModel(IModel<ContainerValueWrapper<AssignmentType>> rowModel) {
return new IModel<String>() {

private static final long serialVersionUID = 1L;

@Override
public String getObject() {
return WebComponentUtil.createDefaultBlackIcon(AssignmentsUtil.getTargetType(rowModel.getObject().getContainerValue().asContainerable()));
}
};
protected DisplayType getIconDisplayType(IModel<ContainerValueWrapper<AssignmentType>> rowModel) {
return WebComponentUtil.createDisplayType(WebComponentUtil.createDefaultBlackIcon(
AssignmentsUtil.getTargetType(rowModel.getObject().getContainerValue().asContainerable())));
}

});
Expand Down
Expand Up @@ -25,6 +25,7 @@
import com.evolveum.midpoint.schema.util.ShadowUtil;
import com.evolveum.midpoint.web.component.util.SelectableBean;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;
import com.evolveum.prism.xml.ns._public.types_3.PolyStringType;
import org.apache.commons.lang.StringUtils;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
Expand Down Expand Up @@ -117,7 +118,7 @@ public static <O extends ObjectType> IColumn<SelectableBean<O>, String> createIc
return new IconColumn<SelectableBean<O>>(createIconColumnHeaderModel()) {

@Override
public void populateItem(Item<ICellPopulator<SelectableBean<O>>> cellItem, String componentId, IModel<SelectableBean<O>> rowModel) {
protected DisplayType getIconDisplayType(IModel<SelectableBean<O>> rowModel){
DisplayType displayType = WebComponentUtil.getArchetypePolicyDisplayType(rowModel.getObject().getValue(), pageBase);
if (displayType != null){
String disabledStyle = "";
Expand All @@ -129,20 +130,10 @@ public void populateItem(Item<ICellPopulator<SelectableBean<O>>> cellItem, Strin
displayType.getIcon().setColor("");
}
}
cellItem.add(new ImagePanel(componentId, displayType));
} else {
super.populateItem(cellItem, componentId, rowModel);
displayType = WebComponentUtil.createDisplayType(getIconColumnValue(rowModel), "", getIconColumnTitle(rowModel));
}
}

@Override
protected IModel<String> createIconModel(final IModel<SelectableBean<O>> rowModel) {
return Model.of(getIconColumnValue(rowModel));
}

@Override
protected IModel<String> createTitleModel(final IModel<SelectableBean<O>> rowModel) {
return Model.of(getIconColumnTitle(rowModel));
return displayType;
}

@Override
Expand Down
Expand Up @@ -16,6 +16,7 @@

package com.evolveum.midpoint.web.component.data.column;

import com.evolveum.midpoint.xml.ns._public.common.common_3.DisplayType;
import org.apache.commons.lang3.StringUtils;
import org.apache.wicket.extensions.markup.html.repeater.data.grid.ICellPopulator;
import org.apache.wicket.extensions.markup.html.repeater.data.table.AbstractColumn;
Expand All @@ -27,7 +28,7 @@
/**
* @author lazyman
*/
public class IconColumn<T> extends AbstractColumn<T, String> implements IExportableColumn<T, String> {
public abstract class IconColumn<T> extends AbstractColumn<T, String> implements IExportableColumn<T, String> {
private static final long serialVersionUID = 1L;

public IconColumn(IModel<String> displayModel) {
Expand All @@ -46,16 +47,10 @@ public String getCssClass() {

@Override
public void populateItem(Item<ICellPopulator<T>> cellItem, String componentId, IModel<T> rowModel) {
cellItem.add(new ImagePanel(componentId, createIconModel(rowModel), createTitleModel(rowModel)));
cellItem.add(new ImagePanel(componentId, getIconDisplayType(rowModel)));
}

protected IModel<String> createTitleModel(final IModel<T> rowModel) {
return null;
}

protected IModel<String> createIconModel(final IModel<T> rowModel) {
throw new UnsupportedOperationException("Not implemented, please implement in your column.");
}
protected abstract DisplayType getIconDisplayType(final IModel<T> rowModel);

@Override
public IModel<String> getDataModel(IModel<T> rowModel) {
Expand Down
Expand Up @@ -167,14 +167,20 @@ public Component getAdditionalInfoComponent() {

protected DropDownChoice<T> createDropDown(String id, IModel<List<T>> choices, IChoiceRenderer<T> renderer,
boolean required) {
DropDownChoice<T> choice = new DropDownChoice<T>(id, getModel(), Model.ofList(WebComponentUtil.sortDropDownChoices(choices, renderer)), renderer){
DropDownChoice<T> choice = new DropDownChoice<T>(id, getModel(), choices, renderer){

private static final long serialVersionUID = 1L;

@Override
protected String getNullValidDisplayValue() {
return DropDownFormGroup.this.getNullValidDisplayValue();
}

@Override
public IModel<? extends List<? extends T>> getChoicesModel() {
IModel<? extends List<? extends T>> choices = super.getChoicesModel();
return Model.ofList(WebComponentUtil.sortDropDownChoices(choices, renderer));
}
};
choice.setNullValid(!required);
choice.setRequired(required);
Expand Down
Expand Up @@ -52,7 +52,7 @@ public DropDownChoicePanel(String id, IModel<T> model, IModel<? extends List<? e
super(id);

DropDownChoice<T> input = new DropDownChoice<T>(ID_INPUT, model,
Model.ofList(WebComponentUtil.sortDropDownChoices(choices, renderer)), renderer) {
choices, renderer) {

private static final long serialVersionUID = 1L;

Expand All @@ -69,6 +69,12 @@ protected CharSequence getDefaultChoice(String selectedValue) {
protected String getNullValidDisplayValue() {
return DropDownChoicePanel.this.getNullValidDisplayValue();
}

@Override
public IModel<? extends List<? extends T>> getChoicesModel() {
IModel<? extends List<? extends T>> choices = super.getChoicesModel();
return Model.ofList(WebComponentUtil.sortDropDownChoices(choices, renderer));
}
};
input.setNullValid(allowNull);
add(input);
Expand Down

0 comments on commit 6003f05

Please sign in to comment.