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.PrismContainerValueofShadowAssociationType)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 ClassesModifier and TypeClassDescriptionprotected classThe actual evaluation process. -
Field Summary
FieldsFields inherited from class com.evolveum.midpoint.model.common.expression.evaluator.transformation.AbstractValueTransformationExpressionEvaluator
localizationService, securityContextManagerFields inherited from class com.evolveum.midpoint.repo.common.expression.evaluator.AbstractExpressionEvaluator
expressionEvaluatorBean, outputDefinition, prismContext, protector -
Method Summary
Modifier and TypeMethodDescriptionprotected booleantransformSingleValue(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, isRelativeMethods inherited from class com.evolveum.midpoint.repo.common.expression.evaluator.AbstractExpressionEvaluator
addInternalOrigin, applyValueMetadata, checkEvaluatorProfile, findInSourcesAndVariables, finishOutputTriple, getElementName, getOutputDefinition, getPrismContext, getProtectorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.repo.common.expression.ExpressionEvaluator
shortDebugDump
-
Field Details
-
cacheConfigurationManager
-
-
Method Details
-
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:AbstractValueTransformationExpressionEvaluatorTransforms single value tuple.- Specified by:
transformSingleValuein 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:
ExpressionEvaluationExceptionObjectNotFoundExceptionSchemaExceptionCommunicationExceptionConfigurationExceptionSecurityViolationException
-
isIncludeNullInputs
protected boolean isIncludeNullInputs()- Overrides:
isIncludeNullInputsin classAbstractValueTransformationExpressionEvaluator<V extends PrismValue,D extends ItemDefinition<?>, E extends SearchObjectExpressionEvaluatorType>
-