From f6cc6fa3e7b1ea3b0a85ff35e08dbb0719a24cbc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Piotr=20Ma=C5=9Blanka?= <piotr.maslanka@henrietta.com.pl> Date: Mon, 12 Dec 2016 21:43:08 +0100 Subject: [PATCH] ack() and nack() can be waited upon --- coolamqp/handler.py | 15 ++++++++++----- coolamqp/messages.py | 6 ++++-- setup.py | 2 +- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/coolamqp/handler.py b/coolamqp/handler.py index aed7aea..7b07bff 100644 --- a/coolamqp/handler.py +++ b/coolamqp/handler.py @@ -210,10 +210,13 @@ class ClusterHandlerThread(threading.Thread): Order acknowledging a message. :param receivedMessage: a ReceivedMessage object to ack :param on_completed: callable/0 to call when acknowledgemenet succeeded + :return: an AcknowledgeMess """ - self.order_queue.append(AcknowledgeMessage(receivedMessage.connect_id, + a = AcknowledgeMessage(receivedMessage.connect_id, receivedMessage.delivery_tag, - on_completed=on_completed)) + on_completed=on_completed) + self.order_queue.append(a) + return a def _do_nackmessage(self, receivedMessage, on_completed=None): @@ -222,6 +225,8 @@ class ClusterHandlerThread(threading.Thread): :param receivedMessage: a ReceivedMessage object to ack :param on_completed: callable/0 to call when acknowledgemenet succeeded """ - self.order_queue.append(NAcknowledgeMessage(receivedMessage.connect_id, - receivedMessage.delivery_tag, - on_completed=on_completed)) + a = NAcknowledgeMessage(receivedMessage.connect_id, + receivedMessage.delivery_tag, + on_completed=on_completed) + self.order_queue.append(a) + return a diff --git a/coolamqp/messages.py b/coolamqp/messages.py index fde01b2..a3667bd 100644 --- a/coolamqp/messages.py +++ b/coolamqp/messages.py @@ -47,16 +47,18 @@ class ReceivedMessage(Message): :param on_completed: callable/0 to call on acknowledged. Callable will be executed in ClusterHandlerThread's context. + :return: an Order, that can ve waited upon for a result """ - self.cht._do_nackmessage(self, on_completed=on_completed) + return self.cht._do_nackmessage(self, on_completed=on_completed) def ack(self, on_completed=None): """ Acknowledge this message to the broker. :param on_completed: callable/0 to call on acknowledged. Callable will be executed in ClusterHandlerThread's context. + :return: an Order, that can ve waited upon for a result """ - self.cht._do_ackmessage(self, on_completed=on_completed) + return self.cht._do_ackmessage(self, on_completed=on_completed) class Exchange(object): diff --git a/setup.py b/setup.py index 07e0a05..c206b4d 100644 --- a/setup.py +++ b/setup.py @@ -3,7 +3,7 @@ from distutils.core import setup setup(name='CoolAMQP', - version='0.5', + version='0.6', description='The AMQP client library', author=u'DMS Serwis s.c.', author_email='piotrm@smok.co', -- GitLab