Author: azeez Date: Sun Mar 13 21:19:30 2011 New Revision: 1081220 URL: http://svn.apache.org/viewvc?rev=1081220&view=rev Log: Replicating state only if the StateManager is available
Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/clustering/state/Replicator.java Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/clustering/state/Replicator.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/clustering/state/Replicator.java?rev=1081220&r1=1081219&r2=1081220&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/clustering/state/Replicator.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/clustering/state/Replicator.java Sun Mar 13 21:19:30 2011 @@ -52,7 +52,10 @@ public final class Replicator { public static void replicateState(StateClusteringCommand command, AxisConfiguration axisConfig) throws ClusteringFault { - getStateManager(axisConfig).replicateState(command); + StateManager stateManager = getStateManager(axisConfig); + if (stateManager != null) { + stateManager.replicateState(command); + } } /** @@ -71,6 +74,9 @@ public final class Replicator { " ServiceGroupContext, ServiceContext associated with " + msgContext + "..."); ConfigurationContext configurationContext = msgContext.getConfigurationContext(); StateManager stateManager = getStateManager(msgContext); + if (stateManager == null) { + return; + } List<AbstractContext> contexts = new ArrayList<AbstractContext>(); // Do we need to replicate state stored in ConfigurationContext? @@ -109,7 +115,7 @@ public final class Replicator { } log.debug("Going to replicate state in " + abstractContext + "..."); StateManager stateManager = getStateManager(abstractContext); - if (!abstractContext.getPropertyDifferences().isEmpty()) { + if (stateManager != null && !abstractContext.getPropertyDifferences().isEmpty()) { synchronized (abstractContext) { // This IDEA/FindBugs warning can be ignored stateManager.updateContext(abstractContext); } @@ -131,7 +137,9 @@ public final class Replicator { } log.debug("Going to replicate selected properties in " + abstractContext + "..."); StateManager stateManager = getStateManager(abstractContext); - stateManager.updateContext(abstractContext, propertyNames); + if (stateManager != null) { + stateManager.updateContext(abstractContext, propertyNames); + } } private static ClusteringAgent getClusterManager(AbstractContext abstractContext) { @@ -143,7 +151,11 @@ public final class Replicator { } private static StateManager getStateManager(AxisConfiguration axisConfiguration) { - return axisConfiguration.getClusteringAgent().getStateManager(); + ClusteringAgent clusteringAgent = axisConfiguration.getClusteringAgent(); + if (clusteringAgent != null) { + return clusteringAgent.getStateManager(); + } + return null; } /**