org.jgroups.protocols.pbcast
Class ParticipantGmsImpl

java.lang.Object
  extended by org.jgroups.protocols.pbcast.GmsImpl
      extended by org.jgroups.protocols.pbcast.ParticipantGmsImpl

public class ParticipantGmsImpl
extends GmsImpl

Version:
$Id: ParticipantGmsImpl.java,v 1.29.4.1 2009/04/07 09:53:56 belaban Exp $
Author:
Bela Ban

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jgroups.protocols.pbcast.GmsImpl
GmsImpl.Request
 
Field Summary
 
Fields inherited from class org.jgroups.protocols.pbcast.GmsImpl
gms, log
 
Constructor Summary
ParticipantGmsImpl(GMS g)
           
 
Method Summary
 void handleJoinResponse(JoinRsp join_rsp)
          In case we get a different JOIN_RSP from a previous JOIN_REQ sent by us (as a client), we simply apply the new view if it is greater than ours
 void handleLeaveResponse()
           
 void handleMembershipChange(java.util.Collection<GmsImpl.Request> requests)
           
 void handleMergeRequest(Address sender, ViewId merge_id)
           
 void handleViewChange(View new_view, Digest digest)
          If we are leaving, we have to wait for the view change (last msg in the current view) that excludes us before we can leave.
 void init()
           
 void join(Address mbr)
           
 void joinWithStateTransfer(Address mbr)
           
 void leave(Address mbr)
          Loop: determine coord.
 void suspect(Address mbr)
           
 void unsuspect(Address mbr)
          Removes previously suspected member from list of currently suspected members
 
Methods inherited from class org.jgroups.protocols.pbcast.GmsImpl
handleDigestResponse, handleExit, handleMergeCancelled, handleMergeResponse, handleMergeView, handleUpEvent, iWouldBeCoordinator, merge, sendMergeRejectedResponse, start, stop, wrongMethod
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ParticipantGmsImpl

public ParticipantGmsImpl(GMS g)
Method Detail

init

public void init()
          throws java.lang.Exception
Overrides:
init in class GmsImpl
Throws:
java.lang.Exception

join

public void join(Address mbr)
Specified by:
join in class GmsImpl

joinWithStateTransfer

public void joinWithStateTransfer(Address mbr)
Specified by:
joinWithStateTransfer in class GmsImpl

leave

public void leave(Address mbr)
Loop: determine coord. If coord is me --> handleLeave(). Else send handleLeave() to coord until success

Specified by:
leave in class GmsImpl

handleJoinResponse

public void handleJoinResponse(JoinRsp join_rsp)
In case we get a different JOIN_RSP from a previous JOIN_REQ sent by us (as a client), we simply apply the new view if it is greater than ours

Specified by:
handleJoinResponse in class GmsImpl
Parameters:
join_rsp -

handleLeaveResponse

public void handleLeaveResponse()
Specified by:
handleLeaveResponse in class GmsImpl

suspect

public void suspect(Address mbr)
Specified by:
suspect in class GmsImpl

unsuspect

public void unsuspect(Address mbr)
Removes previously suspected member from list of currently suspected members

Specified by:
unsuspect in class GmsImpl

handleMembershipChange

public void handleMembershipChange(java.util.Collection<GmsImpl.Request> requests)
Specified by:
handleMembershipChange in class GmsImpl

handleViewChange

public void handleViewChange(View new_view,
                             Digest digest)
If we are leaving, we have to wait for the view change (last msg in the current view) that excludes us before we can leave.

Specified by:
handleViewChange in class GmsImpl
Parameters:
new_view - The view to be installed
digest - If view is a MergeView, digest contains the seqno digest of all members and has to be set by GMS

handleMergeRequest

public void handleMergeRequest(Address sender,
                               ViewId merge_id)
Overrides:
handleMergeRequest in class GmsImpl


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