Repository: camel Updated Branches: refs/heads/camel-2.17.x bea972e99 -> f0a40b39f refs/heads/camel-2.18.x 21c04b635 -> d5744422d refs/heads/master d28e4fd60 -> a5cd5de4a
CAMEL-10582: Fixing copying of immutable Spring headers Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/6c7a5e72 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/6c7a5e72 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/6c7a5e72 Branch: refs/heads/master Commit: 6c7a5e72fe86aa3b449e3da803ed0dbf38529f6e Parents: d28e4fd Author: Boris Kuzmic <boris.kuz...@ericsson.com> Authored: Fri Dec 9 16:35:34 2016 +0100 Committer: Claus Ibsen <davscl...@apache.org> Committed: Mon Dec 12 09:59:59 2016 +0100 ---------------------------------------------------------------------- .../integration/SpringIntegrationMessage.java | 2 +- .../SpringIntegrationMessageTest.java | 28 ++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/6c7a5e72/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationMessage.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationMessage.java b/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationMessage.java index a5463d7..16187a9 100644 --- a/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationMessage.java +++ b/components/camel-spring-integration/src/main/java/org/apache/camel/component/spring/integration/SpringIntegrationMessage.java @@ -53,7 +53,7 @@ public class SpringIntegrationMessage extends DefaultMessage { setMessageId(that.getMessageId()); setBody(that.getBody()); - getHeaders().putAll(that.getHeaders()); + super.getHeaders().putAll(that.getHeaders()); if (that instanceof SpringIntegrationMessage) { SpringIntegrationMessage orig = (SpringIntegrationMessage) that; setMessage(orig.getMessage()); http://git-wip-us.apache.org/repos/asf/camel/blob/6c7a5e72/components/camel-spring-integration/src/test/java/org/apache/camel/component/spring/integration/SpringIntegrationMessageTest.java ---------------------------------------------------------------------- diff --git a/components/camel-spring-integration/src/test/java/org/apache/camel/component/spring/integration/SpringIntegrationMessageTest.java b/components/camel-spring-integration/src/test/java/org/apache/camel/component/spring/integration/SpringIntegrationMessageTest.java new file mode 100644 index 0000000..0ab5dc7 --- /dev/null +++ b/components/camel-spring-integration/src/test/java/org/apache/camel/component/spring/integration/SpringIntegrationMessageTest.java @@ -0,0 +1,28 @@ +package org.apache.camel.component.spring.integration; + +import org.junit.Test; +import org.springframework.messaging.support.MessageBuilder; + +import static org.junit.Assert.assertTrue; + +public class SpringIntegrationMessageTest { + + @Test + public void testCopyFrom() { + org.springframework.messaging.Message testSpringMessage = + MessageBuilder.withPayload("Test") + .setHeader("header1", "value1") + .setHeader("header2", "value2") + .build(); + + SpringIntegrationMessage original = new SpringIntegrationMessage(testSpringMessage); + + SpringIntegrationMessage copy = new SpringIntegrationMessage(testSpringMessage); + + copy.copyFrom(original); + + assertTrue(copy.getHeaders().containsKey("header1")); + assertTrue(copy.getHeaders().containsKey("header2")); + } + +}