Return-Path: Delivered-To: apmail-activemq-users-archive@www.apache.org Received: (qmail 43981 invoked from network); 20 Apr 2007 15:53:38 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 20 Apr 2007 15:53:38 -0000 Received: (qmail 35930 invoked by uid 500); 20 Apr 2007 15:53:44 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 35904 invoked by uid 500); 20 Apr 2007 15:53:44 -0000 Mailing-List: contact users-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@activemq.apache.org Delivered-To: mailing list users@activemq.apache.org Received: (qmail 35895 invoked by uid 99); 20 Apr 2007 15:53:43 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 20 Apr 2007 08:53:43 -0700 X-ASF-Spam-Status: No, hits=-0.0 required=10.0 tests=SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (herse.apache.org: domain of james.strachan@gmail.com designates 66.249.82.229 as permitted sender) Received: from [66.249.82.229] (HELO wx-out-0506.google.com) (66.249.82.229) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 20 Apr 2007 08:53:36 -0700 Received: by wx-out-0506.google.com with SMTP id h29so1037465wxd for ; Fri, 20 Apr 2007 08:53:15 -0700 (PDT) DKIM-Signature: a=rsa-sha1; c=relaxed/relaxed; d=gmail.com; s=beta; h=domainkey-signature:received:received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=ob8irrBA8NrEJ9nUvmSWklHakj07voGuH31He+ij4NQDCZD4sw951KuDRq93inKqat+8lxd+bEIE+dD0+ZFLc/1bIOrk13bz2Ayo1X7CKdXKfqL2Cj0yKMT/vk3mZ/GbOWLHpcXy/YDWZRm6ABsqWP+BdLDoU+zun0b5h7Os5Og= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=SxAhX+/SM2xfYqF+7LFOaLmzPl5ypEjiK3fY1ht/ZW2JZGZoq+w0yivVwfya4zwETktjwBnVGs5kUfuW5DboZBWJusyR+lXmvbuWMy0h5OfpYuuBvacbA/MvshKxhcTdI5i5LvPuqeBAVjEv6zDLD1IuT3bS6Hvsv2IM+T6oJRs= Received: by 10.90.63.16 with SMTP id l16mr3175732aga.1177084394727; Fri, 20 Apr 2007 08:53:14 -0700 (PDT) Received: by 10.90.105.4 with HTTP; Fri, 20 Apr 2007 08:53:14 -0700 (PDT) Message-ID: Date: Fri, 20 Apr 2007 16:53:14 +0100 From: "James Strachan" To: users@activemq.apache.org Subject: Re: [camel] Comments on MINA coment In-Reply-To: <10104315.post@talk.nabble.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <10104315.post@talk.nabble.com> X-Virus-Checked: Checked by ClamAV on apache.org On 4/20/07, dr.jeff 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/