Package org.hibernate.dialect.lock
Class PessimisticForceIncrementLockingStrategy
- java.lang.Object
-
- org.hibernate.dialect.lock.PessimisticForceIncrementLockingStrategy
-
- All Implemented Interfaces:
LockingStrategy
public class PessimisticForceIncrementLockingStrategy extends Object implements 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
-
-
Constructor Summary
Constructors Constructor Description PessimisticForceIncrementLockingStrategy(Lockable lockable, LockMode lockMode)
Construct locking strategy.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected LockMode
getLockMode()
Retrieve the specific lock mode defined.void
lock(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.
-
-
-
Method Detail
-
lock
public void lock(Object id, Object version, Object object, int timeout, EventSource session)
Description copied from interface:LockingStrategy
Acquire an appropriate type of lock on the underlying data that will endure until the end of the current transaction.- Specified by:
lock
in 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
protected LockMode getLockMode()
Retrieve the specific lock mode defined.- Returns:
- The specific lock mode.
-
-