You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2014/09/30 15:22:45 UTC

svn commit: r1628434 - /qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java

Author: robbie
Date: Tue Sep 30 13:22:44 2014
New Revision: 1628434

URL: http://svn.apache.org/r1628434
Log:
PROTON-704: subtract 1 when setting delivery-count header based on JMSXDeliveryCount during outbound JMS transformation

Modified:
    qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java

Modified: qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java
URL: http://svn.apache.org/viewvc/qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java?rev=1628434&r1=1628433&r2=1628434&view=diff
==============================================================================
--- qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java (original)
+++ qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java Tue Sep 30 13:22:44 2014
@@ -166,7 +166,12 @@ public class JMSMappingOutboundTransform
             } else if( key.equals(firstAcquirerKey) ) {
                 header.setFirstAcquirer(msg.getBooleanProperty(key));
             } else if( key.startsWith("JMSXDeliveryCount") ) {
-                header.setDeliveryCount(new UnsignedInteger(msg.getIntProperty(key)));
+                // The AMQP delivery-count field only includes prior failed delivery attempts,
+                // whereas JMSXDeliveryCount includes the first/current delivery attempt.
+                int amqpDeliveryCount = msg.getIntProperty(key) - 1;
+                if( amqpDeliveryCount > 0 ) {
+                    header.setDeliveryCount(new UnsignedInteger(amqpDeliveryCount));
+                }
             } else if( key.startsWith("JMSXUserID") ) {
                 String value = msg.getStringProperty(key);
                 props.setUserId(new Binary(value.getBytes("UTF-8")));



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org