Author: gsim
Date: Thu Nov 19 15:43:10 2015
New Revision: 1715199
URL: http://svn.apache.org/viewvc?rev=1715199&view=rev
Log:
QPID-6870: qpidd does not at present have facility to track deliverability to
individual links, so treat undeliverable-here as rejection
Modified:
qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp
Modified: qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp
URL:
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp?rev=1715199&r1=1715198&r2=1715199&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/broker/amqp/Outgoing.cpp Thu Nov 19 15:43:10
2015
@@ -139,8 +139,15 @@ void OutgoingFromQueue::handle(pn_delive
outgoingMessageRejected();//TODO: not quite true...
break;
case PN_MODIFIED:
- if (preAcquires()) queue->release(r.cursor,
pn_disposition_is_failed(pn_delivery_remote(delivery)));
- //TODO: handle undeliverable-here and message-annotations
+ if (preAcquires()) {
+ //TODO: handle message-annotations
+ if
(pn_disposition_is_undeliverable(pn_delivery_remote(delivery))) {
+ //treat undeliverable here as rejection
+ queue->reject(r.cursor);
+ } else {
+ queue->release(r.cursor,
pn_disposition_is_failed(pn_delivery_remote(delivery)));
+ }
+ }
outgoingMessageRejected();//TODO: not quite true...
break;
default:
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]