From 7bed90ccceffeee46956d9fb5df42fb946d53c31 Mon Sep 17 00:00:00 2001 From: Mark Fisher Date: Sun, 15 Mar 2009 22:02:19 +0000 Subject: [PATCH] INT-539 --- .../integration/jms/DefaultJmsHeaderMapper.java | 15 ++++++++++++++- .../integration/jms/JmsHeaders.java | 4 +++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/DefaultJmsHeaderMapper.java b/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/DefaultJmsHeaderMapper.java index 52f3aaf243..5d8aad6ac0 100644 --- a/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/DefaultJmsHeaderMapper.java +++ b/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/DefaultJmsHeaderMapper.java @@ -34,7 +34,20 @@ import org.springframework.integration.core.MessageHeaders; import org.springframework.util.StringUtils; /** - * Default implementation of {@link JmsHeaderMapper}. + * Default implementation of {@link JmsHeaderMapper}. + *

+ * This implementation copies JMS API headers (e.g. JMSReplyTo) to and from + * Spring Integration Messages. Any user-defined properties will also be copied + * from a JMS Message to a Spring Integration Message, and any other headers + * on a Spring Integration Message (beyond the JMS API headers) will likewise + * be copied to a JMS Message. Those other headers will be copied to the + * general properties of a JMS Message whereas the JMS API headers are passed + * to the appropriate setter methods (e.g. setJMSReplyTo). + *

+ * Constants for the JMS API headers are defined in {@link JmsHeaders}. + * Note that the JMSMessageID and JMSRedelivered flag are only copied + * from a JMS Message. Those values will not be passed + * along from a Spring Integration Message to an outbound JMS Message. * * @author Mark Fisher */ diff --git a/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/JmsHeaders.java b/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/JmsHeaders.java index f40a9317ef..c7e883ca7e 100644 --- a/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/JmsHeaders.java +++ b/org.springframework.integration.jms/src/main/java/org/springframework/integration/jms/JmsHeaders.java @@ -27,7 +27,9 @@ import org.springframework.integration.core.MessageHeaders; public abstract class JmsHeaders { /** - * Prefix for any message header that should be passed for usage by the JMS transport. + * Prefix used for JMS API related headers in order to distinguish from + * user-defined headers and other internal headers (e.g. correlationId). + * @see DefaultJmsHeaderMapper */ public static final String PREFIX = MessageHeaders.PREFIX + "jms_";