Class AssignmentEvaluator<AH extends AssignmentHolderType>
java.lang.Object
com.evolveum.midpoint.model.impl.lens.assignments.AssignmentEvaluator<AH>
An engine that creates EvaluatedAssignment from an assignment IDI. It collects induced roles, constructions,
authorizations, policy rules, and so on.
This is the main entry point to the whole "assignments" mechanism at the level of a single assignment.
It can be called repeatedly for different assignments of the same focus.
- Author:
- semancik
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic final class
-
Method Summary
Modifier and TypeMethodDescriptionevaluate
(@NotNull ItemDeltaItem<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> assignmentIdi, @Nullable Long externalAssignmentId, PlusMinusZero primaryAssignmentMode, boolean evaluateOld, @NotNull AssignmentHolderType source, @NotNull String sourceDescription, @NotNull AssignmentOrigin origin, @NotNull Task task, @NotNull OperationResult parentResult) Main entry point: evaluates a given focus-attached (direct) assignment.boolean
isMemberOf
(String targetOid) boolean
isMemberOfInvocationResultChanged
(DeltaSetTriple<EvaluatedAssignmentImpl<AH>> evaluatedAssignmentTriple) void
reset
(boolean alsoMemberOfInvocations)
-
Method Details
-
reset
public void reset(boolean alsoMemberOfInvocations) -
evaluate
public EvaluatedAssignmentImpl<AH> evaluate(@NotNull @NotNull ItemDeltaItem<PrismContainerValue<AssignmentType>, PrismContainerDefinition<AssignmentType>> assignmentIdi, @Nullable @Nullable Long externalAssignmentId, PlusMinusZero primaryAssignmentMode, boolean evaluateOld, @NotNull @NotNull AssignmentHolderType source, @NotNull @NotNull String sourceDescription, @NotNull @NotNull AssignmentOrigin origin, @NotNull @NotNull Task task, @NotNull @NotNull OperationResult parentResult) throws SchemaException, ObjectNotFoundException, ExpressionEvaluationException, PolicyViolationException, SecurityViolationException, ConfigurationException, CommunicationExceptionMain entry point: evaluates a given focus-attached (direct) assignment. Returns a complex structure calledEvaluatedAssignmentImpl
.- Parameters:
externalAssignmentId
- New assignments usually need to have their IDs pre-assigned by the native repo. Such values are provided here.primaryAssignmentMode
- Not well defined. Do not use for new things. Please seeEvaluationContext.primaryAssignmentMode
.evaluateOld
- If true, we take the 'old' value from assignmentIdi. If false, we take the 'new' one.source
- FIXME The role of this parameter is quite unclear. It looks like that it is filled-in using objectNew or objectCurrent depending on some strange condition in AssignmentTripleEvaluator- Throws:
SchemaException
ObjectNotFoundException
ExpressionEvaluationException
PolicyViolationException
SecurityViolationException
ConfigurationException
CommunicationException
-
isMemberOf
-
isMemberOfInvocationResultChanged
public boolean isMemberOfInvocationResultChanged(DeltaSetTriple<EvaluatedAssignmentImpl<AH>> evaluatedAssignmentTriple)
-