Package org.javers.core.diff
Class Change
- java.lang.Object
-
- org.javers.core.diff.Change
-
- All Implemented Interfaces:
java.io.Serializable
- Direct Known Subclasses:
NewObject,ObjectRemoved,PropertyChange
public abstract class Change extends java.lang.Object implements java.io.SerializableChange represents an atomic difference between two objects.
There are several types fo change:ValueChange,ReferenceChange,ListChange,NewObject,ObjectRemoved,ContainerChange,MapChange. See the inheritance hierarchy for the complete list.- See Also:
Diff, Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedChange(GlobalId affectedCdoId, java.util.Optional<java.lang.Object> affectedCdo)protectedChange(GlobalId affectedCdoId, java.util.Optional<java.lang.Object> affectedCdo, java.util.Optional<CommitMetadata> commitMetadata)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)GlobalIdgetAffectedGlobalId()Affected domain object GlobalIdjava.lang.ObjectgetAffectedLocalId()Affected domain object local Id (value under @Id property)java.util.Optional<java.lang.Object>getAffectedObject()Affected domain object.java.util.Optional<CommitMetadata>getCommitMetadata()Empty if change is calculated byJavers.compare(Object, Object)inthashCode()abstract java.lang.StringprettyPrint(PrettyValuePrinter valuePrinter)java.lang.StringtoString()Pretty print with default dates formatting
-
-
-
Constructor Detail
-
Change
protected Change(GlobalId affectedCdoId, java.util.Optional<java.lang.Object> affectedCdo)
-
Change
protected Change(GlobalId affectedCdoId, java.util.Optional<java.lang.Object> affectedCdo, java.util.Optional<CommitMetadata> commitMetadata)
-
-
Method Detail
-
getAffectedGlobalId
public GlobalId getAffectedGlobalId()
Affected domain object GlobalId
-
getAffectedLocalId
public java.lang.Object getAffectedLocalId()
Affected domain object local Id (value under @Id property)
-
getAffectedObject
public java.util.Optional<java.lang.Object> getAffectedObject()
Affected domain object. Depending on concrete Change type, it could be a new Object, removed Object or a new version of a changed Object.
Optional - available only for freshly generated diff. Not available for Changes read from JaversRepository
-
getCommitMetadata
public java.util.Optional<CommitMetadata> getCommitMetadata()
Empty if change is calculated byJavers.compare(Object, Object)
-
toString
public java.lang.String toString()
Pretty print with default dates formatting- Overrides:
toStringin classjava.lang.Object
-
prettyPrint
public abstract java.lang.String prettyPrint(PrettyValuePrinter valuePrinter)
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
-