org.javagroups.blocks
Interface LockManager
- All Known Implementing Classes:
- DistributedLockManager
- public interface LockManager
LockManager
represents generic lock manager that allows
obtaining and releasing locks on objects.
- Author:
- Roman Rokytskyy (rrokytskyy@acm.org)
Method Summary |
void |
lock(java.lang.Object obj,
java.lang.Object owner,
int timeout)
Obtain lock on obj for specified owner . |
void |
unlock(java.lang.Object obj,
java.lang.Object owner)
Release lock on obj owned by specified owner . |
lock
public void lock(java.lang.Object obj,
java.lang.Object owner,
int timeout)
throws LockNotGrantedException,
java.lang.ClassCastException,
ChannelException
- Obtain lock on
obj
for specified owner
.
Implementation should try to obtain lock few times within the
specified timeout.
- Parameters:
obj
- obj to lock, usually not full object but object's ID.owner
- object identifying entity that will own the lock.timeout
- maximum time that we grant to obtain a lock.- Throws:
LockNotGrantedException
- if lock is not granted within
specified period.java.lang.ClassCastException
- if obj
and/or
owner
is not of type that implementation expects to get
(for example, when distributed lock manager obtains non-serializable
obj
or owner
).ChannelException
- if something bad happened to communication
channel.
unlock
public void unlock(java.lang.Object obj,
java.lang.Object owner)
throws LockNotReleasedException,
java.lang.ClassCastException,
ChannelException
- Release lock on
obj
owned by specified owner
.
- Parameters:
obj
- obj to lock, usually not full object but object's ID.owner
- object identifying entity that will own the lock.- Throws:
LockOwnerMismatchException
- if lock is owned by another object.java.lang.ClassCastException
- if obj
and/or
owner
is not of type that implementation expects to get
(for example, when distributed lock manager obtains non-serializable
obj
or owner
).ChannelException
- if something bad happened to communication
channel.
Copyright © 2001,2002 www.javagroups.com . All Rights Reserved.