Package jakarta.json

Interface JsonPatchBuilder


public interface JsonPatchBuilder
A builder for constructing a JSON Patch as defined by RFC 6902 by adding JSON Patch operations incrementally.

The following illustrates the approach.

   JsonPatchBuilder builder = Json.createPatchBuilder();
   JsonPatch patch = builder.add("/John/phones/office", "1234-567")
                            .remove("/Amy/age")
                            .build();
 
The result is equivalent to the following JSON Patch.
 [
    {"op" = "add", "path" = "/John/phones/office", "value" = "1234-567"},
    {"op" = "remove", "path" = "/Amy/age"}
 ] 
Since:
1.1
See Also:
  • Method Details

    • add

      JsonPatchBuilder add(String path, JsonValue value)
      Adds an "add" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • add

      JsonPatchBuilder add(String path, String value)
      Adds an "add" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • add

      JsonPatchBuilder add(String path, int value)
      Adds an "add" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • add

      JsonPatchBuilder add(String path, boolean value)
      Adds an "add" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • remove

      JsonPatchBuilder remove(String path)
      Adds a "remove" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer.
      Returns:
      this JsonPatchBuilder
    • replace

      JsonPatchBuilder replace(String path, JsonValue value)
      Adds a "replace" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • replace

      JsonPatchBuilder replace(String path, String value)
      Adds a "replace" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • replace

      JsonPatchBuilder replace(String path, int value)
      Adds a "replace" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • replace

      JsonPatchBuilder replace(String path, boolean value)
      Adds a "replace" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • move

      JsonPatchBuilder move(String path, String from)
      Adds a "move" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      from - the "from" member of the operation
      Returns:
      this JsonPatchBuilder
    • copy

      JsonPatchBuilder copy(String path, String from)
      Adds a "copy" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      from - the "from" member of the operation
      Returns:
      this JsonPatchBuilder
    • test

      JsonPatchBuilder test(String path, JsonValue value)
      Adds a "test" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • test

      JsonPatchBuilder test(String path, String value)
      Adds a "test" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • test

      JsonPatchBuilder test(String path, int value)
      Adds a "test" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • test

      JsonPatchBuilder test(String path, boolean value)
      Adds a "test" JSON Patch operation.
      Parameters:
      path - the "path" member of the operation. Must be a valid escaped JSON-Pointer string.
      value - the "value" member of the operation
      Returns:
      this JsonPatchBuilder
    • build

      JsonPatch build()
      Returns the JSON Patch.
      Returns:
      a JSON Patch