org.apache.axis2.clustering.tribes
Class TribesClusteringAgent

java.lang.Object
  extended by org.apache.axis2.clustering.tribes.TribesClusteringAgent
All Implemented Interfaces:
ClusteringAgent, ParameterInclude

public class TribesClusteringAgent
extends java.lang.Object
implements ClusteringAgent

The main ClusteringAgent class for the Tribes based clustering implementation


Field Summary
static java.lang.String DEFAULT_SUB_DOMAIN
           
 
Constructor Summary
TribesClusteringAgent()
           
 
Method Summary
 void addGroupManagementAgent(GroupManagementAgent agent, java.lang.String applicationDomain)
           
 void addGroupManagementAgent(GroupManagementAgent agent, java.lang.String applicationDomain, java.lang.String applicationSubDomain, int groupMgtPort)
           
 void addParameter(Parameter param)
           
 void deserializeParameters(org.apache.axiom.om.OMElement parameterElement)
           
 int getAliveMemberCount()
           
 java.util.Set<java.lang.String> getDomains()
           
 GroupManagementAgent getGroupManagementAgent(java.lang.String applicationDomain)
           
 GroupManagementAgent getGroupManagementAgent(java.lang.String applicationDomain, java.lang.String applicationSubDomain)
           
 java.util.List<Member> getMembers()
           
 java.util.List<MembershipListener> getMembershipListeners()
           
 NodeManager getNodeManager()
           
 Parameter getParameter(java.lang.String name)
           
 java.util.ArrayList getParameters()
           
 StateManager getStateManager()
           
 void init()
          Initialize the cluster.
 boolean isCoordinator()
           
 boolean isParameterLocked(java.lang.String parameterName)
           
 void removeParameter(Parameter param)
           
 void resetGroupManagementAgent(java.lang.String applicationDomain, java.lang.String applicationSubDomain)
           
 java.util.List<ClusteringCommand> sendMessage(ClusteringMessage message, boolean isRpcMessage)
           
 void setConfigurationContext(ConfigurationContext configurationContext)
           
 void setMembers(java.util.List<Member> members)
           
 void setMembershipListeners(java.util.List<MembershipListener> membershipListeners)
           
 void setNodeManager(NodeManager nodeManager)
           
 void setStateManager(StateManager stateManager)
           
 void shutdown()
          Shutdown the cluster.
 void stop()
           
 boolean synchronizeAllMembers()
          Method to check whether all members in the cluster have to be kept in sync at all times.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_SUB_DOMAIN

public static final java.lang.String DEFAULT_SUB_DOMAIN
See Also:
Constant Field Values
Constructor Detail

TribesClusteringAgent

public TribesClusteringAgent()
Method Detail

getMembershipListeners

public java.util.List<MembershipListener> getMembershipListeners()

setMembershipListeners

public void setMembershipListeners(java.util.List<MembershipListener> membershipListeners)

setMembers

public void setMembers(java.util.List<Member> members)
Specified by:
setMembers in interface ClusteringAgent

getMembers

public java.util.List<Member> getMembers()
Specified by:
getMembers in interface ClusteringAgent

getAliveMemberCount

public int getAliveMemberCount()
Specified by:
getAliveMemberCount in interface ClusteringAgent

addGroupManagementAgent

public void addGroupManagementAgent(GroupManagementAgent agent,
                                    java.lang.String applicationDomain)
Specified by:
addGroupManagementAgent in interface ClusteringAgent

addGroupManagementAgent

public void addGroupManagementAgent(GroupManagementAgent agent,
                                    java.lang.String applicationDomain,
                                    java.lang.String applicationSubDomain,
                                    int groupMgtPort)
Specified by:
addGroupManagementAgent in interface ClusteringAgent

resetGroupManagementAgent

public void resetGroupManagementAgent(java.lang.String applicationDomain,
                                      java.lang.String applicationSubDomain)
Specified by:
resetGroupManagementAgent in interface ClusteringAgent

getGroupManagementAgent

public GroupManagementAgent getGroupManagementAgent(java.lang.String applicationDomain)
Specified by:
getGroupManagementAgent in interface ClusteringAgent

getGroupManagementAgent

public GroupManagementAgent getGroupManagementAgent(java.lang.String applicationDomain,
                                                    java.lang.String applicationSubDomain)
Specified by:
getGroupManagementAgent in interface ClusteringAgent

getDomains

public java.util.Set<java.lang.String> getDomains()
Specified by:
getDomains in interface ClusteringAgent

getStateManager

public StateManager getStateManager()
Specified by:
getStateManager in interface ClusteringAgent

getNodeManager

public NodeManager getNodeManager()
Specified by:
getNodeManager in interface ClusteringAgent

isCoordinator

public boolean isCoordinator()
Specified by:
isCoordinator in interface ClusteringAgent

init

public void init()
          throws ClusteringFault
Initialize the cluster.

Specified by:
init in interface ClusteringAgent
Throws:
ClusteringFault - If initialization fails

stop

public void stop()
Specified by:
stop in interface ClusteringAgent

sendMessage

public java.util.List<ClusteringCommand> sendMessage(ClusteringMessage message,
                                                     boolean isRpcMessage)
                                              throws ClusteringFault
Specified by:
sendMessage in interface ClusteringAgent
Throws:
ClusteringFault

setNodeManager

public void setNodeManager(NodeManager nodeManager)
Specified by:
setNodeManager in interface ClusteringAgent

setStateManager

public void setStateManager(StateManager stateManager)
Specified by:
setStateManager in interface ClusteringAgent

addParameter

public void addParameter(Parameter param)
                  throws AxisFault
Specified by:
addParameter in interface ParameterInclude
Throws:
AxisFault

deserializeParameters

public void deserializeParameters(org.apache.axiom.om.OMElement parameterElement)
                           throws AxisFault
Specified by:
deserializeParameters in interface ParameterInclude
Throws:
AxisFault

getParameter

public Parameter getParameter(java.lang.String name)
Specified by:
getParameter in interface ParameterInclude

getParameters

public java.util.ArrayList getParameters()
Specified by:
getParameters in interface ParameterInclude

isParameterLocked

public boolean isParameterLocked(java.lang.String parameterName)
Specified by:
isParameterLocked in interface ParameterInclude

removeParameter

public void removeParameter(Parameter param)
                     throws AxisFault
Specified by:
removeParameter in interface ParameterInclude
Throws:
AxisFault

shutdown

public void shutdown()
              throws ClusteringFault
Shutdown the cluster. This member will leave the cluster when this method is called.

Specified by:
shutdown in interface ClusteringAgent
Throws:
ClusteringFault - If an error occurs while shutting down

setConfigurationContext

public void setConfigurationContext(ConfigurationContext configurationContext)
Specified by:
setConfigurationContext in interface ClusteringAgent

synchronizeAllMembers

public boolean synchronizeAllMembers()
Method to check whether all members in the cluster have to be kept in sync at all times. Typically, this will require each member in the cluster to ACKnowledge receipt of a particular message, which may have a significant performance hit.

Returns:
true - if all members in the cluster should be kept in sync at all times, false otherwise


Copyright © 2004-2014 The Apache Software Foundation. All Rights Reserved.