org.hibernate.engine

Class VersionValue


public class VersionValue
extends java.lang.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

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()

Field Details

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.

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.

Constructor Details

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 Details

getDefaultValue

public Object getDefaultValue(Object currentValue)

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

toString

public String toString()