public class

OptimisticLockingStrategy

extends Object
implements LockingStrategy
java.lang.Object
   ↳ org.hibernate.dialect.lock.OptimisticLockingStrategy

Class Overview

An optimistic locking strategy that verifies that the version hasn't changed (prior to transaction commit).

This strategy is valid for LockMode.OPTIMISTIC

Summary

Public Constructors
OptimisticLockingStrategy(Lockable lockable, LockMode lockMode)
Construct locking strategy.
Public Methods
void lock(Serializable id, Object version, Object object, int timeout, SessionImplementor session)
Acquire an appropriate type of lock on the underlying data that will endure until the end of the current transaction.
Protected Methods
LockMode getLockMode()
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.hibernate.dialect.lock.LockingStrategy

Public Constructors

public OptimisticLockingStrategy (Lockable lockable, LockMode lockMode)

Construct locking strategy.

Parameters
lockable The metadata for the entity to be locked.
lockMode Indictates the type of lock to be acquired.

Public Methods

public void lock (Serializable id, Object version, Object object, int timeout, SessionImplementor session)

Acquire an appropriate type of lock on the underlying data that will endure until the end of the current transaction.

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

Protected Methods

protected LockMode getLockMode ()