[midPoint-git] [Evolveum/midpoint] 36ae15: Add support for provenance metadata

mederly noreply at github.com
Thu Jul 9 07:50:50 CEST 2020


  Branch: refs/heads/tmp/provenance
  Home:   https://github.com/Evolveum/midpoint
  Commit: 36ae15da4bfe935dfc0bb1b2dd1bf8e5ec3e900a
      https://github.com/Evolveum/midpoint/commit/36ae15da4bfe935dfc0bb1b2dd1bf8e5ec3e900a
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2020-07-09 (Thu, 09 Jul 2020)

  Changed paths:
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/Item.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismObject.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismValue.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/ValueMetadata.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/delta/ItemDelta.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/delta/ObjectDelta.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/delta/PropertyDelta.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/equivalence/ParameterizedEquivalenceStrategy.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/ItemImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismContainerImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismObjectImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismPropertyImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismPropertyValueImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismValueImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/delta/ItemDeltaImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/delta/ObjectDeltaImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/delta/PropertyDeltaImpl.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/item/DummyItem.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/metadata/ValueMetadataAdapter.java
    M infra/prism-impl/src/test/java/com/evolveum/midpoint/prism/TestDelta.java
    M infra/schema/src/main/java/com/evolveum/midpoint/schema/metadata/MidpointValueMetadataFactory.java
    M infra/schema/src/test/java/com/evolveum/midpoint/schema/TestParseDiffPatch.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/expression/evaluator/transformation/ValueTupleTransformation.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/MappingImpl.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/metadata/ValueMetadataComputation.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/metadata/ValueMetadataProcessingSpec.java
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/metadata/builtin/BaseBuiltinMetadataMapping.java
    A model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/metadata/builtin/ProvenanceBuiltinMapping.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/ChangeExecutor.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/IvwoConsolidator.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/ProjectionValuesProcessor.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/focus/consolidation/DeltaSetTripleMapConsolidation.java
    M model/model-intest/src/test/java/com/evolveum/midpoint/model/intest/TestValueMetadata.java
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/archetype-provenance-metadata-recording.xml
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/origin-admin-entry.xml
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/origin-hr-feed.xml
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/origin-self-service-app.xml
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/resource-hr.xml
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/template-provenance-metadata-recording.xml
    A model/model-intest/src/test/resources/metadata/provenance-metadata-recording/user-leonhard.xml
    M repo/repo-sql-impl/src/main/java/com/evolveum/midpoint/repo/sql/helpers/ObjectDeltaUpdater.java
    M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/TestResource.java

  Log Message:
  -----------
  Add support for provenance metadata

1) Built-in mapping for provenance (acquisition and yield) was
created. However, it is only a preliminary version. It cannot delete
values. This will require deeper changes in the framework.

2) Added support for metadata change on values KEPT during
consolidation. It is implemented as ADD & DELETE of the same value,
with different metadata. (Requires a lot of code changes.)

3) Prism equivalence/narrow methods were cleaned up a bit. This is
to enable correct diff'ing of values with metadata. This change has
a potential to break many things in midPoint.

4) Delta narrow method checks for ADD & DELETE of the same value.
Mainly to enable point 2 above.

5) Changed handling of deltas in the repository (to enable point 2).
This has broken various things and should be revisited.

6) Added consideringValueMetadata option in
ParameterizedEquivalenceStrategy.

7) Displaying basic value metadata in various debugDump/shortDump/etc
methods.

Related to MID-6275.




More information about the midPoint-svn mailing list