summaryrefslogtreecommitdiff
path: root/java/client
diff options
context:
space:
mode:
Diffstat (limited to 'java/client')
-rw-r--r--java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java34
1 files changed, 19 insertions, 15 deletions
diff --git a/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java b/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java
index 014fd36414..4ac77f1374 100644
--- a/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java
+++ b/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java
@@ -250,12 +250,28 @@ public class BasicMessageConsumer extends Closeable implements MessageConsumer
}
}
- private void preApplicationProcessing(AbstractJMSMessage jmsMsg) throws JMSException
+ private void preApplicationProcessing(AbstractJMSMessage msg) throws JMSException
{
- if (_session.getAcknowledgeMode() == Session.CLIENT_ACKNOWLEDGE)
+ switch (_acknowledgeMode)
{
- _unacknowledgedDeliveryTags.add(jmsMsg.getDeliveryTag());
+
+ case Session.CLIENT_ACKNOWLEDGE:
+ _unacknowledgedDeliveryTags.add(msg.getDeliveryTag());
+ break;
+
+ case Session.SESSION_TRANSACTED:
+ if (isNoConsume())
+ {
+ _session.acknowledgeMessage(msg.getDeliveryTag(), false);
+ }
+ else
+ {
+ _logger.info("Recording tag for commit:" + msg.getDeliveryTag());
+ _receivedDeliveryTags.add(msg.getDeliveryTag());
+ }
+
+ break;
}
_session.setInRecovery(false);
@@ -714,18 +730,6 @@ public class BasicMessageConsumer extends Closeable implements MessageConsumer
}
break;
-
- case Session.SESSION_TRANSACTED:
- if (isNoConsume())
- {
- _session.acknowledgeMessage(msg.getDeliveryTag(), false);
- }
- else
- {
- _receivedDeliveryTags.add(msg.getDeliveryTag());
- }
-
- break;
}
}