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 07486F1ED for ; Tue, 26 Mar 2013 17:44:06 +0000 (UTC) Received: (qmail 89167 invoked by uid 500); 26 Mar 2013 17:44:05 -0000 Delivered-To: apmail-qpid-users-archive@qpid.apache.org Received: (qmail 89063 invoked by uid 500); 26 Mar 2013 17:44:05 -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 89051 invoked by uid 99); 26 Mar 2013 17:44:05 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 26 Mar 2013 17:44:05 +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 gsim@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; Tue, 26 Mar 2013 17:44:00 +0000 Received: from int-mx10.intmail.prod.int.phx2.redhat.com (int-mx10.intmail.prod.int.phx2.redhat.com [10.5.11.23]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id r2QHhcUW001588 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Tue, 26 Mar 2013 13:43:39 -0400 Received: from [10.36.116.70] (ovpn-116-70.ams2.redhat.com [10.36.116.70]) by int-mx10.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id r2QHhbP3025461 for ; Tue, 26 Mar 2013 13:43:38 -0400 Message-ID: <5151DF4D.1070801@redhat.com> Date: Tue, 26 Mar 2013 17:47:57 +0000 From: Gordon Sim Organization: Red Hat UK Ltd, Registered in England and Wales under Company Registration No. 3798903, Directors: Michael Cunningham (USA), Mark Hegarty (Ireland), Matt Parsons (USA), Charlie Peters (USA) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4 MIME-Version: 1.0 To: users@qpid.apache.org Subject: Re: [c++]: Progressing AMQP 1.0 support for 0.22 release References: <403354247.17445814.1363871974412.JavaMail.root@redhat.com> <514B2B9A.5090500@redhat.com> <5151D5E2.6050100@blueyonder.co.uk> In-Reply-To: <5151D5E2.6050100@blueyonder.co.uk> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 2.68 on 10.5.11.23 X-Virus-Checked: Checked by ClamAV on apache.org On 03/26/2013 05:07 PM, Fraser Adams wrote: > Hi Gordon, > I was thinking about this thread earlier on today and something just > struck me about the general tool "for creating, > deleting and listing objects of any type" that you attached previously > and is being discussed here. > > I think that the general premise is that it provides a more "general" > approach than say qpid-config because it's abstracting to the broker > create and delete methods and given that type, name and other properties > can be specified as a Map that gives a fair degree of generality - is my > understanding correct? Yes. The current qpid-config needs to be updated for every type it can create, delete or list though the same basic mechanisms are used in each case. Specific knowledge of types is useful in list as it can allow the exact fields displayed and their order to be more tailored. There is also a fair amount of option/argument 'munging' in qpid-config (in my view slightly less obviously justifiable). > If it is then the thing that struck me is that there was already a tool > that provided this sort of behaviour (actually possibly even more > general) - do you recall qpid-ctrl? I do indeed! I would see it is almost too general. Though it does allow access to all QMF methods (e.g. queue purge etc), it does make using the create and delete methods a fraction more complicated. It also doesn't support listing objects. > It's not necessarily in the most helpful location "qpid/cpp/src/tests" > but it seems pretty similar to what you are describing here unless I've > misunderstood. It is similar... my reason for not picking that was that I felt in hindsight it wasn't as usable for the cases I really cared about. I guess this all goes to emphasise the validity of Ken's point (and indeed the theme you have often mentioned) namely some coherent vision for management tools. > I remember qpid-ctrl because I wrote a Java port of it in > my QMF bundle. You don't do things by halves! I admire your consistency! > It's been a little while since I looked at the python > version, but digging out the JavaDoc I put in my Java one I note: > > * List the properties of the qmf.default.direct exchange: > *
QpidCtrl -c exchange -i qmf.default.direct listValues
> * > * Create a queue called test with a flow-to-disk limit policy: > *
QpidCtrl create
> "{type:queue,name:test,properties:{'qpid.policy_type':ring}}"
> * > * Delete a queue called test: > *
QpidCtrl delete "{type:queue,name:test}"
> * > * Create a binding called bind1 between the amq.match exchange and the > test queue matching the headers name=fadams > * and gender=male: > *
QpidCtrl create
> "{type:binding,name:'amq.match/test/bind1',properties:{x-match:all,name:fadams,gender:male}}"
> > * > * Delete the binding called bind1 between the amq.match exchange and > the test queue: > *
QpidCtrl delete "{type:binding,name:'amq.match/test/bind1'}"
> > > Apologies if I've misunderstood the context, but I thought it was worth > mentioning given that the main thrust of conversation was about a > general way of controlling arbitrary objects. I think create and delete should really be 'built in' to a management mechanism, rather than being schema dependent as they are in QMF for the broker(s). --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For additional commands, e-mail: users-help@qpid.apache.org