Enum Class MergeStrategy

java.lang.Object
java.lang.Enum<MergeStrategy>
com.evolveum.midpoint.prism.MergeStrategy
All Implemented Interfaces:
Serializable, Comparable<MergeStrategy>, Constable

public enum MergeStrategy extends Enum<MergeStrategy>
  • Enum Constant Details

    • OVERLAY

      public static final MergeStrategy OVERLAY
      Merge the values from the source item to the target item. If the target item already contains a value: * for containers, the values are merged recursively * for other items (property, reference), the value is *preserved* If the source item contains a value that is not present in the target item, it is added. If the source item doesn't contain value present in target, value is *not changed* in target. Example scenario: Source: resource template Target: resource that uses the template The overlay strategy is used to merge the resource template to the resource to create the final resource object.
    • FULL

      public static final MergeStrategy FULL
      Merge the values from the source item to the target item. If the target item already contains a value: * for containers, the values are merged recursively * for other items (property, reference), the value is *replaced* If the source item contains a value that is not present in the target item, it is added. If the source item doesn't contain value present in target, value is *removed* from target. Example scenario: Source: local object in studio project (file without PCV ids) Target: object in midPoint (with PCV ids) To create minimal diff we need to merge source object to target object and then with result and target object we can create proper diff (object delta) without phantom (add/remove containers).
  • Method Details

    • values

      public static MergeStrategy[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static MergeStrategy valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null