Class McastService
java.lang.Object
org.apache.catalina.tribes.membership.MembershipServiceBase
org.apache.catalina.tribes.membership.McastService
- All Implemented Interfaces:
- McastServiceMBean,- MembershipListener,- MembershipService,- MessageListener
public class McastService
extends MembershipServiceBase
implements MessageListener, McastServiceMBean
A membership implementation using simple multicast.
 This is the representation of a multicast membership service.
 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.
- 
Field SummaryFieldsModifier and TypeFieldDescriptionprotected byte[]protected McastServiceImplA handle to the actual low level implementationprotected MemberImplThe local memberprotected MessageListenerA message listener delegate for broadcastsprotected byte[]protected static final StringManagerThe string manager for this package.Fields inherited from class org.apache.catalina.tribes.membership.MembershipServiceBasechannel, listener, propertiesFields inherited from interface org.apache.catalina.tribes.MembershipServiceMBR_RX, MBR_TX
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionbooleanaccept(ChannelMessage msg) voidbroadcast(ChannelMessage message) Broadcasts a message to all members.getBind()byte[]longlongbooleangetLocalMember(boolean alive) Get the local member.Get the MembershipProviderbyte[]intgetPort()intbooleanlongintintgetTtl()protected voidhasProperty(Properties properties, String name) Check if a required property is available.static voidSimple test programvoidReceive a message from the IO components in the Channel stackvoidvoidsetAddress(String addr) voidprotected voidsetDefaults(Properties properties) voidsetDomain(byte[] domain) voidvoidsetDropTime(long time) voidsetFrequency(long time) voidsetLocalLoopbackDisabled(boolean localLoopbackDisabled) voidsetLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort) Sets the local member properties for broadcasting.voidsetMcastBindAddress(String bindaddr) voidsetMcastDropTime(long time) voidsetMessageListener(MessageListener listener) voidsetPayload(byte[] payload) Set a payload to be broadcasted with each membership broadcast.voidsetPort(int port) voidsetProperties(Properties properties) Sets the properties for the membership service.voidsetRecoveryCounter(int recoveryCounter) voidsetRecoveryEnabled(boolean recoveryEnabled) voidsetRecoverySleepTime(long recoverySleepTime) voidsetSoTimeout(int mcastSoTimeout) voidsetTtl(int mcastTTL) voidstart(int level) Starts the membership service.voidstop(int svc) Stop broadcasting and listening to membership pingsMethods inherited from class org.apache.catalina.tribes.membership.MembershipServiceBasefindMemberByName, getChannel, getMember, getMembers, getMembersByName, getProperties, hasMembers, memberAdded, memberDisappeared, removeMembershipListener, setChannel, setMembershipListener, startMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.catalina.tribes.membership.McastServiceMBeanfindMemberByName, getMembersByName, getProperties, hasMembers
- 
Field Details- 
smThe string manager for this package.
- 
implA handle to the actual low level implementation
- 
msglistenerA message listener delegate for broadcasts
- 
localMemberThe local member
- 
payloadprotected byte[] payload
- 
domainprotected byte[] domain
 
- 
- 
Constructor Details- 
McastServicepublic McastService()Create a membership service.
 
- 
- 
Method Details- 
setPropertiesSets the properties for the membership service.- Specified by:
- setPropertiesin interface- MembershipService
- Overrides:
- setPropertiesin class- MembershipServiceBase
- Parameters:
- properties-
 All are required
 1. mcastPort - the port to listen to
 2. mcastAddress - the mcast group address
 4. bindAddress - the bind address if any - only one that can be null
 5. memberDropTime - the time a member is gone before it is considered gone.
 6. mcastFrequency - the frequency of sending messages
 7. tcpListenPort - the port this member listens to
 8. tcpListenHost - the bind address of this member
- Throws:
- IllegalArgumentException- if a property is missing.
 
- 
getLocalMemberName- Specified by:
- getLocalMemberNamein interface- McastServiceMBean
- Returns:
- the local member name
 
- 
getLocalMemberDescription copied from interface:MembershipServiceGet the local member.- Specified by:
- getLocalMemberin interface- MembershipService
- Parameters:
- alive-- trueto set the alive time on the local member
- Returns:
- the member object that defines this member
 
- 
setLocalMemberPropertiespublic void setLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort) Description copied from interface:MembershipServiceSets the local member properties for broadcasting.- Specified by:
- setLocalMemberPropertiesin interface- MembershipService
- Parameters:
- listenHost- Listen to host
- listenPort- Listen to port
- securePort- Use a secure port
- udpPort- Use UDP
 
- 
setAddress
- 
getAddress- Specified by:
- getAddressin interface- McastServiceMBean
 
- 
setMcastBindAddress
- 
setBind
- 
getBind- Specified by:
- getBindin interface- McastServiceMBean
 
- 
setPortpublic void setPort(int port) 
- 
setRecoveryCounterpublic void setRecoveryCounter(int recoveryCounter) 
- 
getRecoveryCounterpublic int getRecoveryCounter()- Specified by:
- getRecoveryCounterin interface- McastServiceMBean
 
- 
setRecoveryEnabledpublic void setRecoveryEnabled(boolean recoveryEnabled) 
- 
getRecoveryEnabledpublic boolean getRecoveryEnabled()- Specified by:
- getRecoveryEnabledin interface- McastServiceMBean
 
- 
setRecoverySleepTimepublic void setRecoverySleepTime(long recoverySleepTime) 
- 
getRecoverySleepTimepublic long getRecoverySleepTime()- Specified by:
- getRecoverySleepTimein interface- McastServiceMBean
 
- 
setLocalLoopbackDisabledpublic void setLocalLoopbackDisabled(boolean localLoopbackDisabled) 
- 
getLocalLoopbackDisabledpublic boolean getLocalLoopbackDisabled()- Specified by:
- getLocalLoopbackDisabledin interface- McastServiceMBean
 
- 
getPortpublic int getPort()- Specified by:
- getPortin interface- McastServiceMBean
 
- 
setFrequencypublic void setFrequency(long time) 
- 
getFrequencypublic long getFrequency()- Specified by:
- getFrequencyin interface- McastServiceMBean
 
- 
setMcastDropTimepublic void setMcastDropTime(long time) 
- 
setDropTimepublic void setDropTime(long time) 
- 
getDropTimepublic long getDropTime()- Specified by:
- getDropTimein interface- McastServiceMBean
 
- 
hasPropertyCheck if a required property is available.- Parameters:
- properties- The set of properties
- name- The property to check for
 
- 
startDescription copied from interface:MembershipServiceStarts the membership service. If a membership listeners is added the listener will start to receive membership events.- Specified by:
- startin interface- MembershipService
- 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.
 
- 
stoppublic void stop(int svc) Stop broadcasting and listening to membership pings- Specified by:
- stopin interface- MembershipService
- Parameters:
- svc- - level MBR_RX stops listening for members, level MBR_TX stops broad casting the server
 
- 
setMessageListener
- 
removeMessageListenerpublic void removeMessageListener()
- 
messageReceivedDescription copied from interface:MessageListenerReceive a message from the IO components in the Channel stack- Specified by:
- messageReceivedin interface- MessageListener
- Parameters:
- msg- ChannelMessage
 
- 
accept- Specified by:
- acceptin interface- MessageListener
 
- 
broadcastDescription copied from interface:MembershipServiceBroadcasts a message to all members.- Specified by:
- broadcastin interface- MembershipService
- Overrides:
- broadcastin class- MembershipServiceBase
- Parameters:
- message- The message to broadcast
- Throws:
- ChannelException- Message broadcast failed
 
- 
getSoTimeoutpublic int getSoTimeout()- Specified by:
- getSoTimeoutin interface- McastServiceMBean
 
- 
setSoTimeoutpublic void setSoTimeout(int mcastSoTimeout) 
- 
getTtlpublic int getTtl()- Specified by:
- getTtlin interface- McastServiceMBean
 
- 
getPayloadpublic byte[] getPayload()
- 
getDomainpublic byte[] getDomain()- Specified by:
- getDomainin interface- McastServiceMBean
 
- 
setTtlpublic void setTtl(int mcastTTL) 
- 
setPayloadpublic void setPayload(byte[] payload) Description copied from interface:MembershipServiceSet a payload to be broadcasted with each membership broadcast.- Specified by:
- setPayloadin interface- MembershipService
- Parameters:
- payload- byte[]
 
- 
setDomainpublic void setDomain(byte[] domain) - Specified by:
- setDomainin interface- MembershipService
 
- 
setDomain
- 
getMembershipProviderDescription copied from interface:MembershipServiceGet the MembershipProvider- Specified by:
- getMembershipProviderin interface- MembershipService
- Returns:
- MembershipProvider
 
- 
setDefaults
- 
mainSimple test program- Parameters:
- args- Command-line arguments
- Throws:
- Exception- If an error occurs
 
 
-