moksha/api/hub/consumer.py | 6 ++++--
moksha/api/widgets/amqp/amqp.py | 3 ++-
moksha/hub/hub.py | 3 ++-
moksha/templates/amqp_socket.mak | 3 ++-
4 files changed, 10 insertions(+), 5 deletions(-)
New commits:
commit 4b7c4495c1d5bebce4f7482a9bf355273db03357
Author: Luke Macken <lmacken(a)redhat.com>
Date: Thu May 5 00:40:47 2011 -0400
Declare auto-deleting AMQP queues
diff --git a/moksha/api/hub/consumer.py b/moksha/api/hub/consumer.py
index 0d24094..e566cdf 100644
--- a/moksha/api/hub/consumer.py
+++ b/moksha/api/hub/consumer.py
@@ -51,7 +51,8 @@ class Consumer(object):
if isinstance(self.hub, AMQPLibHub):
# AMQPLibHub specific
queue_name = str(uuid.uuid4())
- self.hub.queue_declare(queue=queue_name, exclusive=True)
+ self.hub.queue_declare(queue=queue_name, exclusive=True,
+ auto_delete=True)
self.hub.exchange_bind(queue_name, binding_key=topic)
if self.jsonify:
self.hub.queue_subscribe(queue_name, self._consume_json)
@@ -60,7 +61,8 @@ class Consumer(object):
else:
# Assume we're using Qpid then.
server_queue_name = 'moksha_consumer_' + self.hub.session.name
- self.hub.queue_declare(queue=server_queue_name, exclusive=True)
+ self.hub.queue_declare(queue=server_queue_name, exclusive=True,
+ auto_delete=True)
self.hub.exchange_bind(server_queue_name, binding_key=topic)
local_queue_name = 'moksha_consumer_' + self.hub.session.name
self.hub.local_queue = self.hub.session.incoming(local_queue_name)
diff --git a/moksha/api/widgets/amqp/amqp.py b/moksha/api/widgets/amqp/amqp.py
index 750f336..4c79bd4 100644
--- a/moksha/api/widgets/amqp/amqp.py
+++ b/moksha/api/widgets/amqp/amqp.py
@@ -141,7 +141,8 @@ class AMQPSocket(Widget):
moksha_amqp_session.name;
moksha_amqp_session.Queue('declare', {
- queue: moksha_amqp_remote_queue
+ queue: moksha_amqp_remote_queue,
+ auto_delete: true
});
moksha_amqp_queue = moksha_amqp_session.create_local_queue({
name: 'local_queue'
diff --git a/moksha/hub/hub.py b/moksha/hub/hub.py
index 219abc1..16a7d38 100644
--- a/moksha/hub/hub.py
+++ b/moksha/hub/hub.py
@@ -180,7 +180,8 @@ class CentralMokshaHub(MokshaHub):
if self.stomp_broker:
log.debug("Initializing local AMQP queue...")
self.server_queue_name = 'moksha_hub_' + self.session.name
- self.queue_declare(queue=self.server_queue_name, exclusive=True)
+ self.queue_declare(queue=self.server_queue_name,
+ exclusive=True, auto_delete=True)
self.exchange_bind(self.server_queue_name, binding_key='#')
self.local_queue_name = 'moksha_hub'
self.local_queue = self.session.incoming(self.local_queue_name)
diff --git a/moksha/templates/amqp_socket.mak b/moksha/templates/amqp_socket.mak
index 00a73fc..4873bce 100644
--- a/moksha/templates/amqp_socket.mak
+++ b/moksha/templates/amqp_socket.mak
@@ -76,7 +76,8 @@ if (typeof moksha_amqp_conn == 'undefined') {
moksha_amqp_session.name;
moksha_amqp_session.Queue('declare', {
- queue: moksha_amqp_remote_queue
+ queue: moksha_amqp_remote_queue,
+ auto_delete: true
});
moksha_amqp_queue = moksha_amqp_session.create_local_queue({
name: 'local_queue'