Author: charith
Date: Tue Dec 13 09:38:48 2011
New Revision: 1213629
URL: http://svn.apache.org/viewvc?rev=1213629&view=rev
Log:
Fix SYNAPSE-805
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/BlockingMessageSender.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/ForwardingJob.java
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/MessageForwardingProcessorView.java
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/BlockingMessageSender.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/BlockingMessageSender.java?rev=1213629&r1=1213628&r2=1213629&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/BlockingMessageSender.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/BlockingMessageSender.java
Tue Dec 13 09:38:48 2011
@@ -42,6 +42,7 @@ import org.apache.synapse.MessageContext
import org.apache.synapse.SynapseConstants;
import org.apache.synapse.SynapseException;
import org.apache.synapse.core.axis2.Axis2MessageContext;
+import org.apache.synapse.endpoints.EndpointDefinition;
import org.apache.synapse.util.MessageHelper;
@@ -77,10 +78,20 @@ public class BlockingMessageSender {
}
}
- public MessageContext send(MessageContext messageIn , String serviceUrl)
throws Exception {
+ /**
+ * Send the message to a given AddressEndpoint in a blocking manner
+ * @param endpoint EndpointDefinition for the given address endpoint
+ * @param messageIn Synapse Message Context to be sent
+ * @return OutPut message Context
+ * @throws Exception
+ */
+ public MessageContext send(EndpointDefinition endpoint, MessageContext
messageIn)
+ throws Exception {
+
+ String serviceUrl = endpoint.getAddress();
if(log.isDebugEnabled()) {
- log.debug("Start Sending the Message ");
+ log.debug("Start Sending the Message : " +
messageIn.getMessageID());
}
try {
@@ -106,26 +117,22 @@ public class BlockingMessageSender {
}
- //After setting all the options we need to find the MEP of the
Message
- org.apache.axis2.context.MessageContext axis2Ctx =
- ((Axis2MessageContext)messageOut).getAxis2MessageContext();
-
- boolean outOnlyMessage = "true".equals(messageIn.getProperty(
- SynapseConstants.OUT_ONLY)) ||
WSDL2Constants.MEP_URI_IN_ONLY.equals(
- axis2Ctx.getOperationContext()
- .getAxisOperation().getMessageExchangePattern());
+ //After setting all the options we need to find the MEP of the
Message
+ org.apache.axis2.context.MessageContext axis2Ctx =
+ ((Axis2MessageContext)
messageOut).getAxis2MessageContext();
+
+ boolean outOnlyMessage = "true".equals(messageIn.getProperty(
+ SynapseConstants.OUT_ONLY)) ||
WSDL2Constants.MEP_URI_IN_ONLY.equals(
+ axis2Ctx.getOperationContext()
+ .getAxisOperation().getMessageExchangePattern());
// Here We consider all other Messages that evaluates to
outOnlyMessage == false
// follows out in mep.
- if(log.isDebugEnabled()) {
+ if (log.isDebugEnabled()) {
log.debug("Invoking service Url " + serviceUrl + " with
Message" +
messageIn.getMessageID());
}
-
-
-
-
options.setProperty(
AddressingConstants.DISABLE_ADDRESSING_FOR_OUT_MESSAGES,
Boolean.TRUE);
@@ -141,6 +148,12 @@ public class BlockingMessageSender {
}
}
+ if (endpoint.isUseMTOM()) {
+ options.setProperty(Constants.Configuration.ENABLE_MTOM,
Constants.VALUE_TRUE);
+ } else if (endpoint.isUseSwa()) {
+ options.setProperty(Constants.Configuration.ENABLE_SWA,
Constants.VALUE_TRUE);
+ }
+
sc.setOptions(options);
OMElement result = null;
try {
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/ForwardingJob.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/ForwardingJob.java?rev=1213629&r1=1213628&r2=1213629&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/ForwardingJob.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/ForwardingJob.java
Tue Dec 13 09:38:48 2011
@@ -123,11 +123,10 @@ public class ForwardingJob implements St
Endpoint ep = messageContext.getEndpoint(targetEp);
if (ep instanceof AddressEndpoint) {
- AddressEndpoint addEp = (AddressEndpoint) ep;
- String addressUrl = addEp.getDefinition().getAddress();
try {
- MessageContext outCtx =
sender.send(messageContext, addressUrl);
+ MessageContext outCtx = sender.send(
+ ((AddressEndpoint) ep).getDefinition(),
messageContext);
if (outCtx != null && "true".equals(outCtx.
getProperty(ForwardingProcessorConstants.BLOCKING_SENDER_ERROR))) {
Modified:
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/MessageForwardingProcessorView.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/MessageForwardingProcessorView.java?rev=1213629&r1=1213628&r2=1213629&view=diff
==============================================================================
---
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/MessageForwardingProcessorView.java
(original)
+++
synapse/trunk/java/modules/core/src/main/java/org/apache/synapse/message/processors/forward/MessageForwardingProcessorView.java
Tue Dec 13 09:38:48 2011
@@ -199,11 +199,10 @@ public class MessageForwardingProcessorV
Endpoint ep = messageContext.getEndpoint(targetEp);
if (ep instanceof AddressEndpoint) {
- AddressEndpoint addEp = (AddressEndpoint) ep;
- String addressUrl = addEp.getDefinition().getAddress();
try {
- MessageContext outCtx = sender.send(messageContext,
addressUrl);
+ MessageContext outCtx = sender.send(
+ ((AddressEndpoint) ep).getDefinition(),
messageContext);
// If no Exception Occurred We remove the Message
if (delete) {
messageStore.poll();