JavaTM Platform, Enterprise Edition, v 5.0
javax.persistence
Enum LockModeType
java.lang.Object
java.lang.Enum<LockModeType>
javax.persistence.LockModeType
- All Implemented Interfaces:
- Serializable, Comparable<LockModeType>
public enum LockModeType - extends Enum<LockModeType>
Lock modes that can be specified by means of the
EntityManager.lock() method.
The semantics of requesting locks of type
LockModeType.READ and LockModeType.WRITE are the following.
If transaction T1 calls lock(entity, LockModeType.READ ) on a versioned object,
the entity manager must ensure that neither of the following
phenomena can occur:
- P1 (Dirty read): Transaction T1 modifies a row.
Another transaction T2 then reads that row and obtains
the modified value, before T1 has committed or rolled back.
Transaction T2 eventually commits successfully; it does not
matter whether T1 commits or rolls back and whether it does
so before or after T2 commits.
-
P2 (Non-repeatable read): Transaction T1 reads a row.
Another transaction T2 then modifies or deletes that row,
before T1 has committed. Both transactions eventually commit
successfully.
Lock modes must always prevent the phenomena P1 and P2.
In addition, calling lock(entity, LockModeType.WRITE) on
a versioned object, will also force an update (increment) to
the entity's version column.
The persistence implementation is not required to support
calling EntityManager.lock() on a
non-versioned object. When it cannot support a such lock call,
it must throw the PersistenceException .
- Since:
- Java Persistence 1.0
Enum Constant Summary |
READ
Read lock |
WRITE
Write lock |
Method Summary |
static LockModeType |
valueOf(String name)
Returns the enum constant of this type with the specified name. |
static LockModeType[] |
values()
Returns an array containing the constants of this enum type, in
the order they're declared. |
READ
public static final LockModeType READ
- Read lock
WRITE
public static final LockModeType WRITE
- Write lock
values
public static final LockModeType[] values()
- Returns an array containing the constants of this enum type, in
the order they're declared. This method may be used to iterate
over the constants as follows:
for(LockModeType c : LockModeType.values())
System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in
the order they're declared
valueOf
public static LockModeType valueOf(String name)
- Returns the enum constant of this type with the specified name.
The string must match exactly an identifier used to declare an
enum constant in this type. (Extraneous whitespace characters are
not permitted.)
- Parameters:
name - the name of the enum constant to be returned.
- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException - if this enum type has no constant
with the specified name
Copyright 2003 Sun Microsystems, Inc. All rights reserved
|