public class PessimisticWriteUpdateLockingStrategy extends Object implements LockingStrategy
A pessimistic locking strategy where the locks are obtained through update statements. <p/> This strategy is valid for LockMode.PESSIMISTIC_WRITE
This class is a clone of UpdateLockingStrategy.
Constructor and Description |
---|
PessimisticWriteUpdateLockingStrategy(Lockable lockable,
LockMode lockMode)
Construct a locking strategy based on SQL UPDATE statements.
|
Modifier and Type | Method and Description |
---|---|
protected String |
generateLockString() |
protected LockMode |
getLockMode() |
void |
lock(Serializable id,
Object version,
Object object,
int timeout,
SharedSessionContractImplementor session)
Acquire an appropriate type of lock on the underlying data that will
endure until the end of the current transaction.
|
public PessimisticWriteUpdateLockingStrategy(Lockable lockable, LockMode lockMode)
Construct a locking strategy based on SQL UPDATE statements.
lockable
- The metadata for the entity to be locked.lockMode
- Indicates the type of lock to be acquired. Note that read-locks are not valid for this strategy.public void lock(Serializable id, Object version, Object object, int timeout, SharedSessionContractImplementor session)
LockingStrategy
Acquire an appropriate type of lock on the underlying data that will endure until the end of the current transaction.
lock
in interface LockingStrategy
id
- The id of the row to be lockedversion
- The current version (or null if not versioned)object
- The object logically being locked (currently not used)timeout
- timeout in milliseconds, 0 = no wait, -1 = wait indefinitelysession
- The session from which the lock request originatedprotected String generateLockString()
protected LockMode getLockMode()
Copyright © 2001-2018 Red Hat, Inc. All Rights Reserved.