Hi Rupert, > An idea I keep trying to promote, is that the AMQ/Qpid API be the same > (or > close to it) accross all clients. Therefore, I would ask that you at > least > take a little look at the C and the Java (AMQ part not JMS), and try to > follow similar conventions, albeit wrt to the coding conventions of > .Net. It > will be impossible to do this exactly of course, because the C and Java > differ.
I agree with keeping the spirit of the API the same for all clients. I'm not actually advocating rewriting the entire API, just cleaning it up a bit so that it's more consistent and feels more natural to .NET developers. We could just begin with these small changes: - Turn the public delegates into proper events - Fix IConnection so that it represents the entire set of useful connection operations in AMQConnection - Make private or internal any public methods/properties in AMQConnection that are not part of IConnection (this paves the way to further refactorings of the internal code) We can then look at the rest to see what's worth improving. In that regards, one question is whether we should introduce the concept of Queue as represented in the Java api with AMQQueue, which is certainly part of the public API (haven't looked at the cpp client to see how it does it yet). The current .net code doesn't have anything like it, and instead the concept of queue is somewhat more abstract. Tomas Restrepo http://www.winterdom.com/weblog/
