Class ObjectNode<T extends Cdo>

java.lang.Object
org.javers.core.graph.ObjectNode<T>
Direct Known Subclasses:
FakeNode, LiveNode

public abstract class ObjectNode<T extends Cdo> extends Object
Node in client's domain object graph. Reflects one Cdo or CdoSnapshot.

Cdo could be an EntityType or a ValueObjectType

Implementation should delegate equals() and hashCode() to Cdo

  • Constructor Details

    • ObjectNode

      public ObjectNode(T cdo)
  • Method Details

    • wrappedCdo

      public Optional<Object> wrappedCdo()
      Returns:
      returns Optional.empty() for snapshots
    • getGlobalId

      public GlobalId getGlobalId()
      shortcut to Cdo.getGlobalId()
    • getReference

      public abstract GlobalId getReference(Property property)
      returns null if property is not ManagedType
    • getReferences

      public abstract List<GlobalId> getReferences(JaversProperty property)
      returns null if property is not Collection of ManagedType
    • getDehydratedPropertyValue

      protected abstract Object getDehydratedPropertyValue(String propertyName)
    • getDehydratedPropertyValue

      public abstract Object getDehydratedPropertyValue(JaversProperty property)
    • getPropertyValue

      public Object getPropertyValue(Property property)
    • isNull

      public boolean isNull(Property property)
    • getManagedType

      public ManagedType getManagedType()
    • getCdo

      public T getCdo()
    • cdoHashCode

      public int cdoHashCode()
    • isEdge

      public abstract boolean isEdge()