Return-Path: Delivered-To: apmail-avalon-dev-archive@www.apache.org Received: (qmail 44942 invoked from network); 12 Sep 2004 17:26:40 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 12 Sep 2004 17:26:40 -0000 Received: (qmail 66793 invoked by uid 500); 12 Sep 2004 17:26:39 -0000 Delivered-To: apmail-avalon-dev-archive@avalon.apache.org Received: (qmail 66740 invoked by uid 500); 12 Sep 2004 17:26:39 -0000 Mailing-List: contact dev-help@avalon.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Avalon Developers List" Reply-To: "Avalon Developers List" Delivered-To: mailing list dev@avalon.apache.org Received: (qmail 66727 invoked by uid 99); 12 Sep 2004 17:26:38 -0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (hermes.apache.org: local policy) Received: from [212.247.154.97] (HELO mailfe04.swip.net) (212.247.154.97) by apache.org (qpsmtpd/0.28) with ESMTP; Sun, 12 Sep 2004 10:26:37 -0700 X-T2-Posting-ID: FLIzhjgVyrNf/n+sjeTZu9mx89jRh/OtFzlcno4YRBk= Received: from [213.102.163.209] (HELO gloria) by mailfe04.swip.net (CommuniGate Pro SMTP 4.2.1) with ESMTP id 161341167 for dev@avalon.apache.org; Sun, 12 Sep 2004 19:26:34 +0200 From: "Stephen McConnell" To: "'Avalon Developers List'" Subject: RE: [transit] update on the refactored repository package Date: Sun, 12 Sep 2004 19:25:23 +0200 Message-ID: <002c01c498ed$7ce77070$1601a8c0@gloria> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook, Build 10.0.2627 In-Reply-To: <200409121737.55540.niclas@hedhman.org> Importance: Normal X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1441 X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N > -----Original Message----- > From: Niclas Hedhman [mailto:niclas@hedhman.org] > Sent: 12 September 2004 11:38 > To: Avalon Developers List > Subject: Re: [transit] update on the refactored repository package > > On Sunday 12 September 2004 13:55, Stephen McConnell wrote: > > > Have just about finished a refactored version of repository. It's > > smaller, cleaner, and most importantly - more futureproof. Unlike the > > current implementation, the package is broken down into two sub-projects > > - main and plugin. > > Sounds like a great job. Can't wait to see the code materialize inthe > subversion repo... > > But I am wondering if there is one more step needed, or if that is > overkill; > > You say that the metro-transit-plugin handles the command-line arguments > as > well as a repository cache controller. Wouldn't it make a LOT of sense of > separating these, so that other applications can create there own > command-line parsing, but have the repository controller as-is, without > fokkering around with Metro Transit code? I'm handling this concern by setting the cli parser to stop on unrecognized options. This results in the parser chewing its way through the controller args until a non-recognized option is found. The non-recognized option and all subsequent options are available as arguments to plugins and resources loaded by the controller. Example: $ metro -load plugin:somegroup/something#1.0.0 -xyz abc In the above case the '-xyz' option is not recognized, so we end up with '-xyz' and all subsequent cli values as a parameter for loaded plugins. A more practical example would be something like: $ metro -load plugin:avalon/merlin/avalon-merlin-impl#3.3.0 widget.block In the above case widget.block is recognized as unrecognized and will be supplied as a possible constructor argument to the merlin plugin. > It is a bit hard to get the picture without some diagrams and code :o) That's life! Cheers, Steve. > > Cheers > Niclas > -- > +------//-------------------+ > / http://www.bali.ac / > / http://niclas.hedhman.org / > +------//-------------------+ > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org > For additional commands, e-mail: dev-help@avalon.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@avalon.apache.org For additional commands, e-mail: dev-help@avalon.apache.org