diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/assignment/AssignmentTablePanel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/assignment/AssignmentTablePanel.java index 8f5646564b6..c2c0fda2168 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/assignment/AssignmentTablePanel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/assignment/AssignmentTablePanel.java @@ -101,7 +101,7 @@ public List getAssignmentTypeList(){ } public List loadFromAssignmentTypeList(List asgList, OperationResult result){ - List list = new ArrayList(); + List list = new ArrayList<>(); for (AssignmentType assignment : asgList) { ObjectType targetObject = null; @@ -221,7 +221,7 @@ public ObjectQuery getProviderQuery(){ return null; } else { ObjectQuery query = new ObjectQuery(); - List oids = new ArrayList(); + List oids = new ArrayList<>(); oids.add(getExcludeOid()); ObjectFilter oidFilter = InOidFilter.createInOid(oids); @@ -253,7 +253,7 @@ public void yesPerformed(AjaxRequestTarget target){ } private List createAssignmentMenu(){ - List items = new ArrayList(); + List items = new ArrayList<>(); InlineMenuItem item = new InlineMenuItem(createStringResource("AssignmentTablePanel.menu.assign"), new InlineMenuItemAction(){ @@ -300,7 +300,7 @@ public void onClick(AjaxRequestTarget target) { } private List getSelectedAssignments(){ - List selected = new ArrayList(); + List selected = new ArrayList<>(); List all = assignmentModel.getObject(); diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.html b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.html index 74113fb83f9..aa6a1b3ebf9 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.html +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.html @@ -20,7 +20,7 @@
- +
@@ -47,7 +47,7 @@
- +
diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.java index a84964ecbcb..e1ad66dcefd 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.java @@ -36,6 +36,7 @@ import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior; import org.apache.wicket.ajax.markup.html.AjaxLink; import org.apache.wicket.markup.html.WebMarkupContainer; +import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.form.DropDownChoice; import org.apache.wicket.markup.html.form.EnumChoiceRenderer; import org.apache.wicket.markup.html.form.IChoiceRenderer; @@ -66,6 +67,8 @@ public class ExpressionEditorPanel extends SimplePanel{ private static final String ID_LANGUAGE_CONTAINER = "languageContainer"; private static final String ID_POLICY_CONTAINER = "policyRefContainer"; private static final String ID_BUTTON_UPDATE = "update"; + private static final String ID_LABEL_TYPE = "typeLabel"; + private static final String ID_LABEL_EXPRESSION = "expressionLabel"; private IModel model; private Map policyMap = new HashMap<>(); @@ -94,6 +97,9 @@ protected ExpressionTypeDto load() { protected void initLayout(){ loadModel(); + Label typeLabel = new Label(ID_LABEL_TYPE, createStringResource(getTypeLabelKey())); + add(typeLabel); + DropDownChoice type = new DropDownChoice<>(ID_TYPE, new PropertyModel(model, ExpressionTypeDto.F_TYPE), WebMiscUtil.createReadonlyModelFromEnum(ExpressionUtil.ExpressionEvaluatorType.class), @@ -180,6 +186,9 @@ protected void onUpdate(AjaxRequestTarget target) { policyRef.setNullValid(true); policyContainer.add(policyRef); + Label expressionLabel = new Label(ID_LABEL_EXPRESSION, createStringResource(getExpressionLabelKey())); + add(expressionLabel); + TextArea expression = new TextArea<>(ID_EXPRESSION, new PropertyModel(model, ExpressionTypeDto.F_EXPRESSION)); expression.setOutputMarkupId(true); add(expression); @@ -250,4 +259,17 @@ public void performExpressionHook(AjaxRequestTarget target){ } + /** + * Provide key for expression type label + * */ + public String getTypeLabelKey(){ + return "ExpressionEditorPanel.label.type"; + } + + /** + * Provide key for expression label + * */ + public String getExpressionLabelKey(){ + return "ExpressionEditorPanel.label.expression"; + } } diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.properties b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.properties index c0581680787..bb1b1076045 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.properties +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/input/ExpressionEditorPanel.properties @@ -15,7 +15,7 @@ # ExpressionEditorPanel.label.type=Expression Type -ExpressionEditorPanel.label.language=Expression Language +ExpressionEditorPanel.label.language=Language ExpressionEditorPanel.label.valuePolicyRef=Policy Ref. ExpressionEditorPanel.label.expression=Expression ExpressionEditorPanel.button.expressionSave=Update Expression diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceActivationEditor.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceActivationEditor.java index ed9bc602e07..378766b0eab 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceActivationEditor.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceActivationEditor.java @@ -24,6 +24,7 @@ import com.evolveum.midpoint.xml.ns._public.common.common_3.MappingType; import com.evolveum.midpoint.xml.ns._public.common.common_3.ResourceActivationDefinitionType; import com.evolveum.midpoint.xml.ns._public.common.common_3.ResourceBidirectionalMappingType; +import org.apache.commons.lang.StringUtils; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow; import org.apache.wicket.markup.html.form.DropDownChoice; @@ -119,7 +120,17 @@ protected IModel createTextModel(final IModel model) { @Override public String getObject() { - return model.getObject().getName(); + MappingType mapping = model.getObject(); + + if(mapping == null){ + return null; + } + + if(mapping.getName() != null && StringUtils.isNotEmpty(mapping.getName())){ + return mapping.getName(); + } else { + return getString("MultiValueField.nameNotSpecified"); + } } }; } @@ -147,10 +158,14 @@ protected IModel createTextModel(final IModel model) { public String getObject() { MappingType mapping = model.getObject(); - if(mapping != null){ + if(mapping == null){ + return null; + } + + if(mapping.getName() != null && StringUtils.isNotEmpty(mapping.getName())){ return mapping.getName(); } else { - return null; + return getString("MultiValueField.nameNotSpecified"); } } }; diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAssociationEditor.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAssociationEditor.java index c3fd7569a1a..7ce51098326 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAssociationEditor.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAssociationEditor.java @@ -35,6 +35,7 @@ import com.evolveum.midpoint.web.page.admin.resources.PageResources; import com.evolveum.midpoint.web.util.WebMiscUtil; import com.evolveum.midpoint.xml.ns._public.common.common_3.*; +import org.apache.commons.lang.StringUtils; import org.apache.wicket.RestartResponseException; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior; @@ -323,10 +324,14 @@ protected IModel createTextModel(final IModel model) { public String getObject() { MappingType mapping = model.getObject(); - if(mapping != null){ + if(mapping == null){ + return null; + } + + if(mapping.getName() != null && StringUtils.isNotEmpty(mapping.getName())){ return mapping.getName(); } else { - return null; + return getString("MultiValueField.nameNotSpecified"); } } }; diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAttributeEditor.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAttributeEditor.java index e92edc131d1..915b7126042 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAttributeEditor.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceAttributeEditor.java @@ -33,6 +33,7 @@ import com.evolveum.midpoint.web.page.admin.resources.PageResources; import com.evolveum.midpoint.web.util.WebMiscUtil; import com.evolveum.midpoint.xml.ns._public.common.common_3.*; +import org.apache.commons.lang.StringUtils; import org.apache.wicket.RestartResponseException; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior; @@ -221,7 +222,29 @@ public String getIdValue(QName object, int index) { add(matchingRule); TextField outboundLabel = new TextField<>(ID_OUTBOUND_LABEL, - new PropertyModel(getModel(), "outbound.name")); + new AbstractReadOnlyModel() { + + @Override + public String getObject() { + ResourceAttributeDefinitionType attributeDefinition = getModel().getObject(); + + if(attributeDefinition == null){ + return null; + } + + MappingType outbound = attributeDefinition.getOutbound(); + + if(outbound == null){ + return null; + } + + if(outbound.getName() != null && StringUtils.isNotEmpty(outbound.getName())){ + return outbound.getName(); + } else { + return getString("MultiValueField.nameNotSpecified"); + } + } + }); outboundLabel.setEnabled(false); outboundLabel.setOutputMarkupId(true); add(outboundLabel); @@ -247,10 +270,14 @@ protected IModel createTextModel(final IModel model) { public String getObject() { MappingType mapping = model.getObject(); - if(mapping != null){ + if(mapping == null){ + return null; + } + + if(mapping.getName() != null && StringUtils.isNotEmpty(mapping.getName())){ return mapping.getName(); } else { - return null; + return getString("MultiValueField.nameNotSpecified"); } } }; diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceCredentialsEditor.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceCredentialsEditor.java index 355a67f12c2..a83f1590ce4 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceCredentialsEditor.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/schemahandling/ResourceCredentialsEditor.java @@ -28,6 +28,7 @@ import com.evolveum.midpoint.web.component.wizard.resource.component.schemahandling.modal.MappingEditorDialog; import com.evolveum.midpoint.web.util.WebMiscUtil; 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.ajax.markup.html.form.AjaxSubmitLink; import org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow; @@ -115,10 +116,14 @@ protected IModel createTextModel(final IModel model) { public String getObject() { MappingType mapping = model.getObject(); - if(mapping != null){ + if(mapping == null){ + return null; + } + + if(mapping.getName() != null && StringUtils.isNotEmpty(mapping.getName())){ return mapping.getName(); } else { - return null; + return getString("MultiValueField.nameNotSpecified"); } } }; diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.java index dbada75106e..611937c3707 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.java @@ -90,6 +90,16 @@ public void performExpressionHook(AjaxRequestTarget target){ ConditionalSearchFilterEditor.this.getModel().getObject().setCondition(expression); } } + + @Override + public String getTypeLabelKey() { + return "ConditionalSearchFilterEditor.condition.type.label"; + } + + @Override + public String getExpressionLabelKey() { + return "ConditionalSearchFilterEditor.condition.label"; + } }; add(expressionEditor); diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.properties b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.properties index f3ba48a819e..cc48b954e45 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.properties +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/component/synchronization/ConditionalSearchFilterEditor.properties @@ -15,4 +15,6 @@ # ConditionalSearchFilterEditor.label=Edit Synchronization Correlation -ConditionalSearchFilterEditor.description=Description \ No newline at end of file +ConditionalSearchFilterEditor.description=Description +ConditionalSearchFilterEditor.condition.type.label=Condition Type +ConditionalSearchFilterEditor.condition.label=Condition \ No newline at end of file diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/dto/MappingTypeDto.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/dto/MappingTypeDto.java index fb00b63f592..8c0d97dae62 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/dto/MappingTypeDto.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/wizard/resource/dto/MappingTypeDto.java @@ -65,6 +65,12 @@ public class MappingTypeDto implements Serializable { public MappingTypeDto(MappingType mapping, PrismContext prismContext){ + if(mapping != null && mapping.equals(new MappingType())){ + mappingObject = mapping; + expression = ExpressionUtil.EXPRESSION_AS_IS; + expressionType = ExpressionUtil.ExpressionEvaluatorType.AS_IS; + } + if(mapping == null){ mappingObject = new MappingType(); } else { diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/security/MidPointApplication.properties b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/security/MidPointApplication.properties index 28902433c18..bac8df89fe8 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/security/MidPointApplication.properties +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/security/MidPointApplication.properties @@ -538,4 +538,5 @@ operation.com.evolveum.midpoint.model.controller.ModelController.searchObjects=S operation.com.evolveum.midpoint.model.impl.controller.ModelDiagController.repositorySelfTest.user=Repository self test, user (Model) operation.com.evolveum.midpoint.common.crypto.CryptoUtil.securitySelfTest=Security self test -TextField.universal.placeholder=Insert value \ No newline at end of file +TextField.universal.placeholder=Insert value +MultiValueField.nameNotSpecified=(Name not specified) \ No newline at end of file