You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by az...@apache.org on 2007/05/29 09:53:34 UTC
svn commit: r542448 - in
/webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes:
ChannelListener.java TribesClusterManager.java
Author: azeez
Date: Tue May 29 00:53:33 2007
New Revision: 542448
URL: http://svn.apache.org/viewvc?view=rev&rev=542448
Log:
In the clustering implemetation, one should be able to use Context management ONLY, or
Configuration management ONLY. This change facilates it.
Modified:
webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java
webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java
Modified: webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java?view=diff&rev=542448&r1=542447&r2=542448
==============================================================================
--- webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java (original)
+++ webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/ChannelListener.java Tue May 29 00:53:33 2007
@@ -122,11 +122,12 @@
}
Serializable msg = memberMessage.getMessage();
- if (msg instanceof ContextClusteringCommand) {
+ if (msg instanceof ContextClusteringCommand && contextManager != null) {
contextManager.process((ContextClusteringCommand) msg);
- } else if (msg instanceof ConfigurationClusteringCommand) {
+ } else if (msg instanceof ConfigurationClusteringCommand &&
+ configurationManager != null) {
configurationManager.process((ConfigurationClusteringCommand) msg);
- } else if (msg instanceof ControlCommand) {
+ } else if (msg instanceof ControlCommand && controlCommandProcessor != null) {
controlCommandProcessor.process((ControlCommand) msg,
memberMessage.getSender());
}
Modified: webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java?view=diff&rev=542448&r1=542447&r2=542448
==============================================================================
--- webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java (original)
+++ webservices/axis2/trunk/java/modules/clustering/src/org/apache/axis2/clustering/tribes/TribesClusterManager.java Tue May 29 00:53:33 2007
@@ -79,8 +79,9 @@
TransientTribesChannelInfo channelInfo = new TransientTribesChannelInfo();
TransientTribesMemberInfo memberInfo = new TransientTribesMemberInfo();
- contextManager.setSender(sender);
- configurationManager.setSender(sender);
+ if (configurationManager != null) {
+ configurationManager.setSender(sender);
+ }
controlCmdProcessor.setChannelSender(sender);
try {
@@ -123,39 +124,40 @@
channel.addMembershipListener(membershipListener);
channel.start(Channel.DEFAULT);
sender.setChannel(channel);
- contextManager.setSender(sender);
- configurationManager.setSender(sender);
-
-
- listener.setContextManager(contextManager);
- Member[] members = channel.getMembers();
- TribesUtil.printMembers(members);
- // If there is at least one member in the Tribe, get the current state from a member
- Random random = new Random();
- int numberOfTries = 0; // Don't keep on trying infinitely
- while (members.length > 0 &&
- configurationContext.
- getPropertyNonReplicable(ClusteringConstants.CLUSTER_INITIALIZED) == null
- && numberOfTries < 50) {
-
- // While there are members and GetStateResponseCommand is not received do the following
- try {
- members = channel.getMembers();
- int memberIndex = random.nextInt(members.length);
- sender.sendToMember(new GetStateCommand(), members[memberIndex]);
- log.debug("WAITING FOR STATE UPDATE...");
- Thread.sleep(200);
- } catch (Exception e) {
- e.printStackTrace();
- break;
+ if (contextManager != null) {
+ contextManager.setSender(sender);
+ listener.setContextManager(contextManager);
+
+ Member[] members = channel.getMembers();
+ TribesUtil.printMembers(members);
+
+ // If there is at least one member in the Tribe, get the current state from a member
+ Random random = new Random();
+ int numberOfTries = 0; // Don't keep on trying infinitely
+ while (members.length > 0 &&
+ configurationContext.
+ getPropertyNonReplicable(ClusteringConstants.CLUSTER_INITIALIZED) == null
+ && numberOfTries < 50) {
+
+ // While there are members and GetStateResponseCommand is not received do the following
+ try {
+ members = channel.getMembers();
+ int memberIndex = random.nextInt(members.length);
+ sender.sendToMember(new GetStateCommand(), members[memberIndex]);
+ log.debug("WAITING FOR STATE UPDATE...");
+ Thread.sleep(200);
+ } catch (Exception e) {
+ e.printStackTrace();
+ break;
+ }
+ numberOfTries ++;
}
- numberOfTries ++;
+ configurationContext.
+ setNonReplicableProperty(ClusteringConstants.CLUSTER_INITIALIZED,
+ "true");
}
- configurationContext.
- setNonReplicableProperty(ClusteringConstants.CLUSTER_INITIALIZED,
- "true");
} catch (ChannelException e) {
String message = "Error starting Tribes channel";
throw new ClusteringFault(message, e);
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org