diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/autocomplete/ReferenceConverter.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/autocomplete/ReferenceConverter.java index 8c6c8083131..9c1034d096e 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/autocomplete/ReferenceConverter.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/component/autocomplete/ReferenceConverter.java @@ -52,13 +52,17 @@ public ObjectReferenceType convertToObject(String value, Locale locale) throws C ObjectQuery query = pageBase.getPrismContext().queryFor(type) .item(ObjectType.F_NAME) .eq(value) - .matchingOrig() +// .matchingOrig() + .matchingNorm() .build(); List> objectsList = WebModelServiceUtils.searchObjects( type, query, new OperationResult("searchObjects"), pageBase); if (CollectionUtils.isNotEmpty(objectsList)) { - return ObjectTypeUtil.createObjectRefWithFullObject( - objectsList.get(0), pageBase.getPrismContext()); + if (objectsList.size() == 1) { + return ObjectTypeUtil.createObjectRefWithFullObject( + objectsList.get(0), pageBase.getPrismContext()); + } + pageBase.error("Couldn't specify one object by name '" + value + "' and type " + type.getSimpleName() + ". Please will try specific type of object."); } ObjectReferenceType ref = null; if (isAllowedNotFoundObjectRef()) { @@ -74,7 +78,6 @@ public ObjectReferenceType convertToObject(String value, Locale locale) throws C } } return ref; - } @Override diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/util/WebComponentUtil.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/util/WebComponentUtil.java index e546273ab3f..283c12bade7 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/util/WebComponentUtil.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/api/util/WebComponentUtil.java @@ -29,6 +29,7 @@ import com.evolveum.midpoint.schema.expression.VariablesMap; import com.evolveum.midpoint.schema.util.task.TaskPartProgressInformation; import com.evolveum.midpoint.schema.util.task.TaskProgressInformation; +import com.evolveum.midpoint.schema.util.task.TaskWorkStateUtil; import com.evolveum.midpoint.web.component.data.SelectableBeanContainerDataProvider; import com.evolveum.midpoint.web.page.admin.server.dto.ApprovalOutcomeIcon; import com.evolveum.midpoint.xml.ns._public.common.audit_3.AuditEventRecordType; @@ -3432,7 +3433,7 @@ public static List getAssignableRelationsList(PrismObject 0) { sb.append("; "); } - sb.append(ref.getType().getLocalPart()); + if (referenceDef != null) { + List supportedTypes = createSupportedTargetTypeList(referenceDef.getTargetTypeName()); + if (supportedTypes != null && supportedTypes.size() > 1) { + sb.append(ref.getType().getLocalPart()); + } + } else { + sb.append(ref.getType().getLocalPart()); + } } return sb.toString(); } @@ -3772,6 +3780,16 @@ public static CompositedIcon createCompositeIconForObject appendActivationStatus(title, activationStatusIcon, obj, pageBase); } + if (obj instanceof TaskType && TaskWorkStateUtil.isCoordinator((TaskType)obj)) { + IconType icon = new IconType(); + icon.setCssClass(GuiStyleConstants.CLASS_OBJECT_NODE_ICON_COLORED); + builder.appendLayerIcon(icon, IconCssStyle.BOTTOM_RIGHT_FOR_COLUMN_STYLE); + if (title.length() > 0) { + title.append("\n"); + } + title.append(pageBase.createStringResource(TaskWorkStateUtil.getKind((TaskType)obj)).getString()); + } + if (StringUtils.isNotEmpty(title.toString())) { builder.setTitle(title.toString()); } diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/ContainerableListPanel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/ContainerableListPanel.java index ac8366d91e7..5c6265b4cda 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/ContainerableListPanel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/component/ContainerableListPanel.java @@ -952,7 +952,9 @@ public void refreshTable(AjaxRequestTarget target) { } target.add(table); - target.add(getPageBase().getFeedbackPanel()); + if (!getPageBase().getFeedbackMessages().isEmpty()) { + target.add(getPageBase().getFeedbackPanel()); + } } diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/factory/panel/SearchFilterTypeForQueryModel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/factory/panel/SearchFilterTypeForQueryModel.java index 798599dc84f..0ea9be9abd1 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/factory/panel/SearchFilterTypeForQueryModel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/gui/impl/factory/panel/SearchFilterTypeForQueryModel.java @@ -57,7 +57,8 @@ public String getObject() { return value.getText(); } catch (Exception e) { LoggingUtils.logUnexpectedException(LOGGER, "Cannot serialize filter", e); - getPageBase().error("Cannot parse filter: " + e.getMessage() + ". For more details, please, see midpoint log"); + getPageBase().getFeedbackMessages().error(getPageBase(), + "Cannot parse filter: " + e.getMessage() + ". For more details, please, see midpoint log"); } return null; } @@ -74,7 +75,7 @@ public void setObject(String object) { getBaseModel().setObject(filter); } catch (Exception e) { LoggingUtils.logUnexpectedException(LOGGER, "Cannot parse filter", e); - getPageBase().error("Cannot parse filter: " + e.getMessage() + ". For more details, please, see midpoint log"); + getPageBase().getFeedbackMessages().error(getPageBase(), "Cannot parse filter: " + e.getMessage() + ". For more details, please, see midpoint log"); } } } diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPanel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPanel.java index 432a357ca1d..91e418e9c68 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPanel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPanel.java @@ -73,7 +73,7 @@ protected LoadableModel getTextValue() { return new LoadableModel() { @Override protected String load() { - return WebComponentUtil.getReferenceObjectTextValue(getModelObject(), getPageBase()); + return WebComponentUtil.getReferenceObjectTextValue(getModelObject(), referenceDef, getPageBase()); } }; } diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPopupPanel.java b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPopupPanel.java index 1ad9d8213c3..581a2012cae 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPopupPanel.java +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/component/search/ReferenceValueSearchPopupPanel.java @@ -99,6 +99,9 @@ protected boolean isAllowedNotFoundObjectRef() { @Override protected void onUpdate(AjaxRequestTarget target) { + if (!getPageBase().getFeedbackMessages().isEmpty()) { + target.add(getPageBase().getFeedbackPanel()); + } ObjectReferenceType ort = nameField.getBaseFormComponent().getModelObject(); if (ort == null) { return; diff --git a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/page/admin/server/OperationalButtonsPanel.html b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/page/admin/server/OperationalButtonsPanel.html index f65f4321258..41e617d6998 100644 --- a/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/page/admin/server/OperationalButtonsPanel.html +++ b/gui/admin-gui/src/main/java/com/evolveum/midpoint/web/page/admin/server/OperationalButtonsPanel.html @@ -20,7 +20,7 @@
- + diff --git a/repo/repo-sqlbase/src/main/java/com/evolveum/midpoint/repo/sqlbase/mapping/item/ItemSqlMapper.java b/repo/repo-sqlbase/src/main/java/com/evolveum/midpoint/repo/sqlbase/mapping/item/ItemSqlMapper.java index d3d7435e1ae..d937a94c031 100644 --- a/repo/repo-sqlbase/src/main/java/com/evolveum/midpoint/repo/sqlbase/mapping/item/ItemSqlMapper.java +++ b/repo/repo-sqlbase/src/main/java/com/evolveum/midpoint/repo/sqlbase/mapping/item/ItemSqlMapper.java @@ -51,7 +51,7 @@ public class ItemSqlMapper { public

> ItemSqlMapper( @NotNull Function, ItemFilterProcessor> filterProcessorFactory, - @NotNull Function, ItemDeltaProcessor> deltaProcessorFactory, + Function, ItemDeltaProcessor> deltaProcessorFactory, // TODO not-null later @Nullable Function, P> primaryItemMapping) { this.filterProcessorFactory = Objects.requireNonNull(filterProcessorFactory); this.deltaProcessorFactory = deltaProcessorFactory; // TODO Objects.requireNonNull(deltaProcessorFactory);