org.hibernate.engine
Class VersionValue

java.lang.Object
  extended by org.hibernate.engine.VersionValue

public class VersionValue
extends Object

A strategy for determining if a version value is an version of a new transient instance or a previously persistent transient instance. The strategy is determined by the unsaved-value attribute in the mapping file.

Author:
Gavin King

Field Summary
static VersionValue NEGATIVE
          Assume the transient instance is newly instantiated if the version is negative, otherwise assume it is a detached instance.
static VersionValue NULL
          Assume the transient instance is newly instantiated if the version is null, otherwise assume it is a detached instance.
static VersionValue UNDEFINED
          Assume the transient instance is newly instantiated if the version is null, otherwise defer to the identifier unsaved-value.
 
Constructor Summary
protected VersionValue()
           
  VersionValue(Object value)
          Assume the transient instance is newly instantiated if its version is null or equal to value
 
Method Summary
 Object getDefaultValue(Object currentValue)
           
 Boolean isUnsaved(Object version)
          Does the given version belong to a new instance?
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

NULL

public static final VersionValue NULL
Assume the transient instance is newly instantiated if the version is null, otherwise assume it is a detached instance.


UNDEFINED

public static final VersionValue UNDEFINED
Assume the transient instance is newly instantiated if the version is null, otherwise defer to the identifier unsaved-value.


NEGATIVE

public static final VersionValue NEGATIVE
Assume the transient instance is newly instantiated if the version is negative, otherwise assume it is a detached instance.

Constructor Detail

VersionValue

protected VersionValue()

VersionValue

public VersionValue(Object value)
Assume the transient instance is newly instantiated if its version is null or equal to value

Parameters:
value - value to compare to
Method Detail

isUnsaved

public Boolean isUnsaved(Object version)
                  throws MappingException
Does the given version belong to a new instance?

Parameters:
version - version to check
Returns:
true is unsaved, false is saved, null is undefined
Throws:
MappingException

getDefaultValue

public Object getDefaultValue(Object currentValue)

toString

public String toString()
Overrides:
toString in class Object