org.hibernate.engine.spi
Class VersionValue

java.lang.Object
  extended by org.hibernate.engine.spi.VersionValue
All Implemented Interfaces:
UnsavedValueStrategy

public class VersionValue
extends Object
implements UnsavedValueStrategy

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.


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)
          Get a default value meant to indicate transience.
 Boolean isUnsaved(Object version)
          Make the transient/detached determination
 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
Description copied from interface: UnsavedValueStrategy
Make the transient/detached determination

Specified by:
isUnsaved in interface UnsavedValueStrategy
Parameters:
version - 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.
Throws:
MappingException

getDefaultValue

public Object getDefaultValue(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 String toString()
Overrides:
toString in class Object


Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.