On 06/26/2012 11:48 AM, Rajith Attapattu wrote:
On Tue, Jun 26, 2012 at 10:52 AM, Gordon Sim<[email protected]>  wrote:
On 06/26/2012 03:46 PM, Alan Conway wrote:

On 06/22/2012 10:51 AM, Gordon Sim wrote:

On 06/22/2012 03:08 PM, Rajith Attapattu wrote:

it's impossible to retain backwards compatibility while strictly
adhering to the C++/python syntax.


I don't think that is true, but it depends on what exactly you mean by
the
'c++/python syntax'. If it is really just the pseudo-python used to
describe
maps and can include lists and nested maps then to describe the existing
connection[1] url options you might have e.g.


{user:x,password:y,clientid:z,virtualhost:a,failover:b,maxprefetch:c,brokerlist:[{url:'host1:port1',retries:2,connectdelay:10},{url:'host2:port2',retries:3,connectdelay:5}]}



  From http://www.ietf.org/rfc/rfc2396.txt:

    Other characters are excluded because gateways and other transport
    agents are known to sometimes modify such characters, or they are
    used as delimiters.

    unwise      = "{" | "}" | "|" | "\" | "^" | "[" | "]" | "`"

So the {foo:bar} notation does not work well as part of a URL.


Right, but this is not a url, its a map of options in the python syntax that
was offered as being equivalent to those currently available in the JMS
'Connection URL' in order to refute the statement that this was not
possible.

Further to what Gordon already mentioned,
I wouldn't call the entire thing a URL, rather lets call it a connection string.
It contains a URL and a set of options in the python map format.

The URL should adhere to the given standard.


I don't see the benefit of defining a URL format that doesn't include all the information you need to connect to the broker, and connection options are part of that information. The only benefit of having a URL format is having a string representation that doesn't contain surprising characters, that includes everything you need to connect and can easily be passed around in an application, in scripts, passed as a command line option, recorded in config files etc. When a client eventually looks up the URL in whatever random configuration source, they will only have the URL to go on, so everything needs to be in there.

I think we need a URL friendly way to write our maps & lists so we can include them as normal URL query parameters. The trick is coming up with something that's both URL-friendly and readable, within the confines of the characters allowed in URIs. Of course we could URL-quote the python-like syntax we use but that would not be very readable.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to