[midPoint-git] [Evolveum/prism] 8c3dc4: Implement removal of metadata from paths

Tony Tkáčik noreply at github.com
Wed Jan 22 16:34:10 CET 2025


  Branch: refs/heads/master
  Home:   https://github.com/Evolveum/prism
  Commit: 8c3dc40235e31b602cc3966386b53c9eb2acb104
      https://github.com/Evolveum/prism/commit/8c3dc40235e31b602cc3966386b53c9eb2acb104
  Author: Andrej Zan <andrej.zan at evolveum.com>
  Date:   2025-01-21 (Tue, 21 Jan 2025)

  Changed paths:
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismContainer.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismContainerValue.java
    A infra/prism-api/src/main/java/com/evolveum/midpoint/prism/Walkable.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/deleg/PrismContainerValueDelegator.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismContainerValueImpl.java
    M infra/prism-impl/src/test/java/com/evolveum/midpoint/prism/PrismInternalTestUtil.java
    A infra/prism-impl/src/test/java/com/evolveum/midpoint/prism/TestPrismContainerValueImpl.java
    M infra/prism-impl/src/test/resources/common/xml/user-alice-metadata.xml

  Log Message:
  -----------
  Implement removal of metadata from paths

**What**

Implement new `PrismContainerValue` method, which allows to delete
metadata from specified paths.

**Why**

This function is implemented mainly for the use by REST APIs, which
could exclude metadata based on user's request. Till now user could
exclude "normal" data, but not metadata.

**Note**

This change also bring new `Walkable` interface, which provide method to
walk through container items hierarchy. Implementation of this method is
used by the new method for metadata removal as well as for the existing
`removePaths` method.

Currently this new interface is extended only by the
`PrismContainerValue`. I have considered if it should be extended also
by the `PrismContainer` itself, but it would require to write
implementation in more places which I am not so far familiar enough. I
may add it later if I will be advised to do so.

**Fixes**: MID-10216


  Commit: 77aaa2160d1a8d6fd3846ef7c96bbdac4ad02469
      https://github.com/Evolveum/prism/commit/77aaa2160d1a8d6fd3846ef7c96bbdac4ad02469
  Author: Tony Tkáčik <tonydamage at users.noreply.github.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismContainer.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/PrismContainerValue.java
    A infra/prism-api/src/main/java/com/evolveum/midpoint/prism/Walkable.java
    M infra/prism-api/src/main/java/com/evolveum/midpoint/prism/deleg/PrismContainerValueDelegator.java
    M infra/prism-impl/src/main/java/com/evolveum/midpoint/prism/impl/PrismContainerValueImpl.java
    M infra/prism-impl/src/test/java/com/evolveum/midpoint/prism/PrismInternalTestUtil.java
    A infra/prism-impl/src/test/java/com/evolveum/midpoint/prism/TestPrismContainerValueImpl.java
    M infra/prism-impl/src/test/resources/common/xml/user-alice-metadata.xml

  Log Message:
  -----------
  Merge pull request #5 from Evolveum/bugfix/10216

Implement removal of metadata from paths


Compare: https://github.com/Evolveum/prism/compare/6dd68e128d20...77aaa2160d1a

To unsubscribe from these emails, change your notification settings at https://github.com/Evolveum/prism/settings/notifications


More information about the midPoint-svn mailing list