[midPoint-git] [Evolveum/midpoint] 9a6ba3: Add association value specific expr. evaluators
mederly
noreply at github.com
Thu Jul 11 23:38:09 CEST 2024
Branch: refs/heads/tmp/separate-associations-mappings
Home: https://github.com/Evolveum/midpoint
Commit: 9a6ba35aee5f4f1043f5d1b5a55408629d9d44ba
https://github.com/Evolveum/midpoint/commit/9a6ba35aee5f4f1043f5d1b5a55408629d9d44ba
Author: Pavol Mederly <mederly at evolveum.com>
Date: 2024-07-11 (Thu, 11 Jul 2024)
Changed paths:
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ResourceObjectInboundDefinition.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowAssociation.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowAssociationDefinition.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowAssociationDefinitionImpl.java
M infra/schema/src/main/java/com/evolveum/midpoint/schema/processor/ShadowAssociationValue.java
M infra/schema/src/main/resources/xml/ns/public/common/common-core-3.xsd
M infra/schema/src/main/resources/xml/ns/public/common/common-provisioning-3.xsd
M model/model-common/src/main/java/com/evolveum/midpoint/model/common/expression/evaluator/transformation/CombinatorialEvaluation.java
M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/AbstractMappingImpl.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/correlation/CorrelationServiceImpl.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/expr/AssociationValueConstructionExpressionEvaluator.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/expr/AssociationValueConstructionExpressionEvaluatorFactory.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/expr/AssociationValueSynchronizationExpressionEvaluator.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/expr/AssociationValueSynchronizationExpressionEvaluatorFactory.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/expr/ExpressionEvaluatorResult.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/AssociationValuesTripleComputation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/ShadowItemMapper.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/AssignmentProcessor.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/DeltaSetTripleIvwoMap.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/DeltaSetTripleMap.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/FocalMappingSetEvaluation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/InboundProcessor.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/ProjectionMappingSetEvaluator.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/TemplateMappingsEvaluation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/consolidation/DeltaSetTripleMapConsolidation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/AbstractInboundsProcessing.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/DefaultSingleShadowInboundsProcessingContextImpl.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/FullInboundsProcessing.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/InboundMappingEvaluationRequest.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/LimitedInboundsProcessing.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/MappingEvaluationRequest.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/MappingEvaluationRequests.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/PreInboundsContext.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/SimplePreInboundsContextImpl.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/SingleShadowInboundsProcessing.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/SingleShadowInboundsProcessingContext.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/package-info.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/Context.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/FullContext.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/FullInboundsPreparation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/FullSource.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/FullTarget.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/IMSource.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/InboundsPreparation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/LimitedContext.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/LimitedInboundsPreparation.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/LimitedSource.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/LimitedTarget.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/MSource.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/MappedItem.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/MappedItems.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/MappingContext.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/MappingSource.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/MappingTarget.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/SingleShadowInboundsPreparation.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/Target.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/inbounds/prep/package-info.java
R model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/PreMappingsEvaluation.java
A model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/PreMappingsEvaluator.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/SynchronizationContext.java
M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/SynchronizationServiceImpl.java
M model/model-impl/src/main/resources/ctx-model.xml
M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/correlator/correlation/TestCorrelators.java
M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/associations/TestAssociations.java
M model/model-intest/src/test/resources/associations/resource-dummy-ad.xml
M model/model-intest/src/test/resources/associations/resource-dummy-dms.xml
M model/model-intest/src/test/resources/associations/resource-dummy-hr.xml
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/expression/ExpressionEvaluationContext.java
M repo/repo-common/src/main/java/com/evolveum/midpoint/repo/common/expression/Source.java
M testing/story/src/test/resources/associations-first-steps/resource-dms-120.xml
M testing/story/src/test/resources/associations-first-steps/resource-dms-130.xml
M testing/story/src/test/resources/associations-first-steps/resource-dms-140.xml
M testing/story/src/test/resources/associations-first-steps/resource-dms-150.xml
M testing/story/src/test/resources/associations-first-steps/resource-dms-170.xml
M testing/story/src/test/resources/associations-first-steps/resource-dms-300.xml
M testing/story/src/test/resources/associations-first-steps/resource-dms-xxx.xml
Log Message:
-----------
Add association value specific expr. evaluators
Here we add two expression evaluators dedicated to handling association
values: associationValueConstruction/associationValueSynchronization.
The first is used in association outbounds, and creates an aggregated
association value based on mappings for attributes and object
references. The second is used in inbounds, and maps association values
into assignment values, doing correlation and obeying synchronization
reactions.
The second evaluator requires some extensions to the model of processing
data:
1) It has to have a direct access to the target item values
(assignments, later roleMembershipRefs).
2) In addition to a PrismValueDeltaSetTriple, it creates an attached
DeltaSetTripleIvwoMap - holding partial deltas related to assignments'
content.
However, the overall solution fits better with the original design
of midPoint, and requires less code duplication than previous attempts.
Work in progress. Some features are not yet implemented (in particular,
enforcing the range of the assignments). Some tests fail now.
To unsubscribe from these emails, change your notification settings at https://github.com/Evolveum/midpoint/settings/notifications
More information about the midPoint-svn
mailing list