diff options
3 files changed, 24 insertions, 15 deletions
diff --git a/java/common/src/main/java/org/apache/qpid/url/AMQBindingURL.java b/java/common/src/main/java/org/apache/qpid/url/AMQBindingURL.java index 42f125920c..998242925c 100644 --- a/java/common/src/main/java/org/apache/qpid/url/AMQBindingURL.java +++ b/java/common/src/main/java/org/apache/qpid/url/AMQBindingURL.java @@ -209,20 +209,28 @@ public class AMQBindingURL implements BindingURL sb.append(URLHelper.printOptions(_options)); // temp hack - if (sb.toString().indexOf("?") == -1) + if (getRoutingKey() == null || getRoutingKey().toString().equals("")) { - sb.append("?"); + + if (sb.toString().indexOf("?") == -1) + { + sb.append("?"); + } + else + { + sb.append("&"); + } + + for (AMQShortString key :_bindingKeys) + { + sb.append(BindingURL.OPTION_BINDING_KEY).append("='").append(key.toString()).append("'&"); + } + + return sb.toString().substring(0,sb.toString().length()-1); } else { - sb.append("&"); + return sb.toString(); } - - for (AMQShortString key :_bindingKeys) - { - sb.append("bindingKey='").append(key.toString()).append("'&"); - } - - return sb.toString().substring(0,sb.toString().length()-1); } } diff --git a/java/common/src/main/java/org/apache/qpid/url/BindingURL.java b/java/common/src/main/java/org/apache/qpid/url/BindingURL.java index c4346d721b..25450fea64 100644 --- a/java/common/src/main/java/org/apache/qpid/url/BindingURL.java +++ b/java/common/src/main/java/org/apache/qpid/url/BindingURL.java @@ -34,7 +34,7 @@ public interface BindingURL public static final String OPTION_CLIENTID = "clientid"; public static final String OPTION_SUBSCRIPTION = "subscription"; public static final String OPTION_ROUTING_KEY = "routingkey"; - public static final String OPTION_BINDING_KEY = "bindingKey"; + public static final String OPTION_BINDING_KEY = "bindingkey"; String getURL(); diff --git a/java/common/src/main/java/org/apache/qpid/url/BindingURLParser.java b/java/common/src/main/java/org/apache/qpid/url/BindingURLParser.java index f7e0b53cb1..5d26e7e65b 100644 --- a/java/common/src/main/java/org/apache/qpid/url/BindingURLParser.java +++ b/java/common/src/main/java/org/apache/qpid/url/BindingURLParser.java @@ -414,13 +414,14 @@ public class BindingURLParser String[] urls = new String[] { "topic://amq.topic//myTopic?routingkey='stocks.#'", - "topic://amq.topic/message_queue?bindingKey='usa.*'&bindingKey='control',exclusive='true'", - "topic://amq.topic//?bindingKey='usa.*',bindingKey='control',exclusive='true'", - "direct://amq.direct/dummyDest/myQueue?routingKey='abc.*'", + "topic://amq.topic/message_queue?bindingkey='usa.*'&bindingkey='control',exclusive='true'", + "topic://amq.topic//?bindingKey='usa.*',bindingkey='control',exclusive='true'", + "direct://amq.direct/dummyDest/myQueue?routingkey='abc.*'", "exchange.Class://exchangeName/Destination/Queue", "exchangeClass://exchangeName/Destination/?option='value',option2='value2'", "IBMPerfQueue1?durable='true'", - "exchangeClass://exchangeName/Destination/?bindingKey='key1',bindingKey='key2'" + "exchangeClass://exchangeName/Destination/?bindingkey='key1',bindingkey='key2'", + "exchangeClass://exchangeName/Destination/?bindingkey='key1'&routingkey='key2'" }; try |
