Package org.hibernate.dialect.lock
Class PessimisticForceIncrementLockingStrategy
java.lang.Object
org.hibernate.dialect.lock.PessimisticForceIncrementLockingStrategy
- All Implemented Interfaces:
LockingStrategy
A pessimistic locking strategy where a lock is obtained by incrementing
the version immediately, obtaining an exclusive write lock by side effect.
This strategy is valid for LockMode.PESSIMISTIC_FORCE_INCREMENT.
- Since:
- 3.5
- Author:
- Scott Marlow
-
Constructor Summary
ConstructorsConstructorDescriptionPessimisticForceIncrementLockingStrategy(Lockable lockable, LockMode lockMode) Construct locking strategy. -
Method Summary
Modifier and TypeMethodDescriptionprotected LockModeRetrieve the specific lock mode defined.voidlock(Object id, Object version, Object object, int timeout, EventSource session) Acquire an appropriate type of lock on the underlying data that will endure until the end of the current transaction.
-
Constructor Details
-
PessimisticForceIncrementLockingStrategy
Construct locking strategy.- Parameters:
lockable- The metadata for the entity to be locked.lockMode- Indicates the type of lock to be acquired.
-
-
Method Details
-
lock
Description copied from interface:LockingStrategyAcquire an appropriate type of lock on the underlying data that will endure until the end of the current transaction.- Specified by:
lockin interfaceLockingStrategy- Parameters:
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 originated
-
getLockMode
Retrieve the specific lock mode defined.- Returns:
- The specific lock mode.
-