Gordon Sim wrote:
On 11/25/2009 11:06 PM, Rafael Schloming wrote:
One question I have is about how we'll provide access to alternate
syntaxes via jndi configuration and the JMS API (i.e.
createQueue(...)/createTopic(...)). I can think of a few options, e.g.
switching between syntaxes using a system/connection property. Or maybe
having some sort of meta-syntax that that would permit usage of the two
syntaxes side by side, e.g. "OLD: ...", "NEW: ...", or possibly some
combination of the two approaches.
In the case of jndi configuration, what about having a different context
factory to do the parsing? I.e. in jndi configuration files using the
new syntax you would specify something other than the existing
org.apache.qpid.jndi.PropertiesFileInitialContextFactory. That way
existing configuration will work as before with no changes, and a new
format can be parsed without any need to worry about the older format.
That doesn't deal with strings passed to createQueue()/createTopic() of
course. Perhaps there a specific 'factory' can be associated with a
connection, configured via a connection option? Where a file backed jndi
configuration is used the two different context factories could then set
different defaults for this meaning again that old config would be
unaffected and new config could ignore the old config entirely also.
Just a suggestion...
I've been thinking we should just do something like:
"ADDR: ..." gets parsed as an address (after removing the ADDR:)
"BURL: ..." gets parsed as a binding url (after removing the BURL:)
and anything not starting with ADDR: or BURL: gets parsed as one or the
other according to some default that is configurable at the connection,
context factory, and JVM levels.
--Rafael
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:dev-subscr...@qpid.apache.org