public class DistributableLockManager extends AbstractMembershipListener implements LockManager, org.jgroups.MessageListener
| Modifier and Type | Field and Description |
|---|---|
protected org.jgroups.blocks.RpcDispatcher |
dispatcher |
protected int |
timeout |
channelGLOBAL| Constructor and Description |
|---|
DistributableLockManager(DatabaseCluster<D> databaseCluster,
DistributableDatabaseClusterDecorator decorator)
Constructs a new DistributableLock.
|
| Modifier and Type | Method and Description |
|---|---|
byte[] |
getState() |
protected void |
memberJoined(org.jgroups.Address address) |
protected void |
memberLeft(org.jgroups.Address address) |
java.util.concurrent.locks.Lock |
readLock(java.lang.String object)
Read locks are local.
|
void |
receive(org.jgroups.Message message) |
void |
setState(byte[] arg0) |
void |
start()
Called upon database cluster start.
|
void |
stop()
Called when database cluster is stopped.
|
boolean |
vote(LockDecree decree)
Votes on the specified decree.
|
java.util.concurrent.locks.Lock |
writeLock(java.lang.String object)
Write locks are distributed.
|
block, getMembershipSize, isMembershipEmpty, suspect, viewAcceptedprotected org.jgroups.blocks.RpcDispatcher dispatcher
protected int timeout
public DistributableLockManager(DatabaseCluster<D> databaseCluster, DistributableDatabaseClusterDecorator decorator) throws java.lang.Exception
D - either java.sql.Driver or javax.sql.DatasourcedatabaseCluster - a database clusterdecorator - a decoratorjava.lang.Exceptionpublic void start() throws java.lang.Exception
Lifecyclestart in interface Lifecyclejava.lang.Exception - if this service fails to start.Lifecycle.start()public void stop()
Lifecyclestop in interface LifecycleLifecycle.stop()public java.util.concurrent.locks.Lock readLock(java.lang.String object)
readLock in interface LockManagerobject - an object to lockLockManager.readLock(java.lang.String)public java.util.concurrent.locks.Lock writeLock(java.lang.String object)
writeLock in interface LockManagerobject - an object to lockLockManager.writeLock(java.lang.String)public boolean vote(LockDecree decree)
decree - a lock decreeprotected void memberJoined(org.jgroups.Address address)
memberJoined in class AbstractMembershipListenerAbstractMembershipListener.memberJoined(org.jgroups.Address)protected void memberLeft(org.jgroups.Address address)
memberLeft in class AbstractMembershipListenerAbstractMembershipListener.memberLeft(org.jgroups.Address)public byte[] getState()
getState in interface org.jgroups.MessageListenerMessageListener.getState()public void receive(org.jgroups.Message message)
receive in interface org.jgroups.MessageListenerMessageListener.receive(org.jgroups.Message)public void setState(byte[] arg0)
setState in interface org.jgroups.MessageListenerMessageListener.setState(byte[])