Class Expression<V extends PrismValue,D extends ItemDefinition<?>>
java.lang.Object
com.evolveum.midpoint.repo.common.expression.Expression<V,D>
"Compiled" form of
ExpressionType
bean.
Instantiated through ExpressionFactory.makeExpression(ExpressionConfigItem, ItemDefinition, ExpressionProfile, String, Task, OperationResult)
.
Main responsibilities:
. parsing expression beans (with the help of ExpressionConfigItem
and respective ExpressionEvaluatorFactory
)
. invoking the expression evaluator with the following pre/post processing:
.. processing inner variables;
.. privilege switching (`runAsRef`, `runPrivileged`);
.. expression profile checking;
.. logfile tracing (but currently NOT trace file tracing);- Author:
- semancik
-
Method Summary
Modifier and TypeMethodDescriptionboolean
doesVetoTargetValueRemoval
(V value, @NotNull OperationResult result) The expression evaluator can veto mapping's decision to remove a target value (due to range set check).@Nullable PrismValueDeltaSetTriple<V>
evaluate
(ExpressionEvaluationContext context, OperationResult result) toString()
-
Method Details
-
getOutputDefinition
-
evaluate
@Nullable public @Nullable PrismValueDeltaSetTriple<V> evaluate(ExpressionEvaluationContext context, OperationResult result) throws SchemaException, ExpressionEvaluationException, ObjectNotFoundException, CommunicationException, ConfigurationException, SecurityViolationException -
doesVetoTargetValueRemoval
@Experimental public boolean doesVetoTargetValueRemoval(@NotNull V value, @NotNull @NotNull OperationResult result) The expression evaluator can veto mapping's decision to remove a target value (due to range set check). We assume that expression evaluator keeps the state necessary to decide on this. -
toString
-
shortDebugDump
-