CAMEL-10679

for requested PR 2.18.x

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/58c4ae09
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/58c4ae09
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/58c4ae09

Branch: refs/heads/camel-2.18.x
Commit: 58c4ae096c2067718af634ddd750c15d69bd6fce
Parents: 76444ac
Author: marcusmesserkewill <marcus.mes...@kewill.com>
Authored: Mon Jan 9 15:38:42 2017 +0100
Committer: marcusmesserkewill <marcus.mes...@kewill.com>
Committed: Mon Jan 9 15:38:42 2017 +0100

----------------------------------------------------------------------
 .../ws/SpringWebserviceConfiguration.java       | 17 +++------
 .../spring/ws/SpringWebserviceProducer.java     | 38 +++++++++++---------
 .../spring/ws/SoapResponseAttachmentTest.java   |  8 ++---
 3 files changed, 30 insertions(+), 33 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/58c4ae09/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConfiguration.java
----------------------------------------------------------------------
diff --git 
a/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConfiguration.java
 
b/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConfiguration.java
index ebaec3d..5e5be6f 100644
--- 
a/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConfiguration.java
+++ 
b/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceConfiguration.java
@@ -74,7 +74,7 @@ public class SpringWebserviceConfiguration {
     private boolean allowResponseHeaderOverride;
     @UriParam(label = "producer")
     private boolean allowResponseAttachmentOverride;
-    
+
     /* Consumer configuration */
     @UriParam(label = "consumer")
     private EndpointMappingKey endpointMappingKey;
@@ -385,9 +385,6 @@ public class SpringWebserviceConfiguration {
         this.messageIdStrategy = messageIdStrategy;
     }
 
-    /**
-     * @return boolean - true, will override header with spring-ws response 
message header
-     */
     public boolean isAllowResponseHeaderOverride() {
         return allowResponseHeaderOverride;
     }
@@ -397,26 +394,22 @@ public class SpringWebserviceConfiguration {
      * If the invoked service appends or rewrites the soap header this option 
when set to true, allows the modified
      * soap header to be overwritten in in/out message headers
      * 
-     * @param allowResponseHeaderOverride
-     *            - true, will override header with spring-ws response message 
header
+     * @param allowResponseHeaderOverride - true, will override header with 
spring-ws response message header
      */
     public void setAllowResponseHeaderOverride(boolean 
allowResponseHeaderOverride) {
         this.allowResponseHeaderOverride = allowResponseHeaderOverride;
     }
-    /**
-     * @return boolean - true, will override attachments with spring-ws 
response message attachments
-     */
+
     public boolean isAllowResponseAttachmentOverride() {
         return allowResponseAttachmentOverride;
     }
 
     /**
-     * Option to override soap response attachments in in/out exchange with 
attachments info the actual service layer.
+     * Option to override soap response attachments in in/out exchange with 
attachments from the actual service layer.
      * If the invoked service appends or rewrites the soap attachments this 
option when set to true, allows the modified
      * soap attachments to be overwritten in in/out message attachments
      * 
-     * @param allowResponseAttachmentOverride
-     *            - true, will override attachments with spring-ws response 
message attachments
+     * @param allowResponseAttachmentOverride - true, will override 
attachments with spring-ws response message attachments
      */
     public void setAllowResponseAttachmentOverride(boolean 
allowResponseAttachmentOverride) {
         this.allowResponseAttachmentOverride = allowResponseAttachmentOverride;

http://git-wip-us.apache.org/repos/asf/camel/blob/58c4ae09/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
----------------------------------------------------------------------
diff --git 
a/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
 
b/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
index b1a4a16..3092c93 100644
--- 
a/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
+++ 
b/components/camel-spring-ws/src/main/java/org/apache/camel/component/spring/ws/SpringWebserviceProducer.java
@@ -100,29 +100,33 @@ public class SpringWebserviceProducer extends 
DefaultProducer {
                 SoapMessage soapMessage = (SoapMessage) responseMessage;
                 if (ExchangeHelper.isOutCapable(exchange)) {
                     exchange.getOut().copyFromWithNewBody(exchange.getIn(), 
soapMessage.getPayloadSource());
-                    processHeaderAndAttachments(exchange.getOut(), 
soapMessage);
+                    
populateHeaderAndAttachmentsFromResponse(exchange.getOut(), soapMessage);
                 } else {
                     exchange.getIn().setBody(soapMessage.getPayloadSource());
-                    processHeaderAndAttachments(exchange.getIn(), soapMessage);
+                    populateHeaderAndAttachmentsFromResponse(exchange.getIn(), 
soapMessage);
                 }
 
             }
         });
     }
+ 
     /**
      * Populates soap message headers and attachments from soap response
-     * @param inOrOut {@link Message}
-     * @param soapMessage {@link SoapMessage}
+     * 
+     * @param inOrOut
+     *            {@link Message}
+     * @param soapMessage
+     *            {@link SoapMessage}
      */
-    private void processHeaderAndAttachments(Message inOrOut, SoapMessage 
soapMessage) {
-        if (soapMessage.getSoapHeader() != null && 
getEndpoint().getConfiguration().isAllowResponseHeaderOverride()) { 
-                populateMessageHeaderFromResponse(inOrOut, 
soapMessage.getSoapHeader());
-        }
-        if (soapMessage.getAttachments() != null && 
getEndpoint().getConfiguration().isAllowResponseAttachmentOverride()) {
-                populateMessageAttachmentsFromResponse(inOrOut, 
soapMessage.getAttachments());
-        }
+    private void populateHeaderAndAttachmentsFromResponse(Message inOrOut, 
SoapMessage soapMessage) {
+        if (soapMessage.getSoapHeader() != null && 
getEndpoint().getConfiguration().isAllowResponseHeaderOverride()) {
+            populateMessageHeaderFromResponse(inOrOut, 
soapMessage.getSoapHeader());
+        }
+        if (soapMessage.getAttachments() != null && 
getEndpoint().getConfiguration().isAllowResponseAttachmentOverride()) {
+            populateMessageAttachmentsFromResponse(inOrOut, 
soapMessage.getAttachments());
+        }
     }
-    
+
     /**
      * Populates message headers from soapHeader response
      * 
@@ -155,12 +159,12 @@ public class SpringWebserviceProducer extends 
DefaultProducer {
      * @param soapMessage {@link SoapMessage}
      */
     private void populateMessageAttachmentsFromResponse(Message inOrOut, 
Iterator<Attachment> attachments) {
-       while (attachments.hasNext()) {
-               Attachment attachment = attachments.next();
-               inOrOut.getAttachments().put(attachment.getContentId(), 
attachment.getDataHandler());
-       }
+        while (attachments.hasNext()) {
+            Attachment attachment = attachments.next();
+            inOrOut.getAttachments().put(attachment.getContentId(), 
attachment.getDataHandler());
+        }
     }    
-    
+      
     private void prepareMessageSenders(SpringWebserviceConfiguration 
configuration) {
         // Skip this whole thing if none of the relevant config options are 
set.
         if (!(configuration.getTimeout() > -1) && 
configuration.getSslContextParameters() == null) {

http://git-wip-us.apache.org/repos/asf/camel/blob/58c4ae09/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/SoapResponseAttachmentTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/SoapResponseAttachmentTest.java
 
b/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/SoapResponseAttachmentTest.java
index 6ec1ca8..168de75 100644
--- 
a/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/SoapResponseAttachmentTest.java
+++ 
b/components/camel-spring-ws/src/test/java/org/apache/camel/component/spring/ws/SoapResponseAttachmentTest.java
@@ -15,19 +15,19 @@
  * limitations under the License.
  */
 package org.apache.camel.component.spring.ws;
-
-import static org.junit.Assert.assertNotNull;
-
 import javax.activation.DataHandler;
 
 import org.apache.camel.Exchange;
 import org.apache.camel.Processor;
 import org.apache.camel.Produce;
 import org.apache.camel.ProducerTemplate;
+
 import org.junit.Test;
 import org.springframework.test.context.ContextConfiguration;
 import 
org.springframework.test.context.junit4.AbstractJUnit4SpringContextTests;
 
+import static org.junit.Assert.assertNotNull;
+
 @ContextConfiguration
 public class SoapResponseAttachmentTest extends 
AbstractJUnit4SpringContextTests {
 
@@ -46,7 +46,7 @@ public class SoapResponseAttachmentTest extends 
AbstractJUnit4SpringContextTests
      * @throws Exception
      */
     @Test()
-    public void consumeStockQuoteWebserviceWithSoapHeader() throws Exception {
+    public void consumeStockQuoteWebserviceWithSoapResponseAttachment() throws 
Exception {
         Exchange result = template.request("direct:stockQuoteWebservice", new 
Processor() {
 
             @Override

Reply via email to