| java.lang.Object org.apache.catalina.tribes.membership.Membership
Membership | public class Membership (Code) | | A membership implementation using simple multicast.
This is the representation of a multicast membership.
This class is responsible for maintaining a list of active cluster nodes in the cluster.
If a node fails to send out a heartbeat, the node will be dismissed.
author: Filip Hanik author: Peter Rossbach version: $Revision: 500684 $, $Date: 2007-01-28 00:27:18 +0100 (dim., 28 janv. 2007) $ |
Inner Class :protected static class MbrEntry | |
Method Summary | |
public synchronized MbrEntry | addMember(MemberImpl member) | public Object | clone() | public boolean | contains(Member mbr) | public synchronized MemberImpl[] | expire(long maxtime) Runs a refresh cycle and returns a list of members that has expired.
This also removes the members from the membership, in such a way that
getMembers() = getMembers() - expire()
Parameters: maxtime - - the max time a member can remain unannounced before it is considered dead. | public MemberImpl | getMember(Member mbr) | protected synchronized MbrEntry[] | getMemberEntries() | public MemberImpl[] | getMembers() Returning a list of all the members in the membership
We not need a copy: add and remove generate new arrays. | public boolean | hasMembers() | public synchronized boolean | memberAlive(MemberImpl member) Notify the membership that this member has announced itself.
Parameters: member - - the member that just pinged us - true if this member is new to the cluster, false otherwise. | public void | removeMember(MemberImpl member) Remove a member from this component. | public synchronized void | reset() Reset the membership and start over fresh. |
local | protected MemberImpl local(Code) | | The name of this membership, has to be the same as the name for the local
member
|
map | protected HashMap map(Code) | | A map of all the members in the cluster.
|
memberComparator | protected Comparator memberComparator(Code) | | sort members by alive time
|
members | protected MemberImpl[] members(Code) | | A list of all the members in the cluster.
|
Membership | public Membership(MemberImpl local, boolean includeLocal)(Code) | | Constructs a new membership
Parameters: name - - has to be the name of the local member. Used to filter the local member from the cluster membership |
addMember | public synchronized MbrEntry addMember(MemberImpl member)(Code) | | Add a member to this component and sort array with memberComparator
Parameters: member - The member to add |
expire | public synchronized MemberImpl[] expire(long maxtime)(Code) | | Runs a refresh cycle and returns a list of members that has expired.
This also removes the members from the membership, in such a way that
getMembers() = getMembers() - expire()
Parameters: maxtime - - the max time a member can remain unannounced before it is considered dead. the list of expired members |
getMemberEntries | protected synchronized MbrEntry[] getMemberEntries()(Code) | | get a copy from all member entries
|
getMembers | public MemberImpl[] getMembers()(Code) | | Returning a list of all the members in the membership
We not need a copy: add and remove generate new arrays.
|
hasMembers | public boolean hasMembers()(Code) | | Returning that service has members or not
|
memberAlive | public synchronized boolean memberAlive(MemberImpl member)(Code) | | Notify the membership that this member has announced itself.
Parameters: member - - the member that just pinged us - true if this member is new to the cluster, false otherwise. - false if this member is the local member or updated. |
removeMember | public void removeMember(MemberImpl member)(Code) | | Remove a member from this component.
Parameters: member - The member to remove |
reset | public synchronized void reset()(Code) | | Reset the membership and start over fresh.
Ie, delete all the members and wait for them to ping again and join this membership
|
|
|