Class LifeCycleState


  • public abstract class LifeCycleState
    extends Object
    Base Class representing the life cycle state. Implemented for individual states.
    • Field Detail

      • P_NEW_DELETED

        public static final int P_NEW_DELETED
        Persistent-New-Deleted
        See Also:
        Constant Field Values
      • P_NONTRANS

        public static final int P_NONTRANS
        Persistent-NonTransactional
        See Also:
        Constant Field Values
      • P_NONTRANS_DIRTY

        public static final int P_NONTRANS_DIRTY
        Persistent-NonTransactionalDirty
        See Also:
        Constant Field Values
      • isDirty

        protected boolean isDirty
      • isNew

        protected boolean isNew
      • isDeleted

        protected boolean isDeleted
      • isTransactional

        protected boolean isTransactional
      • isPersistent

        protected boolean isPersistent
      • stateType

        protected int stateType
    • Constructor Detail

      • LifeCycleState

        public LifeCycleState()
    • Method Detail

      • stateType

        public final int stateType()
        Returns the type of the life cycle state
        Returns:
        the type of this life cycle state
      • changeState

        protected final LifeCycleState changeState​(DNStateManager sm,
                                                   int newStateType)
        Utility to change state to a new state.
        Parameters:
        sm - StateManager
        newStateType - The new state
        Returns:
        new LifeCycle state.
      • changeTransientState

        protected final LifeCycleState changeTransientState​(DNStateManager sm,
                                                            int newStateType)
        Utility to change state to a new state.
        Parameters:
        sm - StateManager
        newStateType - The new state
        Returns:
        new LifeCycle state.
      • transitionMakePersistent

        public LifeCycleState transitionMakePersistent​(DNStateManager sm)
        Method to transition to persistent state.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionDeletePersistent

        public LifeCycleState transitionDeletePersistent​(DNStateManager sm)
        Method to transition to delete persistent state.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionMakeTransactional

        public LifeCycleState transitionMakeTransactional​(DNStateManager sm,
                                                          boolean refreshFields)
        Method to transition to transactional state.
        Parameters:
        sm - StateManager.
        refreshFields - Whether to refresh loaded fields
        Returns:
        new LifeCycle state.
      • transitionMakeNontransactional

        public LifeCycleState transitionMakeNontransactional​(DNStateManager sm)
        Method to transition to nontransactional state.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionMakeTransient

        public LifeCycleState transitionMakeTransient​(DNStateManager sm,
                                                      boolean useFetchPlan,
                                                      boolean detachAllOnCommit)
        Method to transition to transient state.
        Parameters:
        sm - StateManager.
        useFetchPlan - to make transient the fields in the fetch plan
        detachAllOnCommit - Whether to detach on commit
        Returns:
        new LifeCycle state.
      • transitionBegin

        public LifeCycleState transitionBegin​(DNStateManager sm,
                                              Transaction tx)
        Method to transition to transaction begin state.
        Parameters:
        sm - StateManager.
        tx - Transaction.
        Returns:
        new LifeCycle state.
      • transitionCommit

        public LifeCycleState transitionCommit​(DNStateManager sm,
                                               Transaction tx)
        Method to transition to commit state.
        Parameters:
        sm - StateManager.
        tx - the Transaction been committed.
        Returns:
        new LifeCycle state.
      • transitionRollback

        public LifeCycleState transitionRollback​(DNStateManager sm,
                                                 Transaction tx)
        Method to transition to rollback state.
        Parameters:
        sm - StateManager.
        tx - Transaction.
        Returns:
        new LifeCycle state.
      • transitionRefresh

        public LifeCycleState transitionRefresh​(DNStateManager sm)
        Method to transition to refresh state.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionEvict

        public LifeCycleState transitionEvict​(DNStateManager sm)
        Method to transition to evict state.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionReadField

        public LifeCycleState transitionReadField​(DNStateManager sm,
                                                  boolean isLoaded)
        Method to transition to read-field state.
        Parameters:
        sm - StateManager.
        isLoaded - if the field was previously loaded
        Returns:
        new LifeCycle state.
      • transitionWriteField

        public LifeCycleState transitionWriteField​(DNStateManager sm)
        Method to transition to write-field state.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionRetrieve

        public LifeCycleState transitionRetrieve​(DNStateManager sm,
                                                 boolean fgOnly)
        Method to transition to retrieve state.
        Parameters:
        sm - StateManager.
        fgOnly - only retrieve the current fetch group fields
        Returns:
        new LifeCycle state.
      • transitionRetrieve

        public LifeCycleState transitionRetrieve​(DNStateManager sm,
                                                 FetchPlan fetchPlan)
        Method to transition to retrieve state.
        Parameters:
        sm - StateManager.
        fetchPlan - the fetch plan to load fields
        Returns:
        new LifeCycle state.
      • transitionDetach

        public LifeCycleState transitionDetach​(DNStateManager sm)
        Method to transition to detached-clean.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionAttach

        public LifeCycleState transitionAttach​(DNStateManager sm)
        Method to transition to persistent-clean.
        Parameters:
        sm - StateManager.
        Returns:
        new LifeCycle state.
      • transitionSerialize

        public LifeCycleState transitionSerialize​(DNStateManager sm)
        Method to transition when serialised.
        Parameters:
        sm - StateManager
        Returns:
        The new LifeCycle state
      • isDirty

        public final boolean isDirty()
        Return whether the object is dirty, ie has been changed (created, updated, deleted) in this Tx.
        Returns:
        Whether the object is dirty.
      • isNew

        public final boolean isNew()
        Return whether the object was newly created.
        Returns:
        Whether the object is new.
      • isDeleted

        public final boolean isDeleted()
        Return whether the object is deleted.
        Returns:
        Whether the object is deleted.
      • isTransactional

        public final boolean isTransactional()
        Return whether the object is transactional.
        Returns:
        Whether the object is transactional.
      • isPersistent

        public final boolean isPersistent()
        Return whether the object is persistent.
        Returns:
        Whether the object is persistent.
      • toString

        public abstract String toString()
        Method to return a string version of this object.
        Overrides:
        toString in class Object
        Returns:
        String version of the object.