Return-Path: Delivered-To: apmail-jakarta-commons-dev-archive@www.apache.org Received: (qmail 85312 invoked from network); 30 Jan 2004 15:51:50 -0000 Received: from daedalus.apache.org (HELO mail.apache.org) (208.185.179.12) by minotaur-2.apache.org with SMTP; 30 Jan 2004 15:51:50 -0000 Received: (qmail 88392 invoked by uid 500); 30 Jan 2004 15:51:35 -0000 Delivered-To: apmail-jakarta-commons-dev-archive@jakarta.apache.org Received: (qmail 88339 invoked by uid 500); 30 Jan 2004 15:51:34 -0000 Mailing-List: contact commons-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Jakarta Commons Developers List" Reply-To: "Jakarta Commons Developers List" Delivered-To: mailing list commons-dev@jakarta.apache.org Received: (qmail 88319 invoked from network); 30 Jan 2004 15:51:34 -0000 Received: from unknown (HELO out1.smtp.messagingengine.com) (66.111.4.25) by daedalus.apache.org with SMTP; 30 Jan 2004 15:51:34 -0000 X-Sasl-enc: A09ybSBrf5yd/OcyQALo7w 1075477894 Received: from pcroxspring (unknown [195.224.156.162]) by www.fastmail.fm (Postfix) with ESMTP id 2ADF24CB144; Fri, 30 Jan 2004 10:51:34 -0500 (EST) Message-ID: <000d01c3e748$f0f622b0$7a9b10ac@risc.uk> Reply-To: "Rob Oxspring" From: "Rob Oxspring" To: "John Keyes" , "Jakarta Commons Developers List" Subject: [CLI] Refactoring plans Date: Fri, 30 Jan 2004 15:51:34 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N This is just a quick heads up to let you know what I've got planned in = the next few days for the cli2 package (on the ROXSPRING branch) it's = mostly refactoring and minor stuff before I get back to experimenting = with option paths. 1) Refactor CommandLine. This class is getting pretty big and I'm = hoping I can rationalise it a little, firstly by extracting readonly and = writeable interfaces, and then probably moving some (potential) = functionality to decorators. =20 CommandLine << interface WriteableCommandLine << interface CommandLineImpl << implements both of above TypedCommandLine << decorates CommandLine (provide typed getValue() = varients) DefaultingCommandLine << decorates CommandLine (defaults provided by = alternative CommandLine or maybe configuration?) 2) Repackage some cli2. Currently there are 33 classes/interfaces in = the cli2 package and I'd like to reduce that. I'm not sure which = direction I'll end up going but possibilities include the following: o.a.c.cli2.api - the interfaces and OptionException o.a.c.cli2.impl - the implementations and other exceptions o.a.c.cli2.commandline - the refactored CommandLine and friends o.a.c.cli2.help - Help* An alternative would include subpackages based on the = argument/group/parent separation but I don't see that getting us = anywhere. 3) Reformat some code. There is a slight mix of code formatting = involved currently and I'd like to pick one and bring the source in line = using either checkstyle and some nagging or jalopy. Currently we appear = to have slightly fewer checkstyle errors if we use the sun settings = rather than turbine (5290 vs5640) or we could hack at a checkstyle = config and come to a custom conclusion. I think I'm leaning towards to = sun style but am open to suggestions. If anyone has any thoughts, wisdom, questions or suggestions they're all = welcome, Rob --------------------------------------------------------------------- To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org For additional commands, e-mail: commons-dev-help@jakarta.apache.org