## org.jgroups.protocols.pbcast
Class ParticipantGmsImpl

    java.lang.Object
      org.jgroups.protocols.pbcast.GmsImpl
          org.jgroups.protocols.pbcast.ServerGmsImpl
              org.jgroups.protocols.pbcast.ParticipantGmsImpl

    public class ParticipantGmsImpl

extends ServerGmsImpl

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, merger`

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` `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, boolean useFlushIfPresent)`
`void` `joinWithStateTransfer(Address mbr, boolean useFlushIfPresent)`
`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.ServerGmsImpl
`handleDigestResponse, handleMergeRequest, handleMergeView`

Methods inherited from class org.jgroups.protocols.pbcast.GmsImpl
`handleMergeCancelled, handleMergeResponse, 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,
                     boolean useFlushIfPresent)

  Specified by:
    `join` in class `GmsImpl`

### joinWithStateTransfer

    public void joinWithStateTransfer(Address mbr,
                                      boolean useFlushIfPresent)

  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

  Overrides:
    `handleJoinResponse` in class `GmsImpl`
  Parameters:
    `join_rsp` -

### handleLeaveResponse

    public void handleLeaveResponse()

  Overrides:
    `handleLeaveResponse` in class `GmsImpl`

### suspect

    public void suspect(Address mbr)

  Overrides:
    `suspect` in class `GmsImpl`

### unsuspect

    public void unsuspect(Address mbr)

  Removes previously suspected member from list of currently suspected members

  Overrides:
    `unsuspect` in class `GmsImpl`

### handleMembershipChange

    public void handleMembershipChange(java.util.Collection<GmsImpl.Request> requests)

  Overrides:
    `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.

  Overrides:
    `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

Copyright © 1998-2009 Bela Ban / Red Hat. All Rights Reserved.