You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ch...@apache.org on 2007/03/12 07:51:28 UTC
svn commit: r517114 [2/2] - in /webservices/axis2/trunk/java: etc/
modules/clustering/ modules/clustering/src/org/apache/axis2/cluster/handlers/
modules/clustering/src/org/apache/axis2/cluster/tribes/
modules/clustering/src/org/apache/axis2/cluster/tri...
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/ClusteringFault.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/ClusteringFault.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/ClusteringFault.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/ClusteringFault.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,30 @@
+/*
+ * Copyright 2004,2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.axis2.cluster;
+
+import org.apache.axis2.AxisFault;
+
+public class ClusteringFault extends AxisFault {
+
+ public ClusteringFault (String message) {
+ super (message);
+ }
+
+ public ClusteringFault (String message, Exception e) {
+ super (message, e);
+ }
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationEvent.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationEvent.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationEvent.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationEvent.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,7 @@
+package org.apache.axis2.cluster.configuration;
+
+public class ConfigurationEvent {
+ String descriptionName;
+ String parentDescriptionName;
+ int descriptionType;
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManager.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManager.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManager.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManager.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,28 @@
+package org.apache.axis2.cluster.configuration;
+
+import org.apache.axis2.cluster.ClusteringFault;
+import org.apache.axis2.description.AxisDescription;
+import org.apache.neethi.Policy;
+
+public interface ConfigurationManager {
+
+ /*
+ * Configuration management methods
+ */
+ void loadServiceGroup(String serviceGroupName);
+ void unloadServiceGroup(String serviceGroupName);
+ void applyPolicy(String serviceGroupName, Policy policy);
+ void reloadConfiguration();
+
+ /*
+ * Transaction management methods
+ */
+ void prepare();
+ void rollback();
+ void commit();
+
+ /**
+ * For registering a configuration event listener.
+ */
+ void addConfigurationManagerListener(ConfigurationManagerListener listener);
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManagerListener.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManagerListener.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManagerListener.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationManagerListener.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,13 @@
+package org.apache.axis2.cluster.configuration;
+
+public interface ConfigurationManagerListener {
+
+ public void serviceGroupLoaded(ConfigurationEvent event);
+ public void serviceGroupUnloaded(ConfigurationEvent event);
+ public void policyApplied(ConfigurationEvent event);
+ public void configurationReloaded (ConfigurationEvent event);
+ public void prepareCalled (ConfigurationEvent event);
+ public void rollbackCalled (ConfigurationEvent event);
+ public void commitCalled (ConfigurationEvent event);
+
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationType.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationType.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationType.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/configuration/ConfigurationType.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,8 @@
+package org.apache.axis2.cluster.configuration;
+
+public class ConfigurationType {
+ final int AXIS_CONFIGURATION = 1;
+ final int AXIS_SERVICE_GROUP = 2;
+ final int AXIS_SERVICE = 3;
+ final int AXIS_OPERATION = 4;
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextEvent.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextEvent.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextEvent.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextEvent.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,37 @@
+package org.apache.axis2.cluster.context;
+
+public class ContextEvent {
+ String contextID;
+ String parentContextID;
+ int contextType;
+ String descriptionID = null;
+
+
+ public int getContextType() {
+ return contextType;
+ }
+ public void setContextType(int contextType) {
+ this.contextType = contextType;
+ }
+ public String getContextID() {
+ return contextID;
+ }
+ public void setContextID(String contextID) {
+ this.contextID = contextID;
+ }
+ public String getDescriptionID() {
+ return descriptionID;
+ }
+ public void setDescriptionID(String descriptionID) {
+ this.descriptionID = descriptionID;
+ }
+ public String getParentContextID() {
+ return parentContextID;
+ }
+ public void setParentContextID(String parentContextID) {
+ this.parentContextID = parentContextID;
+ }
+
+
+
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManager.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManager.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManager.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManager.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,12 @@
+package org.apache.axis2.cluster.context;
+
+import org.apache.axis2.cluster.ClusteringFault;
+import org.apache.axis2.context.AbstractContext;
+
+public interface ContextManager {
+ public void addContext(AbstractContext context) throws ClusteringFault;
+ public void removeContext(AbstractContext context) throws ClusteringFault;
+ public void updateState(AbstractContext context) throws ClusteringFault;
+ public boolean isContextClusterable (AbstractContext context) throws ClusteringFault;
+ public void addContextManagerListener (ContextManagerListener listener);
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManagerListener.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManagerListener.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManagerListener.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextManagerListener.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,8 @@
+package org.apache.axis2.cluster.context;
+
+
+public interface ContextManagerListener {
+ public void contextAdded(ContextEvent event);
+ public void contextRemoved(ContextEvent event);
+ public void contextUpdated(ContextEvent event);
+}
Added: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextType.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextType.java?view=auto&rev=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextType.java (added)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/cluster/context/ContextType.java Sun Mar 11 23:51:26 2007
@@ -0,0 +1,8 @@
+package org.apache.axis2.cluster.context;
+
+public class ContextType {
+ final int CONFIG_CONTEXT = 1;
+ final int SERVICE_GROUP_CONTEXT = 2;
+ final int SERVICE_CONTEXT = 3;
+ final int OPERATION_CONTEXT = 4;
+}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/AbstractContext.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/AbstractContext.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/AbstractContext.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/AbstractContext.java Sun Mar 11 23:51:26 2007
@@ -19,6 +19,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.cluster.ClusterManager;
+import org.apache.axis2.cluster.context.ContextManager;
import org.apache.axis2.engine.AxisConfiguration;
import org.apache.axis2.i18n.Messages;
@@ -181,8 +182,10 @@
ClusterManager clusterManager = axisConfiguration.getClusterManager();
//Calling the ClusterManager probably to replicate the updated state of the context.
- if (clusterManager != null && clusterManager.isContextClusterable(this)) {
- clusterManager.updateState(this);
+ if (clusterManager != null) {
+ ContextManager contextManager = clusterManager.getContextManager();
+ if (contextManager!=null && contextManager.isContextClusterable (this))
+ contextManager.updateState(this);
}
//Other logic needed for flushing the contexts
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContext.java Sun Mar 11 23:51:26 2007
@@ -21,6 +21,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.Constants;
import org.apache.axis2.cluster.ClusterManager;
+import org.apache.axis2.cluster.context.ContextManager;
import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.AxisServiceGroup;
import org.apache.axis2.description.Parameter;
@@ -71,10 +72,6 @@
super(null);
this.axisConfiguration = axisConfiguration;
initConfigContextTimeout(axisConfiguration);
-
- if (axisConfiguration.getClusterManager() != null) {
- initCluster();
- }
}
private void initConfigContextTimeout(AxisConfiguration axisConfiguration) {
@@ -88,7 +85,7 @@
}
}
- private void initCluster() {
+ public void initCluster() throws AxisFault {
ClusterManager clusterManager = axisConfiguration.getClusterManager();
clusterManager.init(this);
}
@@ -142,7 +139,9 @@
ClusterManager clusterManager = this.getAxisConfiguration().getClusterManager();
if (clusterManager != null) {
- clusterManager.addContext(serviceGroupContext);
+ ContextManager contextManager = clusterManager.getContextManager();
+ if (contextManager!=null)
+ contextManager.addContext(serviceGroupContext);
}
}
messageContext.setServiceGroupContext(serviceGroupContext);
@@ -169,7 +168,9 @@
ClusterManager clusterManager = this.getAxisConfiguration().getClusterManager();
if (clusterManager != null) {
- clusterManager.addContext(serviceGroupContext);
+ ContextManager contextManager = clusterManager.getContextManager();
+ if (contextManager!=null)
+ contextManager.addContext(serviceGroupContext);
}
messageContext.setServiceGroupContextId(serviceGroupContextId);
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ConfigurationContextFactory.java Sun Mar 11 23:51:26 2007
@@ -63,6 +63,11 @@
AxisConfigurator axisConfigurator) throws AxisFault {
AxisConfiguration axisConfig = axisConfigurator.getAxisConfiguration();
ConfigurationContext configContext = new ConfigurationContext(axisConfig);
+
+ if (axisConfig.getClusterManager() != null) {
+ configContext.initCluster();
+ }
+
if (axisConfigurator instanceof DeploymentEngine) {
((DeploymentEngine) axisConfigurator).setConfigContext(configContext);
}
@@ -178,6 +183,7 @@
public static ConfigurationContext createConfigurationContextFromFileSystem(
String path,
String axis2xml) throws AxisFault {
+
return createConfigurationContext(new FileSystemConfigurator(path, axis2xml));
}
@@ -254,9 +260,13 @@
*
* @return Returns ConfigurationContext.
*/
- public static ConfigurationContext createEmptyConfigurationContext() {
+ public static ConfigurationContext createEmptyConfigurationContext() throws AxisFault {
AxisConfiguration axisConfiguration = new AxisConfiguration();
ConfigurationContext configContext = new ConfigurationContext(axisConfiguration);
+ if (axisConfiguration.getClusterManager() != null) {
+ configContext.initCluster();
+ }
+
setContextPaths(axisConfiguration, configContext);
return configContext;
}
@@ -275,6 +285,11 @@
builder.populateConfig();
axisConfig.validateSystemPredefinedPhases();
ConfigurationContext configContext = new ConfigurationContext(axisConfig);
+
+ if (axisConfig.getClusterManager() != null) {
+ configContext.initCluster();
+ }
+
setContextPaths(axisConfig, configContext);
return configContext;
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ServiceGroupContext.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ServiceGroupContext.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ServiceGroupContext.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/context/ServiceGroupContext.java Sun Mar 11 23:51:26 2007
@@ -19,6 +19,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.cluster.ClusterManager;
+import org.apache.axis2.cluster.context.ContextManager;
import org.apache.axis2.description.AxisService;
import org.apache.axis2.description.AxisServiceGroup;
import org.apache.axis2.engine.AxisConfiguration;
@@ -147,7 +148,9 @@
ClusterManager clusterManager = axisService.getAxisConfiguration().getClusterManager();
if (clusterManager != null) {
- clusterManager.addContext(serviceContext);
+ ContextManager contextManager = clusterManager.getContextManager();
+ if (contextManager!=null)
+ contextManager.addContext(serviceContext);
}
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisEngine.java Sun Mar 11 23:51:26 2007
@@ -271,7 +271,7 @@
return pi;
}
- private void flowComplete(MessageContext msgContext, boolean inbound) {
+ private void flowComplete(MessageContext msgContext, boolean inbound) throws AxisFault {
Iterator invokedPhaseIterator = inbound ? msgContext.getInboundExecutedPhases() :
msgContext.getOutboundExecutedPhases();
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Handler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Handler.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Handler.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Handler.java Sun Mar 11 23:51:26 2007
@@ -73,7 +73,7 @@
* @param msgContext the <code>MessageContext</code> to process with this
* <code>Handler</code>.
*/
- public void flowComplete(MessageContext msgContext);
+ public void flowComplete(MessageContext msgContext) throws AxisFault;
/**
* Gets the HandlerDescription of a handler. This is used as an input to get phaseRule of a handler.
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Phase.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Phase.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Phase.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/Phase.java Sun Mar 11 23:51:26 2007
@@ -400,7 +400,7 @@
return pi;
}
- public void flowComplete(MessageContext msgContext) {
+ public void flowComplete(MessageContext msgContext) throws AxisFault {
if (LoggingControl.debugLoggingAllowed && log.isDebugEnabled()) {
log.debug(msgContext.getLogIDString() + " Invoking flowComplete() in Phase \"" +
phaseName + "\"");
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/handlers/AbstractHandler.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/handlers/AbstractHandler.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/handlers/AbstractHandler.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/handlers/AbstractHandler.java Sun Mar 11 23:51:26 2007
@@ -17,6 +17,7 @@
package org.apache.axis2.handlers;
+import org.apache.axis2.AxisFault;
import org.apache.axis2.context.MessageContext;
import org.apache.axis2.description.HandlerDescription;
import org.apache.axis2.description.Parameter;
@@ -102,6 +103,6 @@
return handlerDesc.getParameter(name);
}
- public void flowComplete(MessageContext msgContext) {
+ public void flowComplete(MessageContext msgContext) throws AxisFault {
}
}
Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/Utils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/Utils.java?view=diff&rev=517114&r1=517113&r2=517114
==============================================================================
--- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/Utils.java (original)
+++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/util/Utils.java Sun Mar 11 23:51:26 2007
@@ -23,6 +23,7 @@
import org.apache.axis2.AxisFault;
import org.apache.axis2.Constants;
import org.apache.axis2.cluster.ClusterManager;
+import org.apache.axis2.cluster.context.ContextManager;
import org.apache.axis2.context.ConfigurationContext;
import org.apache.axis2.context.ConfigurationContextFactory;
import org.apache.axis2.context.ContextFactory;
@@ -126,7 +127,7 @@
}
public static ServiceContext fillContextInformation(AxisService axisService,
- ConfigurationContext configurationContext) {
+ ConfigurationContext configurationContext) throws AxisFault {
// 2. if null, create new opCtxt
// fill the service group context and service context info
@@ -134,7 +135,7 @@
}
private static ServiceContext fillServiceContextAndServiceGroupContext(AxisService axisService,
- ConfigurationContext configurationContext) {
+ ConfigurationContext configurationContext) throws AxisFault {
String serviceGroupContextId = UUIDGenerator.getUUID();
ServiceGroupContext serviceGroupContext =
ContextFactory.createServiceGroupContext(configurationContext,
@@ -148,8 +149,11 @@
ClusterManager clusterManager =
configurationContext.getAxisConfiguration().getClusterManager();
if (clusterManager != null) {
- clusterManager.addContext(serviceGroupContext);
- clusterManager.addContext(serviceContext);
+ ContextManager contextManager = clusterManager.getContextManager();
+ if (contextManager!=null) {
+ contextManager.addContext(serviceGroupContext);
+ contextManager.addContext(serviceContext);
+ }
}
return serviceContext;
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org