You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by hi...@apache.org on 2010/04/30 09:52:25 UTC

svn commit: r939580 - in /synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2: Axis2SynapseEnvironment.java SynapseCallbackReceiver.java

Author: hiranya
Date: Fri Apr 30 07:52:25 2010
New Revision: 939580

URL: http://svn.apache.org/viewvc?rev=939580&view=rev
Log:
Code refactoring: Moved the proxy out sequence fault handler registration logic to the Axis2SynapseEnvironment#injectMessage method. This location is more suitable for this bit of code. (Related to SYNAPSE-630)


Modified:
    synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java
    synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java

Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java?rev=939580&r1=939579&r2=939580&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java Fri Apr 30 07:52:25 2010
@@ -37,6 +37,7 @@ import org.apache.synapse.core.SynapseEn
 import org.apache.synapse.endpoints.EndpointDefinition;
 import org.apache.synapse.endpoints.dispatch.Dispatcher;
 import org.apache.synapse.mediators.MediatorWorker;
+import org.apache.synapse.mediators.MediatorFaultHandler;
 import org.apache.synapse.mediators.base.SequenceMediator;
 import org.apache.synapse.util.UUIDGenerator;
 import org.apache.synapse.util.concurrent.SynapseThreadPool;
@@ -133,6 +134,25 @@ public class Axis2SynapseEnvironment imp
         ProxyService proxyService = synCtx.getConfiguration().getProxyService(proxyName);
         if (proxyService != null) {
 
+            if (proxyService.getTargetFaultSequence() != null) {
+                Mediator faultSequence = synCtx.getSequence(proxyService.getTargetFaultSequence());
+                if (faultSequence != null) {
+                    synCtx.pushFaultHandler(new MediatorFaultHandler(faultSequence));
+                } else {
+                    log.warn("Cloud not find any fault-sequence named :" +
+                                proxyService.getTargetFaultSequence() + "; Setting the deafault" +
+                                " fault sequence for out path");
+                    synCtx.pushFaultHandler(new MediatorFaultHandler(synCtx.getFaultSequence()));
+                }
+
+            } else if (proxyService.getTargetInLineFaultSequence() != null) {
+                synCtx.pushFaultHandler(
+                        new MediatorFaultHandler(proxyService.getTargetInLineFaultSequence()));
+
+            } else {
+                synCtx.pushFaultHandler(new MediatorFaultHandler(synCtx.getFaultSequence()));
+            }
+
             Mediator outSequence = getProxyOutSequence(synCtx, proxyService);
             if (outSequence != null) {
                 outSequence.mediate(synCtx);

Modified: synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java?rev=939580&r1=939579&r2=939580&view=diff
==============================================================================
--- synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java (original)
+++ synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/SynapseCallbackReceiver.java Fri Apr 30 07:52:25 2010
@@ -36,8 +36,6 @@ import org.apache.sandesha2.client.Sande
 import org.apache.synapse.FaultHandler;
 import org.apache.synapse.SynapseConstants;
 import org.apache.synapse.SynapseException;
-import org.apache.synapse.Mediator;
-import org.apache.synapse.mediators.MediatorFaultHandler;
 import org.apache.synapse.aspects.statistics.ErrorLogFactory;
 import org.apache.synapse.aspects.statistics.StatisticsReporter;
 import org.apache.synapse.config.SynapseConfigUtils;
@@ -326,36 +324,7 @@ public class SynapseCallbackReceiver imp
             for (Object key : synapseOutMsgCtx.getPropertyKeySet()) {
                 synapseInMessageContext.setProperty(
                         (String) key, synapseOutMsgCtx.getProperty((String) key));
-            }
-
-            Object proxyName = synapseOutMsgCtx.getProperty(SynapseConstants.PROXY_SERVICE);
-            if (proxyName != null) {
-                ProxyService proxy = synapseOutMsgCtx.getConfiguration().
-                        getProxyService((String) proxyName);
-
-                if (proxy.getTargetFaultSequence() != null) {
-                    Mediator faultSequence = synapseOutMsgCtx.getSequence(
-                            proxy.getTargetFaultSequence());
-                    if (faultSequence != null) {
-                        synapseInMessageContext.pushFaultHandler(
-                                new MediatorFaultHandler(faultSequence));
-                    } else {
-                        log.warn("Cloud not find any fault-sequence named :" +
-                                    proxy.getTargetFaultSequence() + "; Setting the deafault" +
-                                    " fault sequence for out path");
-                        synapseInMessageContext.pushFaultHandler(new MediatorFaultHandler(
-                                synapseInMessageContext.getFaultSequence()));
-                    }
-
-                } else if (proxy.getTargetInLineFaultSequence() != null) {
-                    synapseInMessageContext.pushFaultHandler(
-                            new MediatorFaultHandler(proxy.getTargetInLineFaultSequence()));
-
-                } else {
-                    synapseInMessageContext.pushFaultHandler(new MediatorFaultHandler(
-                            synapseInMessageContext.getFaultSequence()));
-                }
-           }
+            }            
 
             // If this response is related to session affinity endpoints -Server initiated session
             Dispatcher dispatcher =