Hi,

I have been using qpid as an AMQP messaging solution for several customers over the years and there are two (related) use cases that have always caused me a problem. This is because they have required me to cut and paste chunks of code from the broker in to a series of utility classes, far from ideal. It strikes me that if I am seeing these use cases then others must be as well.

The first use case requires the dynamic creation of Receivers, but before creating a new receiver, I would like to know if I already have a receiver that would match the required binding. This is not possible at the moment because the binding matching algorithms are hidden from public view; they are buried deep inside the Brokers Exchange Implementation code.

The second use case in question requires a client application to dynamically create multiple receivers for the same queue, but with slightly different binding keys bound to an exchange. When a message from an exchange gets put in the queue and delivered to the client (via a receiver) I need to route the message to the correct application level destination(s). To do this I need to undertake a matching operation between the routing key of the message and the binding key(s) of the created receivers; qpid does not deliver the message to the receiver with the most exact binding key match. So basically the receivers, and their bindings, enable the required messages to get delivered to the required client, but I then need to undertake application level routing to route the message to one or more application level classes, based on message routing key/ receiver binding key matches.

Unfortunately in both cases the messaging API does not provide visibility of the bind matching algorithms and so I have to create several utility classes to support this functionality.

Would it be possible to create a Binding.h class in the messaging API to support matching of bindings from all the supported exchange types?

Clive


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org

Reply via email to