Class PatchMergeInstruction


  • @Generated(value="OracleSDKGenerator",
               comments="API Version: 20230301")
    public final class PatchMergeInstruction
    extends PatchInstruction
    An operation that recursively updates items of the selection, or adding the value if the selection is empty.

    If the value is not an object, it is used directly, otherwise each key-value member is used to create or update a member of the same name in the target and the same process is applied recursively for each object-typed value (similar to RFC 7396 JSON Merge Patch, except that null values are copied rather than transformed into deletions). NOT_FOUND exceptions are handled by creating the implied containing structure. To avoid referential errors if an item’s descendant is also in the selection, items of the selection are processed in order of decreasing depth.
    Note: Objects should always be created or deserialized using the PatchMergeInstruction.Builder. This model distinguishes fields that are null because they are unset from fields that are explicitly set to null. This is done in the setter methods of the PatchMergeInstruction.Builder, which maintain a set of all explicitly set fields called PatchMergeInstruction.Builder.__explicitlySet__. The hashCode() and equals(Object) methods are implemented to take the explicitly set fields into account. The constructor, on the other hand, does not take the explicitly set fields into account (since the constructor cannot distinguish explicit null from unset null).