## org.jgroups.protocols.pbcast
Class ServerGmsImpl

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

Direct Known Subclasses:
  CoordGmsImpl, ParticipantGmsImpl

    public abstract class ServerGmsImpl

extends GmsImpl

Common super class for CoordGmsImpl and ParticipantGmsImpl

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
`protected` `ServerGmsImpl(GMS gms)`

Method Summary
`void` `handleDigestResponse(Address sender, Digest digest)`
`void` `handleMergeRequest(Address sender, MergeId merge_id, java.util.Collection<? extends Address> mbrs)` Get the view and digest and send back both (MergeData) in the form of a MERGE_RSP to the sender.
`void` `handleMergeView(MergeData data, MergeId merge_id)` If merge_id is not equal to this.merge_id then discard.

Methods inherited from class org.jgroups.protocols.pbcast.GmsImpl
`handleJoinResponse, handleLeaveResponse, handleMembershipChange, handleMergeCancelled, handleMergeResponse, handleViewChange, init, iWouldBeCoordinator, join, joinWithStateTransfer, leave, merge, sendMergeRejectedResponse, start, stop, suspect, unsuspect, wrongMethod`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ServerGmsImpl

    protected ServerGmsImpl(GMS gms)

Method Detail

### handleMergeRequest

    public void handleMergeRequest(Address sender,
                                   MergeId merge_id,
                                   java.util.Collection<? extends Address> mbrs)

  Get the view and digest and send back both (MergeData) in the form of a MERGE_RSP to the sender. If a merge is already in progress, send back a MergeData with the merge_rejected field set to true.

  Overrides:
    `handleMergeRequest` in class `GmsImpl`
  Parameters:
    `sender` - The address of the merge leader
    `merge_id` - The merge ID
    `mbrs` - The set of members from which we expect responses

### handleMergeView

    public void handleMergeView(MergeData data,
                                MergeId merge_id)

  If merge_id is not equal to this.merge_id then discard. Else cast the view/digest to all members of this group.

  Overrides:
    `handleMergeView` in class `GmsImpl`

### handleDigestResponse

    public void handleDigestResponse(Address sender,
                                     Digest digest)

  Overrides:
    `handleDigestResponse` in class `GmsImpl`

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