[midPoint-git] [Evolveum/midpoint] b8db94: Set old object on initial focus load operation

mederly noreply at github.com
Tue May 17 11:59:09 CEST 2022


  Branch: refs/heads/master
  Home:   https://github.com/Evolveum/midpoint
  Commit: b8db94d81cc8fcc64fe48166cc88622f57188ad0
      https://github.com/Evolveum/midpoint/commit/b8db94d81cc8fcc64fe48166cc88622f57188ad0
  Author: Pavol Mederly <mederly at evolveum.com>
  Date:   2022-05-17 (Tue, 17 May 2022)

  Changed paths:
    M model/model-common/src/main/java/com/evolveum/midpoint/model/common/mapping/MappingParser.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/ClockworkClick.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/ElementState.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/LensElementContext.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/LensFocusContext.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/LensProjectionContext.java
    M model/model-impl/src/main/java/com/evolveum/midpoint/model/impl/lens/projector/loader/FocusLoadOperation.java
    M model/model-impl/src/test/java/com/evolveum/midpoint/model/impl/AbstractModelImplementationIntegrationTest.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/mapping/TestMappingInbound.java
    A model/model-intest/src/test/resources/mapping/resource-target-photos.xml
    A model/model-intest/src/test/resources/mapping/task-import-target-photos.xml
    M repo/repo-sql-impl/src/main/java/com/evolveum/midpoint/repo/sql/util/RUtil.java
    M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/DummyAccountAsserter.java
    M repo/repo-test-util/src/main/java/com/evolveum/midpoint/test/asserter/DummyObjectAsserter.java

  Log Message:
  -----------
  Set old object on initial focus load operation

When starting a clockwork, initial focus load operation is executed.
Previously, we have updated only current & new state of the focus,
leaving old state as it came from the external caller. However, the
focus is often incomplete (e.g. without jpegPhoto) at that time.

Now we overwrite also the old state - but only on the first loading.

Related change:

- A safety check was added: If a mapping is to be executed on an
incomplete item, an exception is thrown. It is better to see the issue
immediately than to incur data quality problems detected potentially
much later.

Unrelated change:

- When serializing operation result (for task) we employ less strict
mode, allowing unserializable values to be stored as strings, and also
escaping invalid XML characters. This can be useful e.g. when tracing
is enabled, and is consistent with the new (native) repo behavior.

This resolves MID-7916.




More information about the midPoint-svn mailing list