Class SingleShadowInboundsPreparation<T extends Containerable>
java.lang.Object
com.evolveum.midpoint.model.impl.lens.projector.focus.inbounds.prep.SingleShadowInboundsPreparation<T>
Prepares (collects) inbound mappings for given single shadow.
(This is probably the hardest part of the inbound processing.)
There are currently rather strong _limitations_ related to pre-inbounds stage, e.g.
* only attribute mappings are evaluated there (no associations, credentials, activation, nor auxiliary object class ones);
* value metadata are not added in the pre-inbounds stage.
To reduce complexity, the majority of the work is delegated to smaller classes:
*
InboundsSource, InboundsTarget, InboundsContext describing the environment
in which mappings are to be evaluated
* MappedSourceItems containing MappedSourceItem instances - intermediate structures
helping with the mapping preparation
FIXME Special mappings i.e. password and activation ones, are evaluated immediately and using different code path.
This should be unified.
TODO should the InboundsContext be both included in InboundsSource and here?!-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceFIXME TEMPORARY -
Constructor Summary
ConstructorsConstructorDescriptionSingleShadowInboundsPreparation(@NotNull MappingEvaluationRequestsMap evaluationRequestsBeingCollected, @NotNull InboundsSource inboundsSource, @NotNull InboundsTarget<T> inboundsTarget, @NotNull InboundsContext inboundsContext, @NotNull SingleShadowInboundsPreparation.SpecialInboundsEvaluator specialInboundsEvaluator) -
Method Summary
Modifier and TypeMethodDescriptionvoidprepareOrEvaluate(OperationResult parentResult) Attribute, association, and aux OC mappings are collected.
-
Constructor Details
-
SingleShadowInboundsPreparation
public SingleShadowInboundsPreparation(@NotNull @NotNull MappingEvaluationRequestsMap evaluationRequestsBeingCollected, @NotNull @NotNull InboundsSource inboundsSource, @NotNull @NotNull InboundsTarget<T> inboundsTarget, @NotNull @NotNull InboundsContext inboundsContext, @NotNull @NotNull SingleShadowInboundsPreparation.SpecialInboundsEvaluator specialInboundsEvaluator)
-
-
Method Details
-
prepareOrEvaluate
public void prepareOrEvaluate(OperationResult parentResult) throws SchemaException, ObjectNotFoundException, SecurityViolationException, CommunicationException, ConfigurationException, ExpressionEvaluationException, StopProcessingProjectionException Attribute, association, and aux OC mappings are collected. Special (password, activation) ones are evaluated. TODO collect all the mappings (using the same mechanism), not evaluate anything here
-