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 =