org.jgroups.protocols.pbcast
Class GmsImpl

java.lang.Object
  extended by org.jgroups.protocols.pbcast.GmsImpl
Direct Known Subclasses:
ClientGmsImpl, CoordGmsImpl, ParticipantGmsImpl

public abstract class GmsImpl
extends java.lang.Object


Field Summary
protected  GMS gms
           
protected  org.apache.commons.logging.Log log
           
 
Constructor Summary
protected GmsImpl()
           
protected GmsImpl(GMS gms)
           
 
Method Summary
 boolean handleDownEvent(Event evt)
           
 void handleExit()
           
abstract  void handleJoin(Address mbr)
           
abstract  void handleJoinResponse(JoinRsp join_rsp)
           
abstract  void handleLeave(Address mbr, boolean suspected)
           
abstract  void handleLeaveResponse()
           
 void handleMergeCancelled(ViewId merge_id)
           
 void handleMergeRequest(Address sender, ViewId merge_id)
           
 void handleMergeResponse(MergeData data, ViewId merge_id)
           
 void handleMergeView(MergeData data, ViewId merge_id)
           
abstract  void handleSuspect(Address mbr)
           
 boolean handleUpEvent(Event evt)
           
abstract  void handleViewChange(View new_view, Digest digest)
           
 void init()
           
protected  boolean iWouldBeCoordinator(java.util.Vector new_mbrs)
          Returns potential coordinator based on lexicographic ordering of member addresses.
abstract  void join(Address mbr)
           
abstract  void leave(Address mbr)
           
 void merge(java.util.Vector other_coords)
           
protected  void sendMergeRejectedResponse(Address sender, ViewId merge_id)
           
 void start()
           
 void stop()
           
abstract  void suspect(Address mbr)
           
abstract  void unsuspect(Address mbr)
           
protected  void wrongMethod(java.lang.String method_name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

gms

protected GMS gms

log

protected final org.apache.commons.logging.Log log
Constructor Detail

GmsImpl

protected GmsImpl()

GmsImpl

protected GmsImpl(GMS gms)
Method Detail

join

public abstract void join(Address mbr)

leave

public abstract void leave(Address mbr)

handleJoinResponse

public abstract void handleJoinResponse(JoinRsp join_rsp)

handleLeaveResponse

public abstract void handleLeaveResponse()

suspect

public abstract void suspect(Address mbr)

unsuspect

public abstract void unsuspect(Address mbr)

merge

public void merge(java.util.Vector other_coords)

handleMergeRequest

public void handleMergeRequest(Address sender,
                               ViewId merge_id)

handleMergeResponse

public void handleMergeResponse(MergeData data,
                                ViewId merge_id)

handleMergeView

public void handleMergeView(MergeData data,
                            ViewId merge_id)

handleMergeCancelled

public void handleMergeCancelled(ViewId merge_id)

handleJoin

public abstract void handleJoin(Address mbr)

handleLeave

public abstract void handleLeave(Address mbr,
                                 boolean suspected)

handleViewChange

public abstract void handleViewChange(View new_view,
                                      Digest digest)

handleSuspect

public abstract void handleSuspect(Address mbr)

handleExit

public void handleExit()

handleUpEvent

public boolean handleUpEvent(Event evt)

handleDownEvent

public boolean handleDownEvent(Event evt)

init

public void init()
          throws java.lang.Exception
Throws:
java.lang.Exception

start

public void start()
           throws java.lang.Exception
Throws:
java.lang.Exception

stop

public void stop()

sendMergeRejectedResponse

protected void sendMergeRejectedResponse(Address sender,
                                         ViewId merge_id)

wrongMethod

protected void wrongMethod(java.lang.String method_name)

iWouldBeCoordinator

protected boolean iWouldBeCoordinator(java.util.Vector new_mbrs)
Returns potential coordinator based on lexicographic ordering of member addresses. Another approach would be to keep track of the primary partition and return the first member if we are the primary partition.



Copyright ? 1998-2005 Bela Ban. All Rights Reserved.