public abstract class AbstractQuorumClient<S extends Remote> extends Object implements QuorumClient<S>
QuorumClients.| Modifier and Type | Field and Description | 
|---|---|
protected static org.apache.log4j.Logger | 
log  | 
| Modifier | Constructor and Description | 
|---|---|
protected  | 
AbstractQuorumClient(String logicalServiceZPath)  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
disconnected()
The client has become disconnected from the quorum (for zookeeper this is
 only generated if the session has expired rather than if there is a
 transient disconnect that can be cured). 
 | 
S | 
getLeader(long token)
Return the remote interface used to perform HA operations on the quorum
 leader. 
 | 
String | 
getLogicalServiceZPath()
The fully qualified identifier of the logical service whose quorum state
 will be monitored (for zookeeper, this is the logicalServiceZPath). 
 | 
Quorum<?,?> | 
getQuorum()
The quorum that is being monitored. 
 | 
abstract S | 
getService(UUID serviceId)
Return the remote interface used to perform HA operations on a member of
 quorum. 
 | 
void | 
notify(QuorumEvent e)
Notify the client of a quorum event. 
 | 
void | 
start(Quorum<?,?> quorum)
Life cycle message sent when the client will begin to receive messages
 from the  
Quorum. | 
void | 
terminate()
Life cycle message send when the client will no longer receive messages
 from the  
Quorum. | 
protected AbstractQuorumClient(String logicalServiceZPath)
logicalServiceZPath - the fully qualified logical service identifier (for zookeeper,
            this is the logicalServiceZPath).public final String getLogicalServiceZPath()
QuorumClient
 Note: The method was renamed from getLogicalServiceId() to
 QuorumClient.getLogicalServiceZPath() to avoid confusion with the zookeeper
 integration which has both a logicalServiceId (just the last component of
 the zpath) and a logicalServiceZPath. The Quorum and
 QuorumClient interfaces only understand a single logical service
 identifier - this is what corresponds to the
  for the zookeeper integration.
getLogicalServiceZPath in interface QuorumClient<S extends Remote>QuorumMember.getServiceId()public Quorum<?,?> getQuorum()
getQuorum in interface QuorumClient<S extends Remote>QuorumClient.start(Quorum)public void start(Quorum<?,?> quorum)
QuorumClientQuorum. At a minimum, the client should save a reference
 to the Quorum.start in interface QuorumClient<S extends Remote>quorum - The quorum.AbstractQuorum.start(QuorumClient)public void terminate()
QuorumClientQuorum.terminate in interface QuorumClient<S extends Remote>AbstractQuorum.terminate()public void disconnected()
The default implementation is a NOP.
disconnected in interface QuorumClient<S extends Remote>public S getLeader(long token)
QuorumClientgetLeader in interface QuorumClient<S extends Remote>token - The quorum token for which the request was made.public abstract S getService(UUID serviceId)
QuorumClientgetService in interface QuorumClient<S extends Remote>getService in interface ServiceLookup<S extends Remote>serviceId - The UUID associated with the service.public void notify(QuorumEvent e)
QuorumListener
 The listener MUST NOT take any event that could block. In particular, it
 MUST NOT wait on another thread that will access the Quorum as
 that will cause a deadlock around the internal lock maintained by the
 Quorum.
notify in interface QuorumListenerCopyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.