Skip to content

Commit

Permalink
MID-6393: Backport changes for differences between 4.4 and 4.6
Browse files Browse the repository at this point in the history
  • Loading branch information
tonydamage committed Jun 27, 2022
1 parent b3ce31e commit 0806b7f
Show file tree
Hide file tree
Showing 8 changed files with 24 additions and 27 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@
import com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapper;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerValueWrapper;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismValueWrapper;
import com.evolveum.midpoint.gui.api.registry.DataProviderRegistry;
import com.evolveum.midpoint.gui.api.registry.GuiComponentRegistry;
import com.evolveum.midpoint.gui.api.util.ModelServiceLocator;
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
Expand Down Expand Up @@ -290,6 +291,8 @@ public abstract class PageBase extends WebPage implements ModelServiceLocator {
private MidpointFunctions midpointFunctions;

@SpringBean private GuiComponentRegistry registry;
@SpringBean private DataProviderRegistry dataProviderRegistry;

@SpringBean private DefaultGuiConfigurationCompiler guiConfigurationRegistry;

@SpringBean private ClusterExecutionHelper clusterExecutionHelper;
Expand Down Expand Up @@ -398,6 +401,7 @@ public LocalizationService getLocalizationService() {
return localizationService;
}

@Override
@Contract(pure = true)
public PrismContext getPrismContext() {
return getMidpointApplication().getPrismContext();
Expand All @@ -423,6 +427,7 @@ public RepositoryService getRepositoryService() {
return getMidpointApplication().getRepositoryService();
}

@Override
public ExpressionFactory getExpressionFactory() {
return getMidpointApplication().getExpressionFactory();
}
Expand Down Expand Up @@ -501,14 +506,20 @@ public ModelDiagnosticService getModelDiagnosticService() {
return modelDiagnosticService;
}

@Override
public GuiComponentRegistry getRegistry() {
return registry;
}

public DataProviderRegistry getDataProviderRegistry() {
return dataProviderRegistry;
}

public CacheDispatcher getCacheDispatcher() {
return cacheDispatcher;
}

@Override
public AdminGuiConfigurationMergeManager getAdminGuiConfigurationMergeManager() {
return adminGuiConfigurationMergeManager;
}
Expand Down Expand Up @@ -582,6 +593,7 @@ public <O extends ObjectType, T extends ObjectType> void authorize(String operat
getSecurityEnforcer().authorize(operationUrl, phase, params, ownerResolver, getPageTask(), result);
}

@Override
public MidpointFormValidatorRegistry getFormValidatorRegistry() {
return formValidatorRegistry;
}
Expand Down Expand Up @@ -635,6 +647,7 @@ public Task createAnonymousTask(String operation) {
return task;
}

@Override
public Task createSimpleTask(String operation) {
return createSimpleTask(operation, null);
}
Expand Down Expand Up @@ -1802,6 +1815,7 @@ public <C extends Containerable> PrismContainerWrapperFactory<C> findContainerWr
return registry.findContainerWrapperFactory(def);
}

@Override
public <IW extends ItemWrapper, VW extends PrismValueWrapper, PV extends PrismValue> VW createValueWrapper(IW parentWrapper, PV newValue, ValueStatus status, WrapperContext context) throws SchemaException {

PrismContainerValue<?> parentValue = null;
Expand All @@ -1824,6 +1838,7 @@ public <ID extends ItemDefinition, IW extends ItemWrapper> IW createItemWrapper(
return factory.createWrapper(parent, def, ctx);
}

@Override
public <I extends Item, IW extends ItemWrapper> IW createItemWrapper(I item, ItemStatus status, WrapperContext ctx) throws SchemaException {

ItemWrapperFactory<IW, ?, ?> factory = registry.findWrapperFactory(item.getDefinition(), null);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

import com.evolveum.midpoint.gui.api.page.PageBase;
import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerValueWrapper;
import com.evolveum.midpoint.gui.impl.component.search.Search;
import com.evolveum.midpoint.web.component.search.Search;
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.prism.Objectable;
import com.evolveum.midpoint.prism.path.ItemPath;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
import org.springframework.stereotype.Component;

import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerValueWrapper;
import com.evolveum.midpoint.gui.impl.component.search.Search;
import com.evolveum.midpoint.web.component.search.Search;
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.prism.Objectable;
import com.evolveum.midpoint.prism.path.ItemPath;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
import com.evolveum.midpoint.gui.api.util.WebModelServiceUtils;
import com.evolveum.midpoint.gui.impl.page.admin.assignmentholder.component.AssignmentHolderAssignmentPanel;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.impl.query.builder.QueryBuilder;
import com.evolveum.midpoint.prism.query.ObjectFilter;
import com.evolveum.midpoint.prism.query.ObjectQuery;
import com.evolveum.midpoint.schema.util.FocusTypeUtil;
Expand Down Expand Up @@ -53,7 +52,7 @@ protected ObjectQuery getCustomizeQuery() {
return null;
}
// This should do customPostSearch on repository level.
return QueryBuilder.queryFor(AssignmentType.class, getPrismContext())
return getPrismContext().queryFor(AssignmentType.class)
.ref(AssignmentType.F_TARGET_REF, OrgType.COMPLEX_TYPE, null)
.item(ObjectType.F_SUBTYPE).contains("access")
.build();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
import com.evolveum.midpoint.web.application.PanelType;
import com.evolveum.midpoint.web.component.search.SearchFactory;
import com.evolveum.midpoint.web.component.search.SearchItemDefinition;
import com.evolveum.midpoint.gui.impl.component.search.AbstractSearchItemWrapper;
import com.evolveum.midpoint.web.session.UserProfileStorage;
import com.evolveum.midpoint.xml.ns._public.common.common_3.*;

Expand Down Expand Up @@ -116,20 +115,6 @@ protected List<SearchItemDefinition> createSearchableItems(PrismContainerDefinit
return defs;
}

@Override
protected List<? super AbstractSearchItemWrapper> createSearchableItemWrappers(PrismContainerDefinition<AssignmentType> containerDef) {
List<? super AbstractSearchItemWrapper> defs = new ArrayList<>();
SearchFactory.addSearchPropertyWrapper(containerDef, ItemPath.create(AssignmentType.F_ACTIVATION, ActivationType.F_ADMINISTRATIVE_STATUS), defs);
SearchFactory.addSearchPropertyWrapper(containerDef, ItemPath.create(AssignmentType.F_ACTIVATION, ActivationType.F_EFFECTIVE_STATUS), defs);
SearchFactory.addSearchPropertyWrapper(containerDef, ItemPath.create(AssignmentType.F_POLICY_RULE, PolicyRuleType.F_NAME), defs, "AssignmentPanel.search.policyRule.name");
SearchFactory.addSearchRefWrapper(containerDef,
ItemPath.create(AssignmentType.F_POLICY_RULE, PolicyRuleType.F_POLICY_CONSTRAINTS,
PolicyConstraintsType.F_EXCLUSION, ExclusionPolicyConstraintType.F_TARGET_REF), defs, AreaCategoryType.POLICY, getPageBase());

defs.addAll(SearchFactory.createSearchableExtensionWrapperList(containerDef));
return defs;
}

@Override
protected ObjectQuery getCustomizeQuery() {
// CustomizeQuery is not repo indexed
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
import com.evolveum.midpoint.gui.impl.component.data.column.PrismPropertyWrapperColumn;
import com.evolveum.midpoint.gui.impl.page.admin.abstractrole.component.AbstractRoleInducementPanel;
import com.evolveum.midpoint.prism.*;
import com.evolveum.midpoint.prism.impl.query.builder.QueryBuilder;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.query.ObjectFilter;
import com.evolveum.midpoint.prism.query.ObjectQuery;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
import org.jetbrains.annotations.NotNull;

import com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerValueWrapper;
import com.evolveum.midpoint.gui.impl.component.search.Search;
import com.evolveum.midpoint.web.component.search.Search;
import com.evolveum.midpoint.model.api.authentication.CompiledObjectCollectionView;
import com.evolveum.midpoint.prism.Containerable;
import com.evolveum.midpoint.prism.Objectable;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
import com.evolveum.midpoint.prism.Objectable;
import com.evolveum.midpoint.prism.PrismConstants;
import com.evolveum.midpoint.prism.PrismObject;
import com.evolveum.midpoint.prism.impl.query.builder.QueryBuilder;
import com.evolveum.midpoint.prism.path.ItemPath;
import com.evolveum.midpoint.prism.query.ObjectFilter;
import com.evolveum.midpoint.prism.query.ObjectOrdering;
Expand All @@ -21,7 +20,7 @@
import com.evolveum.midpoint.task.api.Task;
import com.evolveum.midpoint.util.exception.SchemaException;
import com.evolveum.midpoint.web.component.prism.ValueStatus;
import com.evolveum.midpoint.gui.impl.component.search.Search;
import com.evolveum.midpoint.web.component.search.Search;
import com.evolveum.midpoint.xml.ns._public.common.common_3.AssignmentType;

import com.evolveum.midpoint.xml.ns._public.common.common_3.ObjectReferenceType;
Expand Down Expand Up @@ -80,7 +79,7 @@ protected ObjectFilter postFilterIds() {
// No filtering were done
return null;
}
var builder = QueryBuilder.queryFor(AssignmentType.class, getPrismContext());
var builder = getPrismContext().queryFor(AssignmentType.class);
if (filtered.isEmpty()) {
return builder.none().buildFilter();
}
Expand Down Expand Up @@ -211,7 +210,7 @@ public ObjectQuery getQuery() {
// We have user entered filter
if (idFilter != null) {
// PostFilter filtered data, so we need to search only in these data
filter = QueryBuilder.queryFor(getType(), getPrismContext())
filter = getPrismContext().queryFor(getType())
.filter(orig.getFilter())
.and().filter(idFilter)
.buildFilter();
Expand All @@ -225,14 +224,14 @@ public ObjectQuery getQuery() {
}

if (filter != null) {
return QueryBuilder.queryFor(AssignmentType.class, getPrismContext())
return getPrismContext().queryFor(AssignmentType.class)
.filter(filter)
.and()
.ownedBy(objectType, path)
.id(oid)
.build();
}
return QueryBuilder.queryFor(AssignmentType.class, getPrismContext())
return getPrismContext().queryFor(AssignmentType.class)
.ownedBy(objectType, path)
.id(oid)
.build();
Expand Down

0 comments on commit 0806b7f

Please sign in to comment.