On Mon, Mar 15, 2010 at 4:25 PM, Gordon Sim <g...@redhat.com> wrote: > On 03/15/2010 05:48 PM, Rajith Attapattu wrote: >> >> On Mon, Mar 15, 2010 at 12:35 PM, Gordon Sim<g...@redhat.com> wrote: >>> >>> On 03/11/2010 11:41 PM, Rajith Attapattu wrote: >>>> >>>> 1.2 Syntax >>>> <broker> [ ;<options> ] [ ,<broker> [ ;<options> ]] * >>>> >>>> Where broker is:: >>>> <protocol>:// [ host [ ":" port ] ] (protocol = {tcp|vm|rdma} >>> >>> The c++ client currently supports the AMQP 0-10 definition of a url >>> syntax. >>> Do we want to support that more widely? It would be good to improve >>> consistency across clients a little. >> >> Well my motivation behind the thread was to get this out in the open. >> IMO I think we as a project *must* have the same connection url/string >> syntax across all clients. >> I thought I'd start with the Java side and then take it from there. > > Understood. I am responding by pointing out that there is a url scheme > defined in the 0-10 specification which is currently used by the c++ client. > The question of whether we want to support that more widely seems to me to > be worth answering early in any proposal around unification of url schemes > (whichever way we answer it).
Actually the Java client did support the 0-10 URL format at one point. But then it got dropped for reasons I can't clearly remember. Perhaps the archives and svn log might yield some clues. >> The connection "URL" has been used for two reasons. >> 1) To identify which broker(s) to connect to >> 2) As a configuration mechanism. > > Isn't the former a specific case for the latter? It is and as you have mentioned below, the URL is infact one of the options in the connection String. However in my proposal I gave it a prominent place by moving it out of the curly brackets. >> My issue is if we treat the whole thing as a "URL" then supporting the >> latter makes the whole thing ugly and error prone. >> The Java connection url is a case in point. >> >> I would rather treat it as a connection string which consists of two >> **distinct** parts. >> a) A broker (identified by a URL - ex tcp://localhost:5672/vhost ) >> b) A bunch of key:value pairs associated with the broker url. > > You could of course view the url as one of the set of options that can be > configured via the key-value pairs... > > --------------------------------------------------------------------- > Apache Qpid - AMQP Messaging Implementation > Project: http://qpid.apache.org > Use/Interact: mailto:dev-subscr...@qpid.apache.org > > -- Regards, Rajith Attapattu Red Hat http://rajith.2rlabs.com/ --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:dev-subscr...@qpid.apache.org