|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface NodeLock
Interface for a lock for nodes.
Nested Class Summary | |
---|---|
static class |
NodeLock.LockType
|
Method Summary | |
---|---|
boolean |
acquire(java.lang.Object caller,
long timeout,
NodeLock.LockType lock_type)
|
java.util.Set<NodeLock> |
acquireAll(java.lang.Object caller,
long timeout,
NodeLock.LockType lock_type)
Recursively acquire locks for this node and all subnodes. |
boolean |
acquireReadLock(java.lang.Object caller,
long timeout)
Acquires a read lock with a timeout period of timeout milliseconds. |
boolean |
acquireWriteLock(java.lang.Object caller,
long timeout)
Acquires a write lock with a timeout of timeout milliseconds. |
java.util.Set |
getReaderOwners()
Returns a copy of the reader lock owner in List. |
java.lang.Object |
getWriterOwner()
Returns the writer lock owner object. |
boolean |
isLocked()
Check if there is a read or write lock |
boolean |
isOwner(java.lang.Object o)
Returns true if the object is the lock owner. |
boolean |
isReadLocked()
Check if there is a read lock. |
boolean |
isWriteLocked()
Check if there is a write lock. |
void |
printLockInfo(java.lang.StringBuffer sb,
int indent)
|
void |
release(java.lang.Object caller)
Releases the lock held by the owner. |
void |
releaseAll()
Releases all locks associated with this instance. |
void |
releaseAll(java.lang.Object owner)
Releases all locks with this owner. |
Method Detail |
---|
java.util.Set getReaderOwners()
java.lang.Object getWriterOwner()
boolean acquireWriteLock(java.lang.Object caller, long timeout) throws LockingException, TimeoutException, java.lang.InterruptedException
timeout
milliseconds.
Note that if the current owner owns a read lock, it will be upgraded
automatically. However, if upgrade fails, i.e., timeout, the read lock will
be released automatically.
caller
- Can't be null.timeout
-
LockingException
TimeoutException
java.lang.InterruptedException
boolean acquireReadLock(java.lang.Object caller, long timeout) throws LockingException, TimeoutException, java.lang.InterruptedException
timeout
milliseconds.
caller
- Can't be null.timeout
-
LockingException
TimeoutException
java.lang.InterruptedException
void release(java.lang.Object caller)
caller
- Can't be null.void releaseAll()
void releaseAll(java.lang.Object owner)
boolean isReadLocked()
boolean isWriteLocked()
boolean isLocked()
boolean isOwner(java.lang.Object o)
boolean acquire(java.lang.Object caller, long timeout, NodeLock.LockType lock_type) throws LockingException, TimeoutException, java.lang.InterruptedException
LockingException
TimeoutException
java.lang.InterruptedException
java.util.Set<NodeLock> acquireAll(java.lang.Object caller, long timeout, NodeLock.LockType lock_type) throws LockingException, TimeoutException, java.lang.InterruptedException
caller
- lock ownertimeout
- time to waitlock_type
- type of lock
LockingException
TimeoutException
java.lang.InterruptedException
void printLockInfo(java.lang.StringBuffer sb, int indent)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |