[midPoint-git] [Evolveum/midpoint] 88b4da: Make ModelContext really serializable (MID-6890)

mederly noreply at github.com
Wed Mar 10 22:46:35 CET 2021


  Branch: refs/heads/support-4.2
  Home:   https://github.com/Evolveum/midpoint
  Commit: 88b4dac6ea15c66559f3f8cf1e226bdc58bbb781
      https://github.com/Evolveum/midpoint/commit/88b4dac6ea15c66559f3f8cf1e226bdc58bbb781
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2021-03-10 (Wed, 10 Mar 2021)

  Changed paths:
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismContext.java
    A infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismService.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/util/ItemDeltaItem.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/util/PrismAsserts.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismContextImpl.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/SchemaHelper.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/expression/ExpressionEvaluatorProfile.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/expression/ExpressionPermissionProfile.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/expression/ExpressionProfile.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/expression/ScriptExpressionProfile.java
    M infra/test-util/src/main/java/com/evolveum/midpoint/test/util/AbstractSpringTest.java
    M infra/test-util/src/main/java/com/evolveum/midpoint/test/util/MidPointAsserts.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/AssignmentPath.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/AssignmentPathSegment.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/EvaluatedAssignment.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/EvaluatedAssignmentTarget.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/EvaluatedPolicyRuleTrigger.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/EvaluatedResourceObjectConstruction.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/EvaluationOrder.java
    M model/model-api/src/main/java/com/evolveum/midpoint/model/api/context/Mapping.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/AbstractMappingImpl.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/MappingParser.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/TimeConstraintsEvaluation.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/ModelBeans.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/controller/CollectionProcessor.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/AssignmentPathVariables.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/EvaluatedPolicyRuleImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/AssignmentEvaluator.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/AssignmentPathImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/AssignmentPathSegmentImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/ConditionState.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/EvaluatedAssignmentImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/EvaluationOrderImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/PayloadEvaluation.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/TargetAssignmentEvaluation.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/assignments/TargetInducementEvaluation.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/AbstractConstruction.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/AbstractConstructionBuilder.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/AssignedResourceObjectConstruction.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/ConstructionResourceResolver.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/EvaluatedAbstractConstruction.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/EvaluatedPersonaConstructionImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/EvaluatedResourceObjectConstructionImpl.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/ItemEvaluation.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/PersonaConstruction.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/ResolvedConstructionResource.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/construction/ResourceObjectConstruction.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/AssignmentOrigin.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/OutboundProcessor.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/InboundMappingsEvaluation.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/mappings/AutoassignRoleMappingEvaluationRequest.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/mappings/FocalMappingEvaluationRequest.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/mappings/TemplateMappingEvaluationRequest.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/policy/PolicyRuleProcessor.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/sync/FocusValidityScannerTaskHandler.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/lens/TestAbstractAssignmentEvaluator.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/lens/TestAssignmentProcessor.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/lens/TestAssignmentProcessor2.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/lens/TestPolicyRules.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/lens/TestPolicyRules2.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/lens/TestProjector.java
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/TestPreviewChanges.java

  Log Message:
  -----------
  Make ModelContext really serializable (MID-6890)

While ModelContext was declared serializable, many of its constituents
were, in fact, not. So this commit makes a lot of types/classes really
serializable:

- AbstractConstruction and its subclasses
- EvaluatedAbstractConstruction and its subclasses
- EvaluatedResourceObjectConstruction and its subtypes
- EvaluatedAssignment
- EvaluatedAssignmentTarget
- AssignmentPath
- AssignmentPathSegment
- EvaluationOrder
- AssignmentOrigin
- AssignmentPathVariables
- FocalMappingEvaluationRequest and its subclasses
- ExpressionEvaluatorProfile
- ExpressionPermissionProfile
- ScriptExpressionProfile
- ExpressionProfile
- ItemDeltaItem and subclasses
- Mapping, MappingParser, ConditionState, TimeConstraintsEvaluation

In order to do this:
- ModelBeans are now reachable via static ModelBeans.get() call,
- SchemaHelper is now reachable via static SchemaHelper.get() call,
- PrismContext is now reachable via static PrismContext.get() call.

BEHAVIOR CHANGE:
- Mapping state now can contain only serializable values.

Cherry-picked from aeb862a4609b4f897831a660794bc1c85c3de198.




More information about the midPoint-svn mailing list