On 4/20/07, dr.jeff <[EMAIL PROTECTED]> wrote:
I was attracted to Camel by the existance of the MINA component, but I now
see that it has some deficiencies.

I hope we can work on the camel-mina module to integrate with more of
the capabilities in MINA. Hopefully with some help from MINA experts
like yourself we can figure it out :)


Very generally there can be 4 kinds of MINA endpoints:

I guess we could wrap these different types up as different kinds of
Camel component/endpoint? We just need to figure out a clean mapping
between the MINA model and the Camel messaging & endpoint model


1) acceptors ("server sockets", that accept connections) that initiatiate
request/responses,
2) acceptors that wait for requests (eg, HTTP servers),

I'll come back to these at the end...


3) listeners (i.e., connection initiators) that initiatiate
request/responses (eg. HTTP clients), and

So thats like a Producer on an existing camel-mina endpoint right?


4) listeners that that connect, then wait for requests, and then respond.
It would be nice if Camel could provide a transparent easy-to-use way to
plug and play with any of these four.

This seems like a Consumer on an existing camel-mina endpoint right?


So 3 & 4 are what we have today I think? (Apologies if I
misunderstood; I'm a bit of a newbie with MINA). So it mostly seems
like we need to better support the ability to have 'servers' like a
server socket / HTTP server which wait for connections to be initiated
then spin up separate endpoints for each connection?

In terms of the MINA API I think this seems more like we need a kind
of Camel Endpoint which maps to an IoAcceptor and listens for new
connections (via IoServiceListener right?); then when a new connection
is established, we spin up a new endpoint and Consumer?

Or do you see this as mapping a different way? To put this into
context we have camel-jms which can spin up a pool of threads
consuming inbound JMS messages concurrently; I'd always envisaged a
servlet based endpoint where we could map a servlet URI to a camel
endpoint for processing in a similar way.

--
James
-------
http://macstrac.blogspot.com/

Reply via email to