Return-Path: X-Original-To: apmail-qpid-users-archive@www.apache.org Delivered-To: apmail-qpid-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 93D9411AE5 for ; Thu, 31 Jul 2014 14:32:45 +0000 (UTC) Received: (qmail 6338 invoked by uid 500); 31 Jul 2014 14:32:45 -0000 Delivered-To: apmail-qpid-users-archive@qpid.apache.org Received: (qmail 6303 invoked by uid 500); 31 Jul 2014 14:32:45 -0000 Mailing-List: contact users-help@qpid.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@qpid.apache.org Delivered-To: mailing list users@qpid.apache.org Received: (qmail 6287 invoked by uid 99); 31 Jul 2014 14:32:44 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 31 Jul 2014 14:32:44 +0000 X-ASF-Spam-Status: No, hits=-5.0 required=5.0 tests=RCVD_IN_DNSWL_HI,SPF_HELO_PASS,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of tross@redhat.com designates 209.132.183.28 as permitted sender) Received: from [209.132.183.28] (HELO mx1.redhat.com) (209.132.183.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 31 Jul 2014 14:32:40 +0000 Received: from int-mx09.intmail.prod.int.phx2.redhat.com (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id s6VEWIsk005047 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Thu, 31 Jul 2014 10:32:18 -0400 Received: from dhcp-97-76.bos.redhat.com ([10.18.97.21]) by int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id s6VEWI5g016362 for ; Thu, 31 Jul 2014 10:32:18 -0400 Message-ID: <53DA5372.9060104@redhat.com> Date: Thu, 31 Jul 2014 10:32:18 -0400 From: Ted Ross User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0 MIME-Version: 1.0 To: users@qpid.apache.org Subject: Re: 'client' APIs again References: <53DA1FFC.5040306@redhat.com> In-Reply-To: <53DA1FFC.5040306@redhat.com> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22 X-Virus-Checked: Checked by ClamAV on apache.org Gordon, This looks really interesting. I think this is a good framework to build an extensible API to provide access to the good parts of AMQP (flow control, exactly-once with recovery, transactions, etc., etc.). Would you consider contributing it to the Proton project, perhaps as a branch or a contrib so others can get involved? What is the tool you use to create the tutorial code examples? -Ted On 07/31/2014 06:52 AM, Gordon Sim wrote: > Following on from the approach taken by Rafi in his demo of the new > event support in the proton engine, I've sketched out a few examples for > common 'client' scenarios using the proton engine and a 'toolkit' of > useful event handlers and utilities. > > The idea behind this is to explore whether this approach is feasible as > a general purpose API. It is a reactive style of programming, and is at > present fully asynchronous/non-blocking. > > Many more examples are need to ensure all aspects are fully considered, > but I think there is enough there to give an idea of the approach that > we can then discuss and refine collectively. (Clearly the toolkit could > also be expanded to cover higher-level and richer concepts as well). > > The Qpid Messaging API would remain, but Proton would be an alternative, > particularly suited for fully asynchronous applications with the full > power and flexibility of the engine where needed, but with the common > cases made simpler. > > I've focused on python, but I think the approach could be extended to > other languages. There is a little bit of 'tutorial' style text to > introduce the examples (some reference documentation around the added > utilities would also be needed): > > http://grs.github.io/proton_examples/html/ > > and the examples and utility code (some of which are based on Rafi's > demo code) needed to run them is here: > > https://github.com/grs/examples > > I think this looks like a promising approach to make proton more > understandable and usable, improve AMQP adoption and get consensus on a > clearer roadmap as far as Qpid APIs is concerned. However as always I'm > eager to hear your thoughts! Don't hold back on criticism or voicing > disagreement, it is better to have a frank conversation. > > --Gordon. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org > For additional commands, e-mail: users-help@qpid.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For additional commands, e-mail: users-help@qpid.apache.org