org.hibernate
Interface Session.LockRequest

Enclosing interface:
Session

public static interface Session.LockRequest

Contains locking details (LockMode, Timeout and Scope).


Field Summary
static int PESSIMISTIC_NO_WAIT
           
static int PESSIMISTIC_WAIT_FOREVER
           
 
Method Summary
 LockMode getLockMode()
          Get the lock mode.
 boolean getScope()
          Check if locking is cascaded to owned collections and relationships.
 int getTimeOut()
          Get the timeout setting.
 void lock(Object object)
           
 void lock(String entityName, Object object)
           
 Session.LockRequest setLockMode(LockMode lockMode)
          Specify the LockMode to be used.
 Session.LockRequest setScope(boolean scope)
          Specify if LockMode should be cascaded to owned collections and relationships.
 Session.LockRequest setTimeOut(int timeout)
          Specify the pessimistic lock timeout (check if your dialect supports this option).
 

Field Detail

PESSIMISTIC_NO_WAIT

static final int PESSIMISTIC_NO_WAIT
See Also:
Constant Field Values

PESSIMISTIC_WAIT_FOREVER

static final int PESSIMISTIC_WAIT_FOREVER
See Also:
Constant Field Values
Method Detail

getLockMode

LockMode getLockMode()
Get the lock mode.

Returns:
the lock mode.

setLockMode

Session.LockRequest setLockMode(LockMode lockMode)
Specify the LockMode to be used. The default is LockMode.none.

Parameters:
lockMode - The lock mode to use for this request
Returns:
this LockRequest instance for operation chaining.

getTimeOut

int getTimeOut()
Get the timeout setting.

Returns:
timeout in milliseconds, -1 for indefinite wait and 0 for no wait.

setTimeOut

Session.LockRequest setTimeOut(int timeout)
Specify the pessimistic lock timeout (check if your dialect supports this option). The default pessimistic lock behavior is to wait forever for the lock.

Parameters:
timeout - is time in milliseconds to wait for lock. -1 means wait forever and 0 means no wait.
Returns:
this LockRequest instance for operation chaining.

getScope

boolean getScope()
Check if locking is cascaded to owned collections and relationships.

Returns:
true if locking will be extended to owned collections and relationships.

setScope

Session.LockRequest setScope(boolean scope)
Specify if LockMode should be cascaded to owned collections and relationships. The association must be mapped with cascade="lock" for scope=true to work.

Parameters:
scope - true to cascade locks; false to not.
Returns:
this, for method chaining

lock

void lock(String entityName,
          Object object)
          throws HibernateException
Throws:
HibernateException

lock

void lock(Object object)
          throws HibernateException
Throws:
HibernateException


Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.