Package com.kazforge.jsonapi.patch
Record Class PatchChange.ResourceMetaChange
java.lang.Object
java.lang.Record
com.kazforge.jsonapi.patch.PatchChange.ResourceMetaChange
- All Implemented Interfaces:
PatchChange
- Enclosing interface:
PatchChange
public static record PatchChange.ResourceMetaChange(String jsonapiName, String logicalName, @Nullable Object value)
extends Record
implements PatchChange
A supplied resource-side
meta change.
jsonapiName() is the fixed "meta" JSON:API location marker. It is a
location marker, not a discriminator: an attribute named meta is wire-legal, so
consumers must dispatch on the sealed variant rather than infer semantics from the name alone.
logicalName() is the annotated meta property's logical Java name and value()
is the converted atomic replacement or a StructuredPatch of supplied nested changes.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.kazforge.jsonapi.patch.PatchChange
PatchChange.AttributeChange, PatchChange.RelationshipChange, PatchChange.RelationshipMetaChange, PatchChange.ResourceMetaChange -
Constructor Summary
ConstructorsConstructorDescriptionResourceMetaChange(String jsonapiName, String logicalName, @Nullable Object value) Creates an instance of aResourceMetaChangerecord class. -
Method Summary
Modifier and TypeMethodDescriptionfinal booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.Returns the value of thejsonapiNamerecord component.Returns the value of thelogicalNamerecord component.final StringtoString()Returns a string representation of this record class.@Nullable Objectvalue()Returns the value of thevaluerecord component.
-
Constructor Details
-
ResourceMetaChange
Creates an instance of aResourceMetaChangerecord class.- Parameters:
jsonapiName- the value for thejsonapiNamerecord componentlogicalName- the value for thelogicalNamerecord componentvalue- the value for thevaluerecord component
-
-
Method Details
-
value
Returns the value of thevaluerecord component.- Specified by:
valuein interfacePatchChange- Returns:
- the value of the
valuerecord component
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
jsonapiName
Returns the value of thejsonapiNamerecord component.- Specified by:
jsonapiNamein interfacePatchChange- Returns:
- the value of the
jsonapiNamerecord component
-
logicalName
Returns the value of thelogicalNamerecord component.- Specified by:
logicalNamein interfacePatchChange- Returns:
- the value of the
logicalNamerecord component
-