Hi Robert,

> I am a strong believer in the "extended JMS" approach for exposing
> other AMQP functionality within Java. (I think having a separate "AMQP
> Java" API is in fact counterproductive since it confuses users). JMS
> isn't very good in many respects but it is very widely used.
> 
> I have not yet examined WCF in much detail but could a similar
> "extended WCF" approach be used? i.e. you can use vanilla WCF if you
> want but if you want to exploit AMQP-specific functionality you can do
> this with some casting.

The WCF model is a bit different, since, unlike JMS it is not really an API
per se, and it is heavily layered. I guess the best way to describe this is
to say that WCF is extended for things like this with a "pluggable protocol"
model, instead. 

So, hooking a new transport protocol is for the most part about dealing with
the lowest level of abstractions in WCF and dealing with connections,
channels and sending and receiving messages, while upper levels of the WCF
stack deal with message encoding and representation and other things.

What I meant to say earlier is that WCF simply deals with sending and
receiving messages. There's really no natural way in WCF to define
transport-level operations like creating queues or exchanges and such. What
I'm currently thinking is that things like this could happen under the
covers because of the way the transport protocol was configured (i.e.
because of the way the bindings are setup), rather than because the client
code explicitly says "create an exchange with this arguments, create a queue
and bind it here".


Tomas Restrepo
http://www.winterdom.com/weblog/




Reply via email to