Package com.kazforge.jsonapi.patch
PatchPresence distinguishes an omitted DTO member from a
supplied value, including a supplied converted null. PatchCommand contains only supplied mapped changes; omitted
attributes, relationships, and meta locations do not appear in its change list.
On the low-level path, StructuredPatch recursively
preserves exactly the supplied members of a traversable structured attribute or meta value.
Missing nested members remain omitted, an empty structured patch is a supplied empty object, and
list, set, array, map, and relationship values remain whole replacements rather than
element-addressed mutation protocols.
These values describe a requested change; they do not authorize it or mutate application state. The application owns authorization, concurrency, persistence, and mutation semantics.
-
ClassDescriptionBackend-independent requested change in a
PatchCommand: a supplied mapped attribute, relationship, or resource-side meta location.A supplied mapped attribute change.A supplied mapped relationship linkage replacement.A supplied relationshipmetachange for a specific mapped relationship.A supplied resource-sidemetachange.PatchCommand<T>Immutable presence-aware resource-update command parameterized by the annotated DTO typeT.Backend-independent tri-state presence for a single patchable PATCH DTO member.The member was omitted from the update document; no requested change.The member was supplied.Backend-independent supplied nested member of aStructuredPatch.Sealed state algebra for one supplied nestedStructuredMemberof aStructuredPatch.A supplied atomic nested value.A supplied structured nested value; an empty list is a supplied empty structured object.Backend-independent low-level requested-change payload for a supplied structured value.