[wsas-java-dev] svn commit r2717 - in trunk/wsas/java: modules/admin/src/org/wso2/wsas/admin/service modules/core/src/org/wso2/wsas/util modules/servlet-edition/conf modules/standalone-edition/conf xdocs

svn at wso2.org svn at wso2.org
Wed May 16 02:45:35 PDT 2007


Author: azeez
Date: Wed May 16 02:44:51 2007
New Revision: 2717

Added:
   trunk/wsas/java/xdocs/web.xml
Modified:
   trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/AxisConfigAdmin.java
   trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/GlobalAdmin.java
   trunk/wsas/java/modules/core/src/org/wso2/wsas/util/ClusteringUtil.java
   trunk/wsas/java/modules/servlet-edition/conf/axis2.xml
   trunk/wsas/java/modules/standalone-edition/conf/axis2.xml
Log:
Adding the ReplicationHandler when Clusteing is enabled
Removing contextRoot parameter from axis2.xml files. The context root is calculated from the first request.



Modified: trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/AxisConfigAdmin.java
==============================================================================
--- trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/AxisConfigAdmin.java	(original)
+++ trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/AxisConfigAdmin.java	Wed May 16 02:44:51 2007
@@ -36,12 +36,6 @@
 
 public class AxisConfigAdmin {
 
-    public static final String PHASE_ORDER_TYPE_INFLOW = "inflow";
-    public static final String PHASE_ORDER_TYPE_OUTFLOW = "outflow";
-    public static final String PHASE_ORDER_TYPE_INFAULTFLOW = "infaultflow";
-    public static final String PHASE_ORDER_TYPE_OUTFAULTFLOW = "outfaultflow";
-
-
     private Logger logger = Logger.getLogger(AxisConfigAdmin.class);
 
     /**
@@ -49,25 +43,26 @@
      */
     public AxisConfigData getAxisConfigData() {
         AxisConfigData axisConfigData = new AxisConfigData();
-        AxisConfiguration axisConfiguration = MessageContext.getCurrentMessageContext()
-                .getConfigurationContext().getAxisConfiguration();
+        AxisConfiguration axisConfiguration =
+                MessageContext.getCurrentMessageContext()
+                        .getConfigurationContext().getAxisConfiguration();
 
         // setting the inphase order data
-        axisConfigData.setInflowPhaseOrder(getPhaseOrderData(axisConfiguration.getGlobalInFlow(),
-                                                             null, PHASE_ORDER_TYPE_INFLOW));
+        axisConfigData.setInflowPhaseOrder(getPhaseOrderData(axisConfiguration.getInFlowPhases(),
+                                                             null));
         axisConfigData.setOutflowPhaseOrder(getPhaseOrderData(
-                axisConfiguration.getGlobalOutPhases(), null, PHASE_ORDER_TYPE_OUTFLOW));
-        axisConfigData.setInfaultflowPhaseOrder(getPhaseOrderData(
-                axisConfiguration.getInFaultFlow(), null, PHASE_ORDER_TYPE_INFAULTFLOW));
-        axisConfigData.setOutfaultPhaseOrder(getPhaseOrderData(axisConfiguration.getOutFaultFlow(),
-                                                               null,
-                                                               PHASE_ORDER_TYPE_OUTFAULTFLOW));
+                axisConfiguration.getOutFlowPhases(), null));
+        axisConfigData.
+                setInfaultflowPhaseOrder(getPhaseOrderData(axisConfiguration.getInFaultFlowPhases(),
+                                                           null));
+        axisConfigData.
+                setOutfaultPhaseOrder(getPhaseOrderData(axisConfiguration.getOutFaultFlowPhases(),
+                                                        null));
 
         return axisConfigData;
     }
 
-    private PhaseOrderData getPhaseOrderData(List globalPhaseList, List localPhaseList,
-                                             String type) {
+    private PhaseOrderData getPhaseOrderData(List globalPhaseList, List localPhaseList) {
         PhaseOrderData phaseOrderData = new PhaseOrderData();
 
         int globalPhases = (globalPhaseList == null) ? 0 : globalPhaseList.size();
@@ -124,10 +119,10 @@
      * @return Axis config data for the given axis operation
      */
 
-    public AxisConfigData getOperationAxisConfigData(String service_id, String operation_id)
-            throws AxisFault {
-        logger.debug(
-                "getting handler details for service " + service_id + " operation " + operation_id);
+    public AxisConfigData getOperationAxisConfigData(String service_id,
+                                                     String operation_id) throws AxisFault {
+        logger.debug("Getting handler details for service " + service_id +
+                     " operation " + operation_id);
         AxisConfigData axisConfigData = new AxisConfigData();
         AxisConfiguration axisConfiguration =
                 MessageContext.getCurrentMessageContext().getConfigurationContext()
@@ -137,21 +132,19 @@
         AxisOperation axisOperation = axisService.getOperationByAction(operation_id);
 
         // adding phases to axis config data object
-        axisConfigData.setInflowPhaseOrder(getPhaseOrderData(axisConfiguration.getGlobalInFlow(),
-                                                             axisOperation.getRemainingPhasesInFlow(),
-                                                             PHASE_ORDER_TYPE_INFLOW));
-        axisConfigData.setOutflowPhaseOrder(getPhaseOrderData(
-                axisConfiguration.getGlobalOutPhases(), axisOperation.getPhasesOutFlow(),
-                PHASE_ORDER_TYPE_OUTFLOW));
-        axisConfigData.setInfaultflowPhaseOrder(getPhaseOrderData(
-                axisConfiguration.getInFaultFlow(), axisOperation.getPhasesInFaultFlow(),
-                PHASE_ORDER_TYPE_INFAULTFLOW));
-        axisConfigData.setOutfaultPhaseOrder(getPhaseOrderData(axisConfiguration.getOutFaultFlow(),
-                                                               axisOperation.getPhasesOutFaultFlow(),
-                                                               PHASE_ORDER_TYPE_OUTFAULTFLOW));
+        axisConfigData.
+                setInflowPhaseOrder(getPhaseOrderData(axisConfiguration.getInFlowPhases(),
+                                                      axisOperation.getRemainingPhasesInFlow()));
+        axisConfigData.
+                setOutflowPhaseOrder(getPhaseOrderData(axisConfiguration.getOutFlowPhases(),
+                                                       axisOperation.getPhasesOutFlow()));
+        axisConfigData.
+                setInfaultflowPhaseOrder(getPhaseOrderData(axisConfiguration.getInFaultFlowPhases(),
+                                                           axisOperation.getPhasesInFaultFlow()));
+        axisConfigData.
+                setOutfaultPhaseOrder(getPhaseOrderData(axisConfiguration.getOutFaultFlowPhases(),
+                                                        axisOperation.getPhasesOutFaultFlow()));
 
         return axisConfigData;
     }
-
-
 }

Modified: trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/GlobalAdmin.java
==============================================================================
--- trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/GlobalAdmin.java	(original)
+++ trunk/wsas/java/modules/admin/src/org/wso2/wsas/admin/service/GlobalAdmin.java	Wed May 16 02:44:51 2007
@@ -71,7 +71,7 @@
         String[] handlers = null;
         switch (flow) {
             case PhaseMetadata.IN_FLOW: {
-                ArrayList inflow = getAxisConfig().getGlobalInFlow();
+                ArrayList inflow = getAxisConfig().getInFlowPhases();
                 for (int i = 0; i < inflow.size(); i++) {
                     Phase phase = (Phase) inflow.get(i);
                     if (phase.getPhaseName().equals(phaseName)) {
@@ -86,7 +86,7 @@
                 break;
             }
             case PhaseMetadata.OUT_FLOW: {
-                ArrayList phases = getAxisConfig().getGlobalOutPhases();
+                ArrayList phases = getAxisConfig().getOutFlowPhases();
                 for (int i = 0; i < phases.size(); i++) {
                     Phase phase = (Phase) phases.get(i);
                     if (phase.getPhaseName().equals(phaseName)) {
@@ -101,7 +101,7 @@
                 break;
             }
             case PhaseMetadata.FAULT_IN_FLOW: {
-                ArrayList inflow = getAxisConfig().getInFaultFlow();
+                ArrayList inflow = getAxisConfig().getInFaultFlowPhases();
                 for (int i = 0; i < inflow.size(); i++) {
                     Phase phase = (Phase) inflow.get(i);
                     if (phase.getPhaseName().equals(phaseName)) {
@@ -116,7 +116,7 @@
                 break;
             }
             case PhaseMetadata.FAULT_OUT_FLOW: {
-                ArrayList inflow = getAxisConfig().getOutFaultFlow();
+                ArrayList inflow = getAxisConfig().getOutFaultFlowPhases();
                 for (int i = 0; i < inflow.size(); i++) {
                     Phase phase = (Phase) inflow.get(i);
                     if (phase.getPhaseName().equals(phaseName)) {
@@ -168,7 +168,7 @@
 
         switch (flow) {
             case PhaseMetadata.IN_FLOW: {
-                ArrayList inflow = getAxisConfig().getGlobalInFlow();
+                ArrayList inflow = getAxisConfig().getInFlowPhases();
                 phaseNames = new String[inflow.size()];
 
                 for (int i = 0; i < inflow.size(); i++) {
@@ -179,7 +179,7 @@
                 break;
             }
             case PhaseMetadata.OUT_FLOW: {
-                ArrayList inflow = getAxisConfig().getGlobalOutPhases();
+                ArrayList inflow = getAxisConfig().getOutFlowPhases();
                 phaseNames = new String[inflow.size()];
 
                 for (int i = 0; i < inflow.size(); i++) {
@@ -190,7 +190,7 @@
                 break;
             }
             case PhaseMetadata.FAULT_IN_FLOW: {
-                ArrayList inflow = getAxisConfig().getInFaultFlow();
+                ArrayList inflow = getAxisConfig().getInFaultFlowPhases();
                 phaseNames = new String[inflow.size()];
 
                 for (int i = 0; i < inflow.size(); i++) {
@@ -201,7 +201,7 @@
                 break;
             }
             case PhaseMetadata.FAULT_OUT_FLOW: {
-                ArrayList inflow = getAxisConfig().getOutFaultFlow();
+                ArrayList inflow = getAxisConfig().getOutFaultFlowPhases();
                 phaseNames = new String[inflow.size()];
 
                 for (int i = 0; i < inflow.size(); i++) {
@@ -212,7 +212,6 @@
                 break;
             }
         }
-
         return phaseNames;
     }
 

Modified: trunk/wsas/java/modules/core/src/org/wso2/wsas/util/ClusteringUtil.java
==============================================================================
--- trunk/wsas/java/modules/core/src/org/wso2/wsas/util/ClusteringUtil.java	(original)
+++ trunk/wsas/java/modules/core/src/org/wso2/wsas/util/ClusteringUtil.java	Wed May 16 02:44:51 2007
@@ -18,6 +18,7 @@
 import org.apache.axis2.AxisFault;
 import org.apache.axis2.Constants;
 import org.apache.axis2.cluster.ClusterManager;
+import org.apache.axis2.cluster.handlers.ReplicationHandler;
 import org.apache.axis2.context.ConfigurationContext;
 import org.apache.axis2.description.*;
 import org.apache.axis2.engine.AxisConfiguration;
@@ -45,6 +46,64 @@
                 isClusterManagerInitialized = true;
             }
 
+            // Context Manager
+            if(clusterManager.getContextManager() != null){
+                //TODO: Add the ReplicationHandler as the last handler in each flow
+                {
+                    Phase inFlowClusteringReplicationPhase = new Phase("ClusteringReplication");
+                    ReplicationHandler handler = new ReplicationHandler();
+                    HandlerDescription handlerDesc = handler.getHandlerDesc();
+                    PhaseRule rule = new PhaseRule("Replication");
+                    rule.setPhaseFirst(true);
+                    handlerDesc.setName("ReplicationHandler");
+                    handlerDesc.setClassName(ReplicationHandler.class.getName());
+                    handlerDesc.setRules(rule);
+                    inFlowClusteringReplicationPhase.addHandler(handler);
+//                    inFlowClusteringReplicationPhase.addHandler(handlerDesc);
+                    axisConfig.getInFlowPhases().add(inFlowClusteringReplicationPhase);
+                }
+
+               /* {
+                    Phase inFaultFlowClusteringReplicationPhase = new Phase("ClusteringReplication");
+                    ReplicationHandler handler = new ReplicationHandler();
+                    HandlerDescription handlerDesc = handler.getHandlerDesc();
+                    PhaseRule rule = new PhaseRule("Replication");
+                    rule.setPhaseFirst(true);
+                    handlerDesc.setName("ReplicationHandler");
+                    handlerDesc.setClassName(ReplicationHandler.class.getName());
+                    handlerDesc.setRules(rule);
+                    inFaultFlowClusteringReplicationPhase.addHandler(handler);
+                    axisConfig.getInFaultFlowPhases().add(inFaultFlowClusteringReplicationPhase);
+                }
+
+                {
+                    Phase outFlowClusteringReplicationPhase = new Phase("ClusteringReplication");
+                    ReplicationHandler handler = new ReplicationHandler();
+                    HandlerDescription handlerDesc = handler.getHandlerDesc();
+                    PhaseRule rule = new PhaseRule("Replication");
+                    rule.setPhaseFirst(true);
+                    handlerDesc.setName("ReplicationHandler");
+                    handlerDesc.setClassName(ReplicationHandler.class.getName());
+                    handlerDesc.setRules(rule);
+                    outFlowClusteringReplicationPhase.addHandler(handler);
+                    axisConfig.getOutFlowPhases().add(outFlowClusteringReplicationPhase);
+                }
+
+                {
+                    Phase outFaultFlowClusteringReplicationPhase = new Phase("ClusteringReplication");
+                    ReplicationHandler handler = new ReplicationHandler();
+                    HandlerDescription handlerDesc = handler.getHandlerDesc();
+                    PhaseRule rule = new PhaseRule("Replication");
+                    rule.setPhaseFirst(true);
+                    handlerDesc.setName("ReplicationHandler");
+                    handlerDesc.setClassName(ReplicationHandler.class.getName());
+                    handlerDesc.setRules(rule);
+                    outFaultFlowClusteringReplicationPhase.addHandler(handler);
+                    axisConfig.getOutFaultFlowPhases().add(outFaultFlowClusteringReplicationPhase);
+                }*/
+            }
+
+            // Configuration Manager
             if (clusterManager.getConfigurationManager() != null) {
                 Map msgReceiverMap = new HashMap();
                 msgReceiverMap.put(WSDL2Constants.MEP_URI_IN_OUT,
@@ -73,14 +132,13 @@
                     } catch (Exception e) {
                         throw AxisFault.makeFault(e);
                     }
-//                    axisConfig.addService(nodeManagerService);
                 } else {
                     axisConfig.addService(nodeManagerService);
                 }
 
                 // Add a RequestBlockingHandler. This is needed when "prepare" is called
-                ArrayList globalInFlow = axisConfig.getGlobalInFlow();
-                for (Iterator iterator = globalInFlow.iterator(); iterator.hasNext();) {
+                for (Iterator iterator = axisConfig.getInFlowPhases().iterator();
+                     iterator.hasNext();) {
                     Phase phase = (Phase) iterator.next();
                     if (phase instanceof DispatchPhase) {
                         PhaseRule rule = new PhaseRule("Dispatch");
@@ -90,8 +148,9 @@
                         HandlerDescription handlerDesc = handler.getHandlerDesc();
                         handlerDesc.setHandler(handler);
                         handlerDesc.setName("RequestBlockingHandler");
+                        handlerDesc.setClassName(RequestBlockingHandler.class.getName());
                         handlerDesc.setRules(rule);
-                        phase.addHandler(handlerDesc);
+                        phase.addHandler(handler);
                     }
                 }
             }

Modified: trunk/wsas/java/modules/servlet-edition/conf/axis2.xml
==============================================================================
--- trunk/wsas/java/modules/servlet-edition/conf/axis2.xml	(original)
+++ trunk/wsas/java/modules/servlet-edition/conf/axis2.xml	Wed May 16 02:44:51 2007
@@ -36,8 +36,7 @@
     <listener class="org.wso2.wsas.deployment.DeploymentInterceptor"/>
     <listener class="org.wso2.wsas.feed.FeedListener"/>
 
-    <!-- setting contextRoot and servicePath-->
-    <parameter name="contextRoot">/wso2wsas</parameter>
+    <!-- setting servicePath-->
     <parameter name="servicePath">services</parameter>
 
     <parameter name="userAgent"

Modified: trunk/wsas/java/modules/standalone-edition/conf/axis2.xml
==============================================================================
--- trunk/wsas/java/modules/standalone-edition/conf/axis2.xml	(original)
+++ trunk/wsas/java/modules/standalone-edition/conf/axis2.xml	Wed May 16 02:44:51 2007
@@ -4,7 +4,6 @@
     <!-- Globally engaged modules -->
     <!-- ================================================= -->
     <module ref="wso2statistics"/>
-    <!--<module ref="wso2tracer"/>-->
 
     <!-- ================================================= -->
     <!-- Parameters -->
@@ -32,7 +31,7 @@
     <listener class="org.wso2.wsas.deployment.DeploymentInterceptor"/>
     <listener class="org.wso2.wsas.feed.FeedListener"/>
 
-    <!-- setting contextPath and servicePath-->
+    <!-- setting servicePath-->
     <parameter name="contextRoot">/</parameter>
     <parameter name="servicePath">services</parameter>
 

Added: trunk/wsas/java/xdocs/web.xml
==============================================================================




More information about the Wsas-java-dev mailing list