org.apache.catalina.ha.tcp
public class SimpleTcpCluster extends Object implements CatalinaCluster, Lifecycle, LifecycleListener, IDynamicProperty, MembershipListener, ChannelListener
Version: $Revision: 697040 $, $Date: 2008-09-19 12:39:02 +0200 (Fri, 19 Sep 2008) $
| Field Summary | |
|---|---|
| static String | AFTER_MANAGERREGISTER_EVENT |
| static String | AFTER_MANAGERUNREGISTER_EVENT |
| static String | AFTER_MEMBERREGISTER_EVENT |
| static String | AFTER_MEMBERUNREGISTER_EVENT |
| static String | BEFORE_MANAGERREGISTER_EVENT |
| static String | BEFORE_MANAGERUNREGISTER_EVENT |
| static String | BEFORE_MEMBERREGISTER_EVENT |
| static String | BEFORE_MEMBERUNREGISTER_EVENT |
| protected Channel | channel
Group channel. |
| protected String | clusterImpName
Name for logging purpose |
| protected List | clusterListeners
Listeners of messages |
| protected String | clusterName
The cluster name to join |
| protected Container | container
The Container associated with this Cluster. |
| protected boolean | hasMembers
has members |
| protected boolean | heartbeatBackgroundEnabled
call Channel.heartbeat() at container background thread |
| protected static String | info
Descriptive information about this component implementation. |
| protected LifecycleSupport | lifecycle
The lifecycle event support for this component. |
| static Log | log |
| protected Map | managers
The context name <->manager association for distributed contexts. |
| protected ClusterManager | managerTemplate |
| static String | RECEIVE_MESSAGE_FAILURE_EVENT |
| protected StringManager | sm
The string manager for this package. |
| protected boolean | started
Has this component been started? |
| protected PropertyChangeSupport | support
The property change support for this component. |
| static String | SEND_MESSAGE_FAILURE_EVENT |
| Constructor Summary | |
|---|---|
| SimpleTcpCluster() | |
| Method Summary | |
|---|---|
| boolean | accept(Serializable msg, Member sender)
notify all listeners from receiving a new message is not ClusterMessage
emitt Failure Event to LifecylceListener
|
| void | addClusterListener(ClusterListener listener)
add cluster message listener and register cluster to this listener
|
| void | addLifecycleListener(LifecycleListener listener)
Add a lifecycle event listener to this component.
|
| void | addValve(Valve valve)
Add cluster valve
Cluster Valves are only add to container when cluster is started! |
| void | backgroundProcess()
Execute a periodic task, such as reloading, etc. |
| protected void | checkDefaults() |
| Manager | createManager(String name)
Create new Manager without add to cluster (comes with start the manager)
|
| ClusterListener[] | findClusterListeners()
Get the cluster listeners associated with this cluster. |
| LifecycleListener[] | findLifecycleListeners()
Get the lifecycle listeners associated with this lifecycle. |
| Channel | getChannel() |
| int | getChannelSendOptions() |
| int | getChannelStartOptions() |
| ClusterDeployer | getClusterDeployer()
get current Deployer |
| String | getClusterName()
Return the name of the cluster that this Server is currently configured
to operate within.
|
| Container | getContainer()
Get the Container associated with our Cluster
|
| String | getInfo()
Return descriptive information about this Cluster implementation and the
corresponding version number, in the format
<description>/<version>. |
| Member | getLocalMember()
Return the member that represents this node.
|
| Log | getLogger() |
| Manager | getManager(String name) |
| String | getManagerClassName() |
| String | getManagerName(String name, Manager manager) |
| Map | getManagers() |
| ClusterManager | getManagerTemplate() |
| Member[] | getMembers()
Get all current cluster members |
| Object | getProperty(String key)
get current config
|
| Iterator | getPropertyNames()
Get all properties keys
|
| String | getProtocol() |
| Valve[] | getValves()
get all cluster valves |
| boolean | hasMembers() |
| boolean | isHeartbeatBackgroundEnabled()
Return heartbeat enable flag (default false) |
| boolean | isNotifyLifecycleListenerOnFailure() |
| void | lifecycleEvent(LifecycleEvent lifecycleEvent)
Use as base to handle start/stop/periodic Events from host. |
| void | memberAdded(Member member)
New cluster member is registered
|
| void | memberDisappeared(Member member)
Cluster member is gone
|
| void | messageReceived(Serializable message, Member sender) |
| void | messageReceived(ClusterMessage message) |
| protected void | registerClusterValve()
register all cluster valve to host or engine |
| void | registerManager(Manager manager) |
| void | removeClusterListener(ClusterListener listener)
remove message listener and deregister Cluster from listener
|
| void | removeLifecycleListener(LifecycleListener listener)
Remove a lifecycle event listener from this component.
|
| void | removeManager(Manager manager)
remove an application form cluster replication bus
|
| void | removeProperty(String key)
remove a configured property.
|
| void | send(ClusterMessage msg)
send message to all cluster members |
| void | send(ClusterMessage msg, Member dest)
send a cluster message to one member
|
| void | sendClusterDomain(ClusterMessage msg)
send message to all cluster members same cluster domain
|
| void | setChannel(Channel channel) |
| void | setChannelSendOptions(int channelSendOptions) |
| void | setChannelStartOptions(int channelStartOptions) |
| void | setClusterDeployer(ClusterDeployer clusterDeployer)
set a new Deployer, must be set before cluster started! |
| void | setClusterName(String clusterName)
Set the name of the cluster to join, if no cluster with this name is
present create one.
|
| void | setContainer(Container container)
Set the Container associated with our Cluster
|
| void | setHeartbeatBackgroundEnabled(boolean heartbeatBackgroundEnabled)
enabled that container backgroundThread call heartbeat at channel |
| void | setManagerClassName(String managerClassName) |
| void | setManagerTemplate(ClusterManager managerTemplate) |
| void | setNotifyLifecycleListenerOnFailure(boolean notifyListenerOnFailure) |
| boolean | setProperty(String name, String value)
JMX hack to direct use at jconsole
|
| boolean | setProperty(String name, Object value)
set config attributes with reflect and propagate to all managers
|
| void | setProtocol(String protocol) |
| void | start()
Prepare for the beginning of active use of the public methods of this
component. |
| void | stop()
Gracefully terminate the active cluster component. This will disconnect the cluster communication channel, stop the listener and deregister the valves from host or engine. Note: The sub elements receiver, sender, membership, listener or valves are not removed. |
| protected void | transferProperty(String prefix, Object bean)
transfer properties from cluster configuration to subelement bean. |
| protected void | unregisterClusterValve()
unregister all cluster valve to host or engine |
See Also: heartbeat
Parameters: message receveived Message
See Also: CatalinaCluster
Parameters: listener The listener to add
Parameters: valve The new cluster Valve.
See Also: backgroundProcess heartbeat
Parameters: name Context Name of this manager
See Also: Cluster SimpleTcpCluster start
Returns: The name of the cluster associated with this server
Returns: The Container associated with our Cluster
<description>/<version>.Returns: Member
Deprecated: use getManagerTemplate().getClass().getName() instead.
Returns: String
Parameters: name manager
Returns:
Returns: Returns the managers.
Returns: all members or empty array
Parameters: key
Returns: The property
Returns: An iterator over the property names.
See Also: getProtocol
Returns: current cluster valves
Returns: the heartbeatBackgroundEnabled
Returns: Returns the notifyLifecycleListenerOnFailure.
See Also: lifecycleEvent
See Also: org.apache.catalina.ha.MembershipListener#memberAdded(org.apache.catalina.ha.Member)
See Also: org.apache.catalina.ha.MembershipListener#memberDisappeared(org.apache.catalina.ha.Member)
Throws: Exception ClassNotFoundException
See Also: CatalinaCluster
Parameters: listener The listener to remove
See Also: CatalinaCluster
Parameters: key
Parameters: msg message to transfer
See Also: send
Parameters: msg message to transfer dest Receiver member
See Also: CatalinaCluster
See Also: send
Parameters: clusterName The clustername to join
Parameters: container The Container to use
Parameters: heartbeatBackgroundEnabled the heartbeatBackgroundEnabled to set
Deprecated: use nested <Manager> element inside the cluster config instead.
Parameters: managerClassName String
Parameters: notifyListenerOnFailure The notifyLifecycleListenerOnFailure to set.
Parameters: name value
Parameters: name value
See Also: Cluster
configure(),
and before any of the public methods of the component are utilized. Throws: IllegalStateException if this component has already been started LifecycleException if this component detects a fatal error that prevents this component from being used
Throws: IllegalStateException if this component has not been started LifecycleException if this component detects a fatal error that needs to be reported
Parameters: prefix bean
Throws: Exception ClassNotFoundException