add uuid prefix to addresses beginning with hash(#)
diff --git a/qpid/messaging/endpoints.py b/qpid/messaging/endpoints.py
index 30f51fe..8bddc96 100644
--- a/qpid/messaging/endpoints.py
+++ b/qpid/messaging/endpoints.py
@@ -543,6 +543,7 @@
@rtype: Sender
@return: a new Sender for the specified target
"""
+ target = _mangle(target)
sender = Sender(self, self.next_sender_id, target, options)
self.next_sender_id += 1
self.senders.append(sender)
@@ -566,6 +567,7 @@
@rtype: Receiver
@return: a new Receiver for the specified source
"""
+ source = _mangle(source)
receiver = Receiver(self, self.next_receiver_id, source, options)
self.next_receiver_id += 1
self.receivers.append(receiver)
@@ -707,6 +709,12 @@
finally:
self.connection._remove_session(self)
+def _mangle(addr):
+ if addr.startswith("#"):
+ return str(uuid4()) + addr
+ else:
+ return addr
+
class Sender:
"""