You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@synapse.apache.org by su...@apache.org on 2011/02/09 11:04:23 UTC
svn commit: r1068825 - in /synapse/trunk/java/modules:
core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java
extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
Author: supun
Date: Wed Feb 9 10:04:23 2011
New Revision: 1068825
URL: http://svn.apache.org/viewvc?rev=1068825&view=rev
Log:
adding the support to have a receiving sequence for a send
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/core/axis2/Axis2SynapseEnvironment.java
synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.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=1068825&r1=1068824&r2=1068825&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 Wed Feb 9 10:04:23 2011
@@ -29,6 +29,7 @@ import org.apache.axis2.description.InOu
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.synapse.*;
+import org.apache.synapse.config.xml.XMLConfigConstants;
import org.apache.synapse.task.SynapseTaskManager;
import org.apache.synapse.aspects.statistics.StatisticsCollector;
import org.apache.synapse.config.SynapseConfiguration;
@@ -45,6 +46,7 @@ import org.apache.synapse.util.xpath.ext
import javax.xml.namespace.QName;
import java.util.HashMap;
import java.util.Map;
+import java.util.Set;
import java.util.concurrent.ExecutorService;
/**
@@ -144,12 +146,40 @@ public class Axis2SynapseEnvironment imp
}
}
+ String receivingSequence = (String) synCtx.getProperty(SynapseConstants.RECEIVING_SEQUENCE);
+ // remove the receivingSequence property
+ Set keySet = synCtx.getPropertyKeySet();
+ if (keySet != null) {
+ keySet.remove(SynapseConstants.RECEIVING_SEQUENCE);
+ }
+
// if this is not a response to a proxy service
String proxyName = (String) synCtx.getProperty(SynapseConstants.PROXY_SERVICE);
if (proxyName == null || "".equals(proxyName)) {
if (log.isDebugEnabled()) {
log.debug("Using Main Sequence for injected message");
}
+
+ if (receivingSequence != null) {
+ if (log.isDebugEnabled()) {
+ log.debug("Using Sequence with name: " + receivingSequence
+ + " for injected message");
+ }
+ Mediator seqMediator = synCtx.getSequence(receivingSequence);
+ if (seqMediator != null) {
+ seqMediator.mediate(synCtx);
+ } else {
+ log.warn("Cannot find a Sequence with name: " + receivingSequence
+ + " for injecting the response message");
+ return false;
+ }
+ } else {
+ if (log.isDebugEnabled()) {
+ log.debug("Using a Sequence for injected message");
+ }
+ return synCtx.getMainSequence().mediate(synCtx);
+ }
+
return synCtx.getMainSequence().mediate(synCtx);
}
@@ -176,7 +206,20 @@ public class Axis2SynapseEnvironment imp
}
Mediator outSequence = getProxyOutSequence(synCtx, proxyService);
- if (outSequence != null) {
+ if (receivingSequence != null) {
+ if (log.isDebugEnabled()) {
+ log.debug("Using Sequence with name: " + receivingSequence
+ + " for injected message");
+ }
+ Mediator seqMediator = synCtx.getSequence(receivingSequence);
+ if (seqMediator != null) {
+ seqMediator.mediate(synCtx);
+ } else {
+ log.warn("Cannot find a Sequence with name: " + receivingSequence
+ + " for injecting the message");
+ return false;
+ }
+ } else if (outSequence != null) {
outSequence.mediate(synCtx);
} else {
if (log.isDebugEnabled()) {
Modified: synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java
URL: http://svn.apache.org/viewvc/synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java?rev=1068825&r1=1068824&r2=1068825&view=diff
==============================================================================
--- synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java (original)
+++ synapse/trunk/java/modules/extensions/src/main/java/org/apache/synapse/mediators/throttle/ThrottleMediator.java Wed Feb 9 10:04:23 2011
@@ -493,7 +493,7 @@ public class ThrottleMediator extends Ab
/**
* To set the policy key - The key for which lookup from the registry
*
- * @param policyKey Key for picking policy from the registry
+ * @param policyKey Value for picking policy from the registry
*/
public void setPolicyKey(String policyKey) {
this.policyKey = policyKey;