From b0c194956862fd21c45bdfa7c552d18f16932491 Mon Sep 17 00:00:00 2001 From: Rajith Muditha Attapattu Date: Wed, 27 Feb 2008 05:17:07 +0000 Subject: Added a new parser for the BindingURL. This allows adding multiple binding keys, using # and * in the URLs. This is tracked via QPID-814 git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@631489 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/org/apache/qpid/url/AMQBindingURL.java | 187 +++------ .../main/java/org/apache/qpid/url/BindingURL.java | 7 +- .../java/org/apache/qpid/url/BindingURLParser.java | 444 +++++++++++++++++++++ 3 files changed, 506 insertions(+), 132 deletions(-) create mode 100644 java/common/src/main/java/org/apache/qpid/url/BindingURLParser.java (limited to 'java/common/src') 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 529a05b2e2..42f125920c 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 @@ -20,28 +20,29 @@ */ package org.apache.qpid.url; +import java.net.URISyntaxException; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; + import org.apache.qpid.exchange.ExchangeDefaults; import org.apache.qpid.framing.AMQShortString; - import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.net.URI; -import java.net.URISyntaxException; -import java.util.HashMap; - public class AMQBindingURL implements BindingURL { private static final Logger _logger = LoggerFactory.getLogger(AMQBindingURL.class); String _url; - AMQShortString _exchangeClass; - AMQShortString _exchangeName; - AMQShortString _destinationName; - AMQShortString _queueName; + AMQShortString _exchangeClass = ExchangeDefaults.DIRECT_EXCHANGE_CLASS; + AMQShortString _exchangeName = new AMQShortString(""); + AMQShortString _destinationName = new AMQShortString("");; + AMQShortString _queueName = new AMQShortString(""); + AMQShortString[] _bindingKeys = new AMQShortString[0]; private HashMap _options; - public AMQBindingURL(String url) throws URLSyntaxException + public AMQBindingURL(String url) throws URISyntaxException { // format: // :///[]/[]?