Hi, Gary,
I don't think that's what James has in mind :).
Based on James' post I would also like to amend one of my previous
posts in this thread :). I was saying that I like it the way it is,
with a differentiation made between in/out/exception. I think we
agree at this point, from Hiram's comment that a distinction between
out and fault doesnt make much sense (it may in some for some
components, but then they'd be responsible to attach a flag to the out
to qualify its semantics).
So I believe James suggested somthing like a stack (or list) in which
first in is the IN, and instead of creating new exchanges we would
just push a new out on the stack. A producer would just send the last
message on the stack as an IN and if there's any out it pushes it on
the stack. That way we'll have the whole message history. I am not
sure how this scales for large messages, so we might want to make this
optional. Maybe keep all the messages and drop just the large
bodies, preserve the headers, that may contain useful metadata, such
as timestamps for measuring SLAs, etc. The IN at the bottom of the
stack should stay, I guess.
How does that sound?
Hadrian
On Feb 13, 2008, at 10:33 AM, gtully wrote:
So I think its definitely worth revisiting what is an Exchange and
what should its contract be... I'm starting to wonder if its just a
context for the exchange (so you can access the IN) and a place in
which to register one or more OUT messages?
Would N out messages result in N exchanges for the next hop?
For WS-Addressing, where the original 'in' message is important,
would it
makes sense to stash the (important) in message in the exchange as a
property. The pipeline will propagate exchange properties so the
important
in message will be visible from the pipeline to those who care.
This may alleviate the need to traverse the set of chained exchanges
to get
a handle on the original in message.
--
View this message in context:
http://www.nabble.com/in-out-fault-messages-discussion-tp14170013s22882p15459603.html
Sent from the Camel - Users mailing list archive at Nabble.com.