Skip to content

Commit

Permalink
GUI Search: Use provided container definition for axiom if possible
Browse files Browse the repository at this point in the history
  • Loading branch information
tonydamage committed Aug 10, 2022
1 parent abbb905 commit 64a07e7
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import com.evolveum.midpoint.gui.api.util.WebComponentUtil;
import com.evolveum.midpoint.model.api.authentication.CompiledGuiProfile;
import com.evolveum.midpoint.prism.Containerable;
import com.evolveum.midpoint.prism.PrismContainerDefinition;
import com.evolveum.midpoint.util.DisplayableValue;
import com.evolveum.midpoint.util.logging.Trace;
import com.evolveum.midpoint.util.logging.TraceManager;
Expand Down Expand Up @@ -37,6 +38,7 @@ public class ContainerTypeSearchItem<C extends Containerable> extends SearchItem
private Class<C> oldType;
private boolean visible = false;
private ObjectTypeSearchItemConfigurationType configuration = null;
private PrismContainerDefinition<C> containerDef;

public ContainerTypeSearchItem(Class<C> typeClass) {
this(new SearchValue<>(typeClass, ""), null);
Expand Down Expand Up @@ -132,4 +134,12 @@ public boolean isTypeChanged(){
public void setConfiguration(ObjectTypeSearchItemConfigurationType configuration) {
this.configuration = configuration;
}

public PrismContainerDefinition<C> getContainerDefinition() {
return containerDef;
}

public void setContainerDefinition(PrismContainerDefinition<C> containerDef) {
this.containerDef = containerDef;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -757,7 +757,12 @@ private ObjectFilter createAdvancedObjectFilter(PrismContext ctx) throws SchemaE
if (StringUtils.isEmpty(dslQuery)) {
return null;
}
return ctx.createQueryParser().parseQuery(getTypeClass(), dslQuery);

var containerDef = getType().getContainerDefinition();
if (containerDef == null) {
return ctx.createQueryParser().parseQuery(getTypeClass(), dslQuery);
}
return ctx.createQueryParser().parseQuery(containerDef, dslQuery);
}

return null;
Expand Down

0 comments on commit 64a07e7

Please sign in to comment.