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.Serializable
Change 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 protected
Change(GlobalId affectedCdoId, java.util.Optional<java.lang.Object> affectedCdo)
protected
Change(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 boolean
equals(java.lang.Object obj)
GlobalId
getAffectedGlobalId()
Affected domain object GlobalIdjava.lang.Object
getAffectedLocalId()
Affected domain object local Id (value under @Id property)java.util.Optional<java.lang.Object>
getAffectedObject()
Affected domain object (Cdo).java.util.Optional<CommitMetadata>
getCommitMetadata()
Empty if change is calculated byJavers.compare(Object, Object)
int
hashCode()
abstract java.lang.String
prettyPrint(PrettyValuePrinter valuePrinter)
java.lang.String
toString()
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 (Cdo). Depending on concrete Change type, it could be new Object, removed Object or new version of 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:
toString
in classjava.lang.Object
-
prettyPrint
public abstract java.lang.String prettyPrint(PrettyValuePrinter valuePrinter)
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-