You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ta...@apache.org on 2014/12/09 21:15:28 UTC
qpid-jms git commit: Add some notes on future work needed.
Repository: qpid-jms
Updated Branches:
refs/heads/master c5ec1a549 -> 4e0c88fab
Add some notes on future work needed.
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/4e0c88fa
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/4e0c88fa
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/4e0c88fa
Branch: refs/heads/master
Commit: 4e0c88faba730d1e2d66179c433fcd79cfe132a1
Parents: c5ec1a5
Author: Timothy Bish <ta...@gmail.com>
Authored: Tue Dec 9 15:15:13 2014 -0500
Committer: Timothy Bish <ta...@gmail.com>
Committed: Tue Dec 9 15:15:13 2014 -0500
----------------------------------------------------------------------
.../main/java/org/apache/qpid/jms/JmsMessageConsumer.java | 10 ++++++++++
1 file changed, 10 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/4e0c88fa/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageConsumer.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageConsumer.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageConsumer.java
index 2d91542..c8a9703 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageConsumer.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageConsumer.java
@@ -326,8 +326,18 @@ public class JmsMessageConsumer implements MessageConsumer, JmsMessageAvailableC
JmsInboundMessageDispatch envelope;
while (session.isStarted() && (envelope = messageQueue.dequeueNoWait()) != null) {
try {
+ // TODO - We are currently acking early. We need to ack after onMessage
+ // with either a delivered or a consumed ack based on the session
+ // ack mode. We also need to check for the message having been
+ // acked by message.acknowledge() in onMessage so we don't do a
+ // delivered ack following a real ack in the case of client ack
+ // mode or a future individual ack mode.
messageListener.onMessage(copy(ack(envelope)));
} catch (Exception e) {
+ // TODO - We need to handle exception of on message with some other
+ // ack such as rejected and consider adding a redlivery policy
+ // to control when we might just poison the message with an ack
+ // of modified set to not deliverable here.
session.getConnection().onException(e);
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org