Package org.apache.catalina.tribes
Interface MembershipService
-
- All Known Implementing Classes:
McastService
public interface MembershipServiceMembershipService Interface
TheMembershipServiceinterface is the membership component at the bottom layer, the IO layer (for layers see the javadoc for theChannelinterface).
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidbroadcast(ChannelMessage message)Broadcasts a message to all members.MemberfindMemberByName(String name)Get a member.ChannelgetChannel()Return the channel that is related to this MembershipServiceMembergetLocalMember(boolean incAliveTime)Get the local member.MembergetMember(Member mbr)Retrieve the specified member from the membership.Member[]getMembers()String[]getMembersByName()PropertiesgetProperties()booleanhasMembers()voidremoveMembershipListener()Removes the membership listener.voidsetChannel(Channel channel)Set the channel that is related to this MembershipServicevoidsetDomain(byte[] domain)voidsetLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort)Sets the local member properties for broadcasting.voidsetMembershipListener(MembershipListener listener)Sets the membership listener, only one listener can be added.voidsetPayload(byte[] payload)Set a payload to be broadcasted with each membership broadcast.voidsetProperties(Properties properties)Sets the properties for the membership service.voidstart()Starts the membership service.voidstart(int level)Starts the membership service.voidstop(int level)Starts the membership service.
-
-
-
Field Detail
-
MBR_RX
static final int MBR_RX
- See Also:
- Constant Field Values
-
MBR_TX
static final int MBR_TX
- See Also:
- Constant Field Values
-
-
Method Detail
-
setProperties
void setProperties(Properties properties)
Sets the properties for the membership service. This must be called before thestart()method is called. The properties are implementation specific.- Parameters:
properties- - to be used to configure the membership service.
-
getProperties
Properties getProperties()
- Returns:
- the properties for the configuration used.
-
start
void start() throws ExceptionStarts the membership service. If a membership listeners is added the listener will start to receive membership events. Performs a start level 1 and 2- Throws:
Exception- if the service fails to start.
-
start
void start(int level) throws ExceptionStarts the membership service. If a membership listeners is added the listener will start to receive membership events.- Parameters:
level- - level MBR_RX starts listening for members, level MBR_TX starts broad casting the server- Throws:
Exception- if the service fails to start.IllegalArgumentException- if the level is incorrect.
-
stop
void stop(int level)
Starts the membership service. If a membership listeners is added the listener will start to receive membership events.- Parameters:
level- - level MBR_RX stops listening for members, level MBR_TX stops broad casting the server- Throws:
IllegalArgumentException- if the level is incorrect.
-
hasMembers
boolean hasMembers()
- Returns:
- true if the the group contains members
-
getMember
Member getMember(Member mbr)
Retrieve the specified member from the membership.- Parameters:
mbr- The member to retrieve- Returns:
- the member
-
getMembers
Member[] getMembers()
- Returns:
- a list of all the members in the cluster.
-
getLocalMember
Member getLocalMember(boolean incAliveTime)
Get the local member.- Parameters:
incAliveTime-trueto set the alive time on the local member- Returns:
- the member object that defines this member
-
getMembersByName
String[] getMembersByName()
- Returns:
- all members by name
-
findMemberByName
Member findMemberByName(String name)
Get a member.- Parameters:
name- The member name- Returns:
- the member
-
setLocalMemberProperties
void setLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort)
Sets the local member properties for broadcasting.- Parameters:
listenHost- Listen to hostlistenPort- Listen to portsecurePort- Use a secure portudpPort- Use UDP
-
setMembershipListener
void setMembershipListener(MembershipListener listener)
Sets the membership listener, only one listener can be added. If you call this method twice, the last listener will be used.- Parameters:
listener- The listener
-
removeMembershipListener
void removeMembershipListener()
Removes the membership listener.
-
setPayload
void setPayload(byte[] payload)
Set a payload to be broadcasted with each membership broadcast.- Parameters:
payload- byte[]
-
setDomain
void setDomain(byte[] domain)
-
broadcast
void broadcast(ChannelMessage message) throws ChannelException
Broadcasts a message to all members.- Parameters:
message- The message to broadcast- Throws:
ChannelException- Message broadcast failed
-
getChannel
Channel getChannel()
Return the channel that is related to this MembershipService- Returns:
- Channel
-
setChannel
void setChannel(Channel channel)
Set the channel that is related to this MembershipService- Parameters:
channel- The channel
-
-