Class PessimisticReadUpdateLockingStrategy

java.lang.Object
org.hibernate.dialect.lock.PessimisticReadUpdateLockingStrategy
All Implemented Interfaces:
LockingStrategy

public class PessimisticReadUpdateLockingStrategy extends Object implements LockingStrategy
A pessimistic locking strategy where a lock is obtained via an update statement.

This strategy is valid for LockMode.PESSIMISTIC_READ.

This class is a clone of UpdateLockingStrategy.

Since:
3.5
  • Constructor Details

    • PessimisticReadUpdateLockingStrategy

      public PessimisticReadUpdateLockingStrategy(Lockable lockable, LockMode lockMode)
      Construct a locking strategy based on SQL UPDATE statements.
      Parameters:
      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.
  • Method Details

    • 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 interface LockingStrategy
      Parameters:
      id - The id of the row to be locked
      version - 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 indefinitely
      session - The session from which the lock request originated
    • generateLockString

      protected String generateLockString()
    • getLockMode

      protected LockMode getLockMode()