Class AbstractSearchExpressionEvaluator<V extends PrismValue,O extends ObjectType,D extends ItemDefinition<?>,E extends SearchObjectExpressionEvaluatorType>
- java.lang.Object
-
- com.evolveum.midpoint.repo.common.expression.evaluator.AbstractExpressionEvaluator<V,D,E>
-
- com.evolveum.midpoint.model.common.expression.evaluator.transformation.AbstractValueTransformationExpressionEvaluator<V,D,E>
-
- com.evolveum.midpoint.model.common.expression.evaluator.AbstractSearchExpressionEvaluator<V,O,D,E>
-
- Type Parameters:
V
- "Processed" value we are looking for (e.g.PrismContainerValue
ofShadowAssociationType
)O
- "Raw" object type we are searching for to get `V` (e.g.ShadowType
)D
- Definition of `V`E
- type of configuration bean
- All Implemented Interfaces:
ExpressionEvaluator<V>
- Direct Known Subclasses:
AssignmentTargetSearchExpressionEvaluator
,AssociationTargetSearchExpressionEvaluator
,ReferenceSearchExpressionEvaluator
public abstract class AbstractSearchExpressionEvaluator<V extends PrismValue,O extends ObjectType,D extends ItemDefinition<?>,E extends SearchObjectExpressionEvaluatorType> extends AbstractValueTransformationExpressionEvaluator<V,D,E>
Expression evaluator that is based on searching for an object of `O` type meeting specified criteria (like entitlement shadow), and then converting it into "processed" form (like association value).- Author:
- Radovan Semancik
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
AbstractSearchExpressionEvaluator.Evaluation
The actual evaluation process.
-
Field Summary
Fields Modifier and Type Field Description protected CacheConfigurationManager
cacheConfigurationManager
-
Fields inherited from class com.evolveum.midpoint.model.common.expression.evaluator.transformation.AbstractValueTransformationExpressionEvaluator
localizationService, securityContextManager
-
Fields inherited from class com.evolveum.midpoint.repo.common.expression.evaluator.AbstractExpressionEvaluator
expressionEvaluatorBean, outputDefinition, prismContext, protector
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected boolean
isIncludeNullInputs()
protected @NotNull List<V>
transformSingleValue(VariablesMap variables, PlusMinusZero valueDestination, boolean useNew, ExpressionEvaluationContext context, String contextDescription, Task task, OperationResult result)
Transforms single value tuple.-
Methods inherited from class com.evolveum.midpoint.model.common.expression.evaluator.transformation.AbstractValueTransformationExpressionEvaluator
evaluate, isRelative
-
Methods inherited from class com.evolveum.midpoint.repo.common.expression.evaluator.AbstractExpressionEvaluator
addInternalOrigin, applyValueMetadata, checkEvaluatorProfile, findInSourcesAndVariables, finishOutputTriple, getElementName, getOutputDefinition, getPrismContext, getProtector
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.evolveum.midpoint.repo.common.expression.ExpressionEvaluator
shortDebugDump
-
-
-
-
Field Detail
-
cacheConfigurationManager
protected final CacheConfigurationManager cacheConfigurationManager
-
-
Method Detail
-
transformSingleValue
@NotNull protected @NotNull List<V> transformSingleValue(VariablesMap variables, PlusMinusZero valueDestination, boolean useNew, ExpressionEvaluationContext context, String contextDescription, Task task, OperationResult result) throws ExpressionEvaluationException, ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException
Description copied from class:AbstractValueTransformationExpressionEvaluator
Transforms single value tuple.- Specified by:
transformSingleValue
in classAbstractValueTransformationExpressionEvaluator<V extends PrismValue,D extends ItemDefinition<?>,E extends SearchObjectExpressionEvaluatorType>
- Parameters:
variables
- Variables to be applied. Must not be relativistic! All deltas must be sorted out by now.valueDestination
- Where we are going to put output value(s). Actually it's only supplementary information for the transformer as the actual placement of output values is done in the caller.useNew
- Are we using "new" state of sources/input variables? Again, this is only supplementary information, because the variables should be already non-relativistic. Some scripts need to know the value of "useNew".context
- Caller-specified context of the whole expression evaluation.- Throws:
ExpressionEvaluationException
ObjectNotFoundException
SchemaException
CommunicationException
ConfigurationException
SecurityViolationException
-
isIncludeNullInputs
protected boolean isIncludeNullInputs()
- Overrides:
isIncludeNullInputs
in classAbstractValueTransformationExpressionEvaluator<V extends PrismValue,D extends ItemDefinition<?>,E extends SearchObjectExpressionEvaluatorType>
-
-