summaryrefslogtreecommitdiff
path: root/qpid/java/client/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'qpid/java/client/src/main')
-rw-r--r--qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java8
1 files changed, 4 insertions, 4 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java b/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
index 07c36888cb..f0edd0d7bf 100644
--- a/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
+++ b/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
@@ -385,10 +385,10 @@ public class AMQProtocolSession implements AMQVersionAwareProtocolSession
{
id = _queueId++;
}
- // get rid of / and : and ; from address for spec conformance
- String localAddress = _protocolHandler.getLocalAddress().toString().replaceAll("[/;:]", "");
-
- return new AMQShortString("tmp_" + localAddress + "_" + id);
+ // convert '.', '/', ':' and ';' to single '_', for spec compliance and readability
+ String localAddress = _protocolHandler.getLocalAddress().toString().replaceAll("[./:;]", "_");
+ String queueName = "tmp_" + localAddress + "_" + id;
+ return new AMQShortString(queueName.replaceAll("_+", "_"));
}
public void confirmConsumerCancelled(int channelId, AMQShortString consumerTag)