Class IdentifierValue

  • All Implemented Interfaces:
    UnsavedValueStrategy

    public class IdentifierValue
    extends java.lang.Object
    implements UnsavedValueStrategy
    A strategy for determining if an identifier value is an identifier of a new transient instance or a previously persistent transient instance. The strategy is determined by the unsaved-value attribute in the mapping file.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected IdentifierValue()  
        IdentifierValue​(java.io.Serializable value)
      Assume the transient instance is newly instantiated if its identifier is null or equal to value
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.io.Serializable getDefaultValue​(java.lang.Object currentValue)
      Get a default value meant to indicate transience.
      java.lang.Boolean isUnsaved​(java.lang.Object id)
      Does the given identifier belong to a new instance?
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • ANY

        public static final IdentifierValue ANY
        Always assume the transient instance is newly instantiated
      • NONE

        public static final IdentifierValue NONE
        Never assume the transient instance is newly instantiated
      • NULL

        public static final IdentifierValue NULL
        Assume the transient instance is newly instantiated if the identifier is null.
    • Constructor Detail

      • IdentifierValue

        protected IdentifierValue()
      • IdentifierValue

        public IdentifierValue​(java.io.Serializable value)
        Assume the transient instance is newly instantiated if its identifier is null or equal to value
    • Method Detail

      • isUnsaved

        public java.lang.Boolean isUnsaved​(java.lang.Object id)
        Does the given identifier belong to a new instance?
        Specified by:
        isUnsaved in interface UnsavedValueStrategy
        Parameters:
        id - The value to be tested
        Returns:
        true indicates the value corresponds to unsaved data (aka, transient state; false indicates the value does not corresponds to unsaved data (aka, detached state); null indicates that this strategy was not able to determine conclusively.
      • getDefaultValue

        public java.io.Serializable getDefaultValue​(java.lang.Object currentValue)
        Description copied from interface: UnsavedValueStrategy
        Get a default value meant to indicate transience.
        Specified by:
        getDefaultValue in interface UnsavedValueStrategy
        Parameters:
        currentValue - The current state value.
        Returns:
        The default transience value.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object