Return-Path: Delivered-To: apmail-jakarta-ant-dev-archive@apache.org Received: (qmail 3568 invoked from network); 13 Jun 2002 19:34:49 -0000 Received: from unknown (HELO nagoya.betaversion.org) (192.18.49.131) by daedalus.apache.org with SMTP; 13 Jun 2002 19:34:49 -0000 Received: (qmail 17435 invoked by uid 97); 13 Jun 2002 19:34:52 -0000 Delivered-To: qmlist-jakarta-archive-ant-dev@jakarta.apache.org Received: (qmail 17396 invoked by uid 97); 13 Jun 2002 19:34:52 -0000 Mailing-List: contact ant-dev-help@jakarta.apache.org; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Help: List-Post: List-Id: "Ant Developers List" Reply-To: "Ant Developers List" Delivered-To: mailing list ant-dev@jakarta.apache.org Received: (qmail 17384 invoked by uid 98); 13 Jun 2002 19:34:51 -0000 X-Antivirus: nagoya (v4198 created Apr 24 2002) Subject: [PATCH] Better abstraction within ExtensionUtil and ExtensionSet From: Timothy Halloran To: ant-dev@jakarta.apache.org Content-Type: multipart/mixed; boundary="=-iroXKzZX+XOjV3Wr1MN5" X-Mailer: Ximian Evolution 1.0.3 (1.0.3-6) Date: 13 Jun 2002 15:34:41 -0400 Message-Id: <1023996881.27238.10.camel@GS06.ISRI.CMU.EDU> Mime-Version: 1.0 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N --=-iroXKzZX+XOjV3Wr1MN5 Content-Type: text/plain Content-Transfer-Encoding: 7bit Minor fix to improve maintainability of ExtensionUtil and ExtensionSet within the package org.apache.tools.ant.taskdefs.optional.extension. These classes didn't use interfaces to manipulate java.util.ArrayLists. There are more cases within the code (direct java.util.Vector use could be changed to java.util.List as well with some code changes). Let me know if there is interest (or if I'm wasting my time:) in this type of refactoring. Thanks! Tim Halloran Carnegie Mellon University --=-iroXKzZX+XOjV3Wr1MN5 Content-Disposition: attachment; filename=patch.txt Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; name=patch.txt; charset=ISO-8859-15 Index: src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionS= et.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /home/cvspublic/jakarta-ant/src/main/org/apache/tools/ant/taskdef= s/optional/extension/ExtensionSet.java,v retrieving revision 1.1 diff -u -r1.1 ExtensionSet.java --- src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionSet.= java 30 Apr 2002 03:45:39 -0000 1.1 +++ src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionSet.= java 13 Jun 2002 19:17:53 -0000 @@ -54,6 +54,7 @@ package org.apache.tools.ant.taskdefs.optional.extension; =20 import java.util.ArrayList; +import java.util.List; import java.util.Arrays; import org.apache.tools.ant.BuildException; import org.apache.tools.ant.Project; @@ -120,7 +121,7 @@ public Extension[] toExtensions( final Project project ) throws BuildException { - final ArrayList extensions =3D ExtensionUtil.toExtensions( m_exten= sions ); + final List extensions =3D ExtensionUtil.toExtensions( m_extensions= ); ExtensionUtil.extractExtensions( project, extensions, m_extensions= Filesets ); return (Extension[])extensions.toArray( new Extension[ extensions.= size() ] ); } Index: src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionU= til.java =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RCS file: /home/cvspublic/jakarta-ant/src/main/org/apache/tools/ant/taskdef= s/optional/extension/ExtensionUtil.java,v retrieving revision 1.2 diff -u -r1.2 ExtensionUtil.java --- src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionUtil= .java 30 Apr 2002 07:54:19 -0000 1.2 +++ src/main/org/apache/tools/ant/taskdefs/optional/extension/ExtensionUtil= .java 13 Jun 2002 19:17:55 -0000 @@ -56,6 +56,7 @@ import java.io.File; import java.io.IOException; import java.util.ArrayList; +import java.util.List; import java.util.Iterator; import java.util.jar.JarFile; import java.util.jar.Manifest; @@ -78,10 +79,10 @@ * @param adapters the list of ExtensionAdapterss to add to convert * @throws BuildException if an error occurs */ - static ArrayList toExtensions( final ArrayList adapters ) + static List toExtensions( final List adapters ) throws BuildException { - final ArrayList results =3D new ArrayList(); + final List results =3D new ArrayList(); =20 final int size =3D adapters.size(); for( int i =3D 0; i < size; i++ ) @@ -103,8 +104,8 @@ * @throws BuildException if an error occurs */ static void extractExtensions( final Project project, - final ArrayList librarys, - final ArrayList fileset ) + final List librarys, + final List fileset ) throws BuildException { if( !fileset.isEmpty() ) @@ -126,10 +127,10 @@ * @throws BuildException if failing to scan librarys */ private static Extension[] getExtensions( final Project project, - final ArrayList librarys ) + final List librarys ) throws BuildException { - final ArrayList extensions =3D new ArrayList(); + final List extensions =3D new ArrayList(); final Iterator iterator =3D librarys.iterator(); while( iterator.hasNext() ) { @@ -165,7 +166,7 @@ * @throws BuildException if there is an error */ private static void loadExtensions( final File file, - final ArrayList extensionList, + final List extensionList, final boolean includeImpl, final boolean includeURL ) throws BuildException @@ -198,7 +199,7 @@ * @param includeImpl false to exclude implementation details * @param includeURL false to exclude implementation URL */ - private static void addExtension( final ArrayList extensionList, + private static void addExtension( final List extensionList, final Extension originalExtension, final boolean includeImpl, final boolean includeURL ) --=-iroXKzZX+XOjV3Wr1MN5 Content-Type: text/plain; charset=us-ascii -- To unsubscribe, e-mail: For additional commands, e-mail: --=-iroXKzZX+XOjV3Wr1MN5--