Class StaticMembershipService
java.lang.Object
org.apache.catalina.tribes.membership.MembershipServiceBase
org.apache.catalina.tribes.membership.StaticMembershipService
- All Implemented Interfaces:
StaticMembershipServiceMBean, MembershipListener, MembershipService
public class StaticMembershipService
extends MembershipServiceBase
implements StaticMembershipServiceMBean
Service that manages static membership for a cluster channel.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final StringManagerString manager for this class.protected final ArrayList<StaticMember> List of static members configured for this service.Fields inherited from class MembershipServiceBase
channel, listener, propertiesFields inherited from interface MembershipService
MBR_RX, MBR_TX -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddStaticMember(StaticMember member) Adds a static member to the cluster.protected StaticMembershipProviderBuilds and configures the membership provider.intReturns the connection timeout in milliseconds.longReturns the member expiration time in milliseconds.getLocalMember(boolean incAliveTime) Get the local member.Get the MembershipProviderlongReturns the ping interval in milliseconds.longReturns the RPC timeout in milliseconds.Returns the list of static members.booleanReturns whether a background ping thread is in use.voidremoveStaticMember(StaticMember member) Removes a static member from the cluster.voidsetConnectTimeout(int connectTimeout) Sets the connection timeout in milliseconds.protected voidsetDefaults(Properties properties) Sets default property values.voidsetDomain(byte[] domain) Set the associated domain.voidsetExpirationTime(long expirationTime) Sets the member expiration time in milliseconds.voidsetLocalMember(StaticMember member) Sets the local member for this service.voidsetLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort) Sets the local member properties for broadcasting.voidsetPayload(byte[] payload) Set a payload to be broadcasted with each membership broadcast.voidsetPingInterval(long pingInterval) Sets the ping interval in milliseconds.voidsetProperties(Properties properties) Sets the properties for the membership service.voidsetRpcTimeout(long rpcTimeout) Sets the RPC timeout in milliseconds.voidsetUseThread(boolean useThread) Sets whether to use a background thread for pinging.voidstart(int level) Starts the membership service.voidstop(int level) Stops the membership service.Methods inherited from class MembershipServiceBase
broadcast, findMemberByName, getChannel, getMember, getMembers, getMembersByName, getProperties, hasMembers, memberAdded, memberDisappeared, removeMembershipListener, setChannel, setMembershipListener, startMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface StaticMembershipServiceMBean
findMemberByName, getMembersByName, getProperties, hasMembers
-
Field Details
-
sm
String manager for this class. -
staticMembers
List of static members configured for this service.
-
-
Constructor Details
-
StaticMembershipService
public StaticMembershipService()Default constructor.
-
-
Method Details
-
start
Description copied from interface:MembershipServiceStarts the membership service. If a membership listeners is added the listener will start to receive membership events.- Specified by:
startin interfaceMembershipService- Parameters:
level- - level MBR_RX starts listening for members, level MBR_TX starts broadcasting the server- Throws:
Exception- if the service fails to start.
-
buildMembershipProvider
Builds and configures the membership provider.- Returns:
- the configured membership provider
- Throws:
Exception- if initialization fails
-
stop
public void stop(int level) Description copied from interface:MembershipServiceStops the membership service. If a membership listeners is added the listener will start to receive membership events.- Specified by:
stopin interfaceMembershipService- Parameters:
level- - level MBR_RX stops listening for members, level MBR_TX stops broadcasting the server
-
getLocalMember
Description copied from interface:MembershipServiceGet the local member.- Specified by:
getLocalMemberin interfaceMembershipService- Parameters:
incAliveTime-trueto set the alive time on the local member- Returns:
- the member object that defines this member
-
setLocalMemberProperties
public void setLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort) Description copied from interface:MembershipServiceSets the local member properties for broadcasting.- Specified by:
setLocalMemberPropertiesin interfaceMembershipService- Parameters:
listenHost- Listen to hostlistenPort- Listen to portsecurePort- Use a secure portudpPort- Use UDP
-
setPayload
public void setPayload(byte[] payload) Description copied from interface:MembershipServiceSet a payload to be broadcasted with each membership broadcast.- Specified by:
setPayloadin interfaceMembershipService- Parameters:
payload- byte[]
-
setDomain
public void setDomain(byte[] domain) Description copied from interface:MembershipServiceSet the associated domain.- Specified by:
setDomainin interfaceMembershipService- Parameters:
domain- the domain
-
getMembershipProvider
Description copied from interface:MembershipServiceGet the MembershipProvider- Specified by:
getMembershipProviderin interfaceMembershipService- Returns:
- MembershipProvider
-
getStaticMembers
Returns the list of static members.- Returns:
- the static members list
-
addStaticMember
Adds a static member to the cluster.- Parameters:
member- the member to add
-
removeStaticMember
Removes a static member from the cluster.- Parameters:
member- the member to remove
-
setLocalMember
Sets the local member for this service.- Parameters:
member- the local member
-
getExpirationTime
public long getExpirationTime()Description copied from interface:StaticMembershipServiceMBeanReturns the member expiration time in milliseconds.- Specified by:
getExpirationTimein interfaceStaticMembershipServiceMBean- Returns:
- the expiration time
-
setExpirationTime
public void setExpirationTime(long expirationTime) Sets the member expiration time in milliseconds.- Parameters:
expirationTime- the expiration time
-
getConnectTimeout
public int getConnectTimeout()Description copied from interface:StaticMembershipServiceMBeanReturns the connection timeout in milliseconds.- Specified by:
getConnectTimeoutin interfaceStaticMembershipServiceMBean- Returns:
- the connection timeout
-
setConnectTimeout
public void setConnectTimeout(int connectTimeout) Sets the connection timeout in milliseconds.- Parameters:
connectTimeout- the connection timeout
-
getRpcTimeout
public long getRpcTimeout()Description copied from interface:StaticMembershipServiceMBeanReturns the RPC timeout in milliseconds.- Specified by:
getRpcTimeoutin interfaceStaticMembershipServiceMBean- Returns:
- the RPC timeout
-
setRpcTimeout
public void setRpcTimeout(long rpcTimeout) Sets the RPC timeout in milliseconds.- Parameters:
rpcTimeout- the RPC timeout
-
getUseThread
public boolean getUseThread()Description copied from interface:StaticMembershipServiceMBeanReturns whether a background ping thread is in use.- Specified by:
getUseThreadin interfaceStaticMembershipServiceMBean- Returns:
- true if a background thread is used
-
setUseThread
public void setUseThread(boolean useThread) Sets whether to use a background thread for pinging.- Parameters:
useThread- true to use a background thread
-
getPingInterval
public long getPingInterval()Description copied from interface:StaticMembershipServiceMBeanReturns the ping interval in milliseconds.- Specified by:
getPingIntervalin interfaceStaticMembershipServiceMBean- Returns:
- the ping interval
-
setPingInterval
public void setPingInterval(long pingInterval) Sets the ping interval in milliseconds.- Parameters:
pingInterval- the ping interval
-
setProperties
Description copied from interface:MembershipServiceSets the properties for the membership service. This must be called before thestart()method is called. The properties are implementation specific.- Specified by:
setPropertiesin interfaceMembershipService- Overrides:
setPropertiesin classMembershipServiceBase- Parameters:
properties- - to be used to configure the membership service.
-
setDefaults
Sets default property values.- Parameters:
properties- the properties to configure
-