You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by hb...@apache.org on 2010/06/14 00:01:29 UTC

svn commit: r954321 [2/3] - in /maven/archetype/trunk: ./ archetype-common/ archetype-common/src/main/java/org/apache/maven/archetype/ archetype-common/src/main/java/org/apache/maven/archetype/common/ archetype-common/src/main/java/org/apache/maven/arc...

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/creator/FilesetArchetypeCreator.java Sun Jun 13 22:01:28 2010
@@ -99,8 +99,8 @@ public class FilesetArchetypeCreator
     public void createArchetype( ArchetypeCreationRequest request, ArchetypeCreationResult result )
     {
         MavenProject project = request.getProject();
-        List languages = request.getLanguages();
-        List filtereds = request.getFiltereds();
+        List<String> languages = request.getLanguages();
+        List<String> filtereds = request.getFiltereds();
         String defaultEncoding = request.getDefaultEncoding();
         boolean preserveCData = request.isPreserveCData();
         boolean keepParent = request.isKeepParent();
@@ -156,18 +156,18 @@ public class FilesetArchetypeCreator
 
             Model pom = pomManager.readPom( FileUtils.resolveFile( basedir, Constants.ARCHETYPE_POM ) );
 
-            List fileNames = resolveFileNames( pom, basedir );
+            List<String> fileNames = resolveFileNames( pom, basedir );
             if ( getLogger().isDebugEnabled() )
             {
                 getLogger().debug( "Scanned for files " + fileNames.size() );
 
-                for ( Iterator names = fileNames.iterator(); names.hasNext(); )
+                for ( String name : fileNames )
                 {
-                    getLogger().debug( "- " + names.next().toString() );
+                    getLogger().debug( "- " + name );
                 }
             }
 
-            List filesets = resolveFileSets( packageName, fileNames, languages, filtereds, defaultEncoding );
+            List<FileSet> filesets = resolveFileSets( packageName, fileNames, languages, filtereds, defaultEncoding );
             getLogger().debug( "Resolved filesets for " + archetypeDescriptor.getName() );
 
             archetypeDescriptor.setFileSets( filesets );
@@ -177,7 +177,7 @@ public class FilesetArchetypeCreator
 
             setParentArtifactId( reverseProperties, configurationProperties.getProperty( Constants.ARTIFACT_ID ) );
 
-            for ( Iterator modules = pom.getModules().iterator(); modules.hasNext(); )
+            for ( Iterator<String> modules = pom.getModules().iterator(); modules.hasNext(); )
             {
                 String moduleId = (String) modules.next();
                 String rootArtifactId = configurationProperties.getProperty( Constants.ARTIFACT_ID );
@@ -267,10 +267,8 @@ public class FilesetArchetypeCreator
             Properties archetypeProperties = new Properties();
             archetypeProperties.load( in );
 
-            for ( Iterator iter = archetypeDescriptor.getRequiredProperties().iterator(); iter.hasNext(); )
+            for ( RequiredProperty req : archetypeDescriptor.getRequiredProperties() )
             {
-                RequiredProperty req = (RequiredProperty) iter.next();
-
                 archetypeProperties.put( req.getKey(), req.getDefaultValue() );
             }
 
@@ -361,9 +359,9 @@ public class FilesetArchetypeCreator
 
                 if ( p.getBuildExtensions() != null )
                 {
-                    for ( Iterator i = p.getBuildExtensions().iterator(); i.hasNext(); )
+                    for ( Iterator<Extension> i = p.getBuildExtensions().iterator(); i.hasNext(); )
                     {
-                        Extension be = (Extension) i.next();
+                        Extension be = i.next();
 
                         model.getBuild().addExtension( be );
                     }
@@ -463,9 +461,9 @@ public class FilesetArchetypeCreator
         setParentArtifactId( pomReversedProperties, pomReversedProperties.getProperty( Constants.ARTIFACT_ID ) );
         setArtifactId( pomReversedProperties, pom.getArtifactId() );
 
-        for ( Iterator modules = pom.getModules().iterator(); modules.hasNext(); )
+        for ( Iterator<String> modules = pom.getModules().iterator(); modules.hasNext(); )
         {
-            String subModuleId = (String) modules.next();
+            String subModuleId = modules.next();
 
             String subModuleIdDirectory = subModuleId;
 
@@ -493,9 +491,9 @@ public class FilesetArchetypeCreator
     {
         setArtifactId( pomReversedProperties, pom.getArtifactId() );
 
-        for ( Iterator modules = pom.getModules().iterator(); modules.hasNext(); )
+        for ( Iterator<String> modules = pom.getModules().iterator(); modules.hasNext(); )
         {
-            String moduleId = (String) modules.next();
+            String moduleId = modules.next();
 
             String moduleIdDirectory = moduleId;
 
@@ -527,9 +525,9 @@ public class FilesetArchetypeCreator
         // rewrite Dependencies
         if ( pom.getDependencies() != null && !pom.getDependencies().isEmpty() )
         {
-            for ( Iterator dependencies = pom.getDependencies().iterator(); dependencies.hasNext(); )
+            for ( Iterator<Dependency> dependencies = pom.getDependencies().iterator(); dependencies.hasNext(); )
             {
-                Dependency dependency = (Dependency) dependencies.next();
+                Dependency dependency = dependencies.next();
 
                 if ( dependency.getArtifactId() != null && dependency.getArtifactId().indexOf( rootArtifactId ) >= 0 )
                 {
@@ -760,32 +758,28 @@ public class FilesetArchetypeCreator
         properties.setProperty( Constants.ARTIFACT_ID, artifactId );
     }
 
-    private List concatenateToList( List toConcatenate, String with )
+    private List<String> concatenateToList( List<String> toConcatenate, String with )
     {
-        List result = new ArrayList( toConcatenate.size() );
+        List<String> result = new ArrayList<String>( toConcatenate.size() );
 
-        for ( Iterator iterator = toConcatenate.iterator(); iterator.hasNext(); )
+        for ( String concatenate : toConcatenate )
         {
-            String concatenate = (String) iterator.next();
-
             result.add( ( ( with.length() > 0 ) ? ( with + "/" + concatenate ) : concatenate ) );
         }
 
         return result;
     }
 
-    private void copyFiles( File basedir, File archetypeFilesDirectory, String directory, List fileSetResources,
-                            boolean packaged, String packageName )
+    private void copyFiles( File basedir, File archetypeFilesDirectory, String directory,
+                            List<String> fileSetResources, boolean packaged, String packageName )
         throws IOException
     {
         String packageAsDirectory = StringUtils.replace( packageName, ".", File.separator );
 
         getLogger().debug( "Package as Directory: Package:" + packageName + "->" + packageAsDirectory );
 
-        for ( Iterator iterator = fileSetResources.iterator();  iterator.hasNext(); )
+        for ( String inputFileName : fileSetResources )
         {
-            String inputFileName = (String) iterator.next();
-
             String outputFileName =
                 packaged ? StringUtils.replace( inputFileName, packageAsDirectory + File.separator, "" )
                                 : inputFileName;
@@ -802,16 +796,14 @@ public class FilesetArchetypeCreator
         }
     }
 
-    private void createArchetypeFiles( Properties reverseProperties, List fileSets, String packageName, File basedir,
-                                       File archetypeFilesDirectory, String defaultEncoding )
+    private void createArchetypeFiles( Properties reverseProperties, List<FileSet> fileSets, String packageName,
+                                       File basedir, File archetypeFilesDirectory, String defaultEncoding )
         throws IOException
     {
         getLogger().debug( "Creating Archetype/Module files from " + basedir + " to " + archetypeFilesDirectory );
 
-        for ( Iterator iterator = fileSets.iterator(); iterator.hasNext(); )
+        for ( FileSet fileSet : fileSets )
         {
-            FileSet fileSet = (FileSet) iterator.next();
-
             DirectoryScanner scanner = new DirectoryScanner();
             scanner.setBasedir( basedir );
             scanner.setIncludes( (String[]) concatenateToList( fileSet.getIncludes(),
@@ -821,7 +813,7 @@ public class FilesetArchetypeCreator
             getLogger().debug( "Using fileset " + fileSet );
             scanner.scan();
 
-            List fileSetResources = Arrays.asList( scanner.getIncludedFiles() );
+            List<String> fileSetResources = Arrays.asList( scanner.getIncludedFiles() );
             getLogger().debug( "Scanned " + fileSetResources.size() + " resources" );
 
             if ( fileSet.isFiltered() )
@@ -919,8 +911,8 @@ public class FilesetArchetypeCreator
         }
     }
 
-    private FileSet createFileSet( final List excludes, final boolean packaged, final boolean filtered,
-                                   final String group, final List includes, String defaultEncoding )
+    private FileSet createFileSet( final List<String> excludes, final boolean packaged, final boolean filtered,
+                                   final String group, final List<String> includes, String defaultEncoding )
     {
         FileSet fileSet = new FileSet();
 
@@ -936,10 +928,10 @@ public class FilesetArchetypeCreator
         return fileSet;
     }
 
-    private List createFileSets( List files, int level, boolean packaged, String packageName, boolean filtered,
-                                 String defaultEncoding )
+    private List<FileSet> createFileSets( List<String> files, int level, boolean packaged, String packageName,
+                                          boolean filtered, String defaultEncoding )
     {
-        List fileSets = new ArrayList();
+        List<FileSet> fileSets = new ArrayList<FileSet>();
 
         if ( !files.isEmpty() )
         {
@@ -948,8 +940,8 @@ public class FilesetArchetypeCreator
                                    + ( filtered ? " filtered" : "" ) + " at level " + level );
             if ( level == 0 )
             {
-                List includes = new ArrayList( files );
-                List excludes = new ArrayList();
+                List<String> includes = new ArrayList<String>( files );
+                List<String> excludes = new ArrayList<String>();
 
                 if ( !includes.isEmpty() )
                 {
@@ -958,22 +950,19 @@ public class FilesetArchetypeCreator
             }
             else
             {
-                Map groups = getGroupsMap( files, level );
+                Map<String, List<String>> groups = getGroupsMap( files, level );
 
-                for ( Iterator groupIterator = groups.keySet().iterator(); groupIterator.hasNext(); )
+                for ( String group : groups.keySet() )
                 {
-                    String group = (String) groupIterator.next();
-
                     getLogger().debug( "Creating filesets for group " + group );
 
                     if ( !packaged )
                     {
-                        fileSets.add( getUnpackagedFileSet( filtered, group, (List) groups.get( group ),
-                                                            defaultEncoding ) );
+                        fileSets.add( getUnpackagedFileSet( filtered, group, groups.get( group ), defaultEncoding ) );
                     }
                     else
                     {
-                        fileSets.addAll( getPackagedFileSets( filtered, group, (List) groups.get( group ), packageName,
+                        fileSets.addAll( getPackagedFileSets( filtered, group, groups.get( group ), packageName,
                                                               defaultEncoding ) );
                     }
                 }
@@ -1167,14 +1156,12 @@ public class FilesetArchetypeCreator
         }
     }
 
-    private Set getExtensions( List files )
+    private Set<String> getExtensions( List<String> files )
     {
-        Set extensions = new HashSet();
+        Set<String> extensions = new HashSet<String>();
 
-        for ( Iterator filesIterator = files.iterator(); filesIterator.hasNext(); )
+        for ( String file : files )
         {
-            String file = (String) filesIterator.next();
-
             extensions.add( FileUtils.extension( file ) );
         }
 
@@ -1186,24 +1173,22 @@ public class FilesetArchetypeCreator
         return "target" + File.separator + "generated-sources" + File.separator + "archetype";
     }
 
-    private Map getGroupsMap( final List files, final int level )
+    private Map<String, List<String>> getGroupsMap( final List<String> files, final int level )
     {
-        Map groups = new HashMap();
+        Map<String, List<String>> groups = new HashMap<String, List<String>>();
 
-        for ( Iterator fileIterator = files.iterator(); fileIterator.hasNext(); )
+        for ( String file : files )
         {
-            String file = (String) fileIterator.next();
-
             String directory = PathUtils.getDirectory( file, level );
             // make all groups have unix style
             directory = StringUtils.replace( directory, File.separator, "/" );
 
             if ( !groups.containsKey( directory ) )
             {
-                groups.put( directory, new ArrayList() );
+                groups.put( directory, new ArrayList<String>() );
             }
 
-            List group = (List) groups.get( directory );
+            List<String> group = groups.get( directory );
 
             String innerPath = file.substring( directory.length() + 1 );
             // make all groups have unix style
@@ -1218,17 +1203,15 @@ public class FilesetArchetypeCreator
         return groups;
     }
 
-    private FileSet getPackagedFileSet( final boolean filtered, final Set packagedExtensions, final String group,
-                                        final Set unpackagedExtensions, final List unpackagedFiles,
-                                        String defaultEncoding )
+    private FileSet getPackagedFileSet( final boolean filtered, final Set<String> packagedExtensions,
+                                        final String group, final Set<String> unpackagedExtensions,
+                                        final List<String> unpackagedFiles, String defaultEncoding )
     {
-        List includes = new ArrayList();
-        List excludes = new ArrayList();
+        List<String> includes = new ArrayList<String>();
+        List<String> excludes = new ArrayList<String>();
 
-        for ( Iterator extensionsIterator = packagedExtensions.iterator(); extensionsIterator.hasNext(); )
+        for ( String extension : packagedExtensions )
         {
-            String extension = (String) extensionsIterator.next();
-
             includes.add( "**/*." + extension );
 
             if ( unpackagedExtensions.contains( extension ) )
@@ -1240,22 +1223,23 @@ public class FilesetArchetypeCreator
         return createFileSet( excludes, true, filtered, group, includes, defaultEncoding );
     }
 
-    private List getPackagedFileSets( final boolean filtered, final String group, final List groupFiles,
-                                      final String packageName, String defaultEncoding )
+    private List<FileSet> getPackagedFileSets( final boolean filtered, final String group,
+                                               final List<String> groupFiles, final String packageName,
+                                               String defaultEncoding )
     {
         String packageAsDir = StringUtils.replace( packageName, ".", "/" );
 
-        List packagedFileSets = new ArrayList();
-        List packagedFiles = archetypeFilesResolver.getPackagedFiles( groupFiles, packageAsDir );
+        List<FileSet> packagedFileSets = new ArrayList<FileSet>();
+        List<String> packagedFiles = archetypeFilesResolver.getPackagedFiles( groupFiles, packageAsDir );
         getLogger().debug( "Found packaged Files:" + packagedFiles );
 
-        List unpackagedFiles = archetypeFilesResolver.getUnpackagedFiles( groupFiles, packageAsDir );
+        List<String> unpackagedFiles = archetypeFilesResolver.getUnpackagedFiles( groupFiles, packageAsDir );
         getLogger().debug( "Found unpackaged Files:" + unpackagedFiles );
 
-        Set packagedExtensions = getExtensions( packagedFiles );
+        Set<String> packagedExtensions = getExtensions( packagedFiles );
         getLogger().debug( "Found packaged extensions " + packagedExtensions );
 
-        Set unpackagedExtensions = getExtensions( unpackagedFiles );
+        Set<String> unpackagedExtensions = getExtensions( unpackagedFiles );
 
         if ( !packagedExtensions.isEmpty() )
         {
@@ -1279,19 +1263,17 @@ public class FilesetArchetypeCreator
         properties.setProperty( Constants.PARENT_ARTIFACT_ID, parentArtifactId );
     }
 
-    private void processFileSet( File basedir, File archetypeFilesDirectory, String directory, List fileSetResources,
-                                 boolean packaged, String packageName, Properties reverseProperties,
-                                 String defaultEncoding )
+    private void processFileSet( File basedir, File archetypeFilesDirectory, String directory,
+                                 List<String> fileSetResources, boolean packaged, String packageName,
+                                 Properties reverseProperties, String defaultEncoding )
         throws IOException
     {
         String packageAsDirectory = StringUtils.replace( packageName, ".", File.separator );
 
         getLogger().debug( "Package as Directory: Package:" + packageName + "->" + packageAsDirectory );
 
-        for ( Iterator iterator = fileSetResources.iterator(); iterator.hasNext(); )
+        for ( String inputFileName : fileSetResources )
         {
-            String inputFileName = (String) iterator.next();
-
             String outputFileName =
                 packaged ? StringUtils.replace( inputFileName, packageAsDirectory + File.separator, "" )
                                 : inputFileName;
@@ -1328,19 +1310,17 @@ public class FilesetArchetypeCreator
         }
     }
 
-    private List removePackage( List sources, String packageAsDirectory )
+    private List<String> removePackage( List<String> sources, String packageAsDirectory )
     {
         if ( sources == null )
         {
             return null;
         }
 
-        List unpackagedSources = new ArrayList( sources.size() );
+        List<String> unpackagedSources = new ArrayList<String>( sources.size() );
 
-        for ( Iterator sourcesIterator = sources.iterator(); sourcesIterator.hasNext(); )
+        for ( String source : sources )
         {
-            String source = (String) sourcesIterator.next();
-
             String unpackagedSource = StringUtils.replace( source, packageAsDirectory, "" );
 
             unpackagedSources.add( unpackagedSource );
@@ -1363,7 +1343,7 @@ public class FilesetArchetypeCreator
         return reversedProperties;
     }
 
-    private List resolveFileNames( final Model pom, final File basedir )
+    private List<String> resolveFileNames( final Model pom, final File basedir )
         throws IOException
     {
         getLogger().debug( "Resolving files for " + pom.getId() + " in " + basedir );
@@ -1374,15 +1354,14 @@ public class FilesetArchetypeCreator
             buff.append( ',' ).append( (String) modules.next() ).append( "/**" );
         }
 
-        for ( Iterator defaultExcludes = Arrays.asList( ListScanner.DEFAULTEXCLUDES ).iterator();
-            defaultExcludes.hasNext(); )
+        for ( String defaultExclude : ListScanner.DEFAULTEXCLUDES )
         {
-            buff.append( ',' ).append( (String) defaultExcludes.next() ).append( "/**" );
+            buff.append( ',' ).append( defaultExclude ).append( "/**" );
         }
 
         String excludes = PathUtils.convertPathForOS( buff.toString() );
 
-        List fileNames = FileUtils.getFileNames( basedir, "**,.*,**/.*", excludes, false );
+        List<String> fileNames = FileUtils.getFileNames( basedir, "**,.*,**/.*", excludes, false );
 
         getLogger().debug( "Resolved " + fileNames.size() + " files" );
         getLogger().debug( "Resolved Files:" + fileNames );
@@ -1390,32 +1369,28 @@ public class FilesetArchetypeCreator
         return fileNames;
     }
 
-    private List resolveFileSets( String packageName, List fileNames, List languages, List filtereds,
-                                  String defaultEncoding )
+    private List<FileSet> resolveFileSets( String packageName, List<String> fileNames, List<String> languages,
+                                           List<String> filtereds, String defaultEncoding )
     {
-        List resolvedFileSets = new ArrayList();
+        List<FileSet> resolvedFileSets = new ArrayList<FileSet>();
         getLogger().debug(
                            "Resolving filesets with package=" + packageName + ", languages=" + languages
                                + " and extentions=" + filtereds );
 
-        List files = new ArrayList( fileNames );
+        List<String> files = new ArrayList<String>( fileNames );
 
         String languageIncludes = "";
 
-        for ( Iterator languagesIterator = languages.iterator(); languagesIterator.hasNext(); )
+        for ( String language : languages )
         {
-            String language = (String) languagesIterator.next();
-
             languageIncludes += ( ( languageIncludes.length() == 0 ) ? "" : "," ) + language + "/**";
         }
 
         getLogger().debug( "Using languages includes " + languageIncludes );
 
         String filteredIncludes = "";
-        for ( Iterator filteredsIterator = filtereds.iterator(); filteredsIterator.hasNext(); )
+        for ( String filtered : filtereds )
         {
-            String filtered = (String) filteredsIterator.next();
-
             filteredIncludes +=
                 ( ( filteredIncludes.length() == 0 ) ? "" : "," ) + "**/" + ( filtered.startsWith( "." ) ? "" : "*." )
                     + filtered;
@@ -1424,15 +1399,15 @@ public class FilesetArchetypeCreator
         getLogger().debug( "Using filtered includes " + filteredIncludes );
 
         /* sourcesMainFiles */
-        List sourcesMainFiles = archetypeFilesResolver.findSourcesMainFiles( files, languageIncludes );
+        List<String> sourcesMainFiles = archetypeFilesResolver.findSourcesMainFiles( files, languageIncludes );
         if ( !sourcesMainFiles.isEmpty() )
         {
             files.removeAll( sourcesMainFiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( sourcesMainFiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( sourcesMainFiles, filteredIncludes );
             sourcesMainFiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = sourcesMainFiles;
+            List<String> unfilteredFiles = sourcesMainFiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 3, true, packageName, true, defaultEncoding ) );
@@ -1445,15 +1420,15 @@ public class FilesetArchetypeCreator
         }
 
         /* resourcesMainFiles */
-        List resourcesMainFiles = archetypeFilesResolver.findResourcesMainFiles( files, languageIncludes );
+        List<String> resourcesMainFiles = archetypeFilesResolver.findResourcesMainFiles( files, languageIncludes );
         if ( !resourcesMainFiles.isEmpty() )
         {
             files.removeAll( resourcesMainFiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( resourcesMainFiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( resourcesMainFiles, filteredIncludes );
             resourcesMainFiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = resourcesMainFiles;
+            List<String> unfilteredFiles = resourcesMainFiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 3, false, packageName, true, defaultEncoding ) );
@@ -1465,15 +1440,15 @@ public class FilesetArchetypeCreator
         }
 
         /* sourcesTestFiles */
-        List sourcesTestFiles = archetypeFilesResolver.findSourcesTestFiles( files, languageIncludes );
+        List<String> sourcesTestFiles = archetypeFilesResolver.findSourcesTestFiles( files, languageIncludes );
         if ( !sourcesTestFiles.isEmpty() )
         {
             files.removeAll( sourcesTestFiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( sourcesTestFiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( sourcesTestFiles, filteredIncludes );
             sourcesTestFiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = sourcesTestFiles;
+            List<String> unfilteredFiles = sourcesTestFiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 3, true, packageName, true, defaultEncoding ) );
@@ -1485,15 +1460,15 @@ public class FilesetArchetypeCreator
         }
 
         /* ressourcesTestFiles */
-        List resourcesTestFiles = archetypeFilesResolver.findResourcesTestFiles( files, languageIncludes );
+        List<String> resourcesTestFiles = archetypeFilesResolver.findResourcesTestFiles( files, languageIncludes );
         if ( !resourcesTestFiles.isEmpty() )
         {
             files.removeAll( resourcesTestFiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( resourcesTestFiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( resourcesTestFiles, filteredIncludes );
             resourcesTestFiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = resourcesTestFiles;
+            List<String> unfilteredFiles = resourcesTestFiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 3, false, packageName, true, defaultEncoding ) );
@@ -1505,15 +1480,15 @@ public class FilesetArchetypeCreator
         }
 
         /* siteFiles */
-        List siteFiles = archetypeFilesResolver.findSiteFiles( files, languageIncludes );
+        List<String> siteFiles = archetypeFilesResolver.findSiteFiles( files, languageIncludes );
         if ( !siteFiles.isEmpty() )
         {
             files.removeAll( siteFiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( siteFiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( siteFiles, filteredIncludes );
             siteFiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = siteFiles;
+            List<String> unfilteredFiles = siteFiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 2, false, packageName, true, defaultEncoding ) );
@@ -1525,15 +1500,15 @@ public class FilesetArchetypeCreator
         }
 
         /* thirdLevelSourcesfiles */
-        List thirdLevelSourcesfiles = archetypeFilesResolver.findOtherSources( 3, files, languageIncludes );
+        List<String> thirdLevelSourcesfiles = archetypeFilesResolver.findOtherSources( 3, files, languageIncludes );
         if ( !thirdLevelSourcesfiles.isEmpty() )
         {
             files.removeAll( thirdLevelSourcesfiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( thirdLevelSourcesfiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( thirdLevelSourcesfiles, filteredIncludes );
             thirdLevelSourcesfiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = thirdLevelSourcesfiles;
+            List<String> unfilteredFiles = thirdLevelSourcesfiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 3, true, packageName, true, defaultEncoding ) );
@@ -1544,7 +1519,7 @@ public class FilesetArchetypeCreator
             }
 
             /* thirdLevelResourcesfiles */
-            List thirdLevelResourcesfiles =
+            List<String> thirdLevelResourcesfiles =
                 archetypeFilesResolver.findOtherResources( 3, files, thirdLevelSourcesfiles, languageIncludes );
             if ( !thirdLevelResourcesfiles.isEmpty() )
             {
@@ -1566,15 +1541,15 @@ public class FilesetArchetypeCreator
         } // end if
 
         /* secondLevelSourcesfiles */
-        List secondLevelSourcesfiles = archetypeFilesResolver.findOtherSources( 2, files, languageIncludes );
+        List<String> secondLevelSourcesfiles = archetypeFilesResolver.findOtherSources( 2, files, languageIncludes );
         if ( !secondLevelSourcesfiles.isEmpty() )
         {
             files.removeAll( secondLevelSourcesfiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( secondLevelSourcesfiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( secondLevelSourcesfiles, filteredIncludes );
             secondLevelSourcesfiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = secondLevelSourcesfiles;
+            List<String> unfilteredFiles = secondLevelSourcesfiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 2, true, packageName, true, defaultEncoding ) );
@@ -1586,15 +1561,15 @@ public class FilesetArchetypeCreator
         }
 
         /* secondLevelResourcesfiles */
-        List secondLevelResourcesfiles = archetypeFilesResolver.findOtherResources( 2, files, languageIncludes );
+        List<String> secondLevelResourcesfiles = archetypeFilesResolver.findOtherResources( 2, files, languageIncludes );
         if ( !secondLevelResourcesfiles.isEmpty() )
         {
             files.removeAll( secondLevelResourcesfiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( secondLevelResourcesfiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( secondLevelResourcesfiles, filteredIncludes );
             secondLevelResourcesfiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = secondLevelResourcesfiles;
+            List<String> unfilteredFiles = secondLevelResourcesfiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 2, false, packageName, true, defaultEncoding ) );
@@ -1606,15 +1581,15 @@ public class FilesetArchetypeCreator
         }
 
         /* rootResourcesfiles */
-        List rootResourcesfiles = archetypeFilesResolver.findOtherResources( 0, files, languageIncludes );
+        List<String> rootResourcesfiles = archetypeFilesResolver.findOtherResources( 0, files, languageIncludes );
         if ( !rootResourcesfiles.isEmpty() )
         {
             files.removeAll( rootResourcesfiles );
 
-            List filteredFiles = archetypeFilesResolver.getFilteredFiles( rootResourcesfiles, filteredIncludes );
+            List<String> filteredFiles = archetypeFilesResolver.getFilteredFiles( rootResourcesfiles, filteredIncludes );
             rootResourcesfiles.removeAll( filteredFiles );
 
-            List unfilteredFiles = rootResourcesfiles;
+            List<String> unfilteredFiles = rootResourcesfiles;
             if ( !filteredFiles.isEmpty() )
             {
                 resolvedFileSets.addAll( createFileSets( filteredFiles, 0, false, packageName, true, defaultEncoding ) );
@@ -1682,32 +1657,28 @@ public class FilesetArchetypeCreator
     private FileSet getUnpackagedFileSet( final boolean filtered, final String group, final List groupFiles,
                                           String defaultEncoding )
     {
-        Set extensions = getExtensions( groupFiles );
+        Set<String> extensions = getExtensions( groupFiles );
 
-        List includes = new ArrayList();
-        List excludes = new ArrayList();
+        List<String> includes = new ArrayList<String>();
+        List<String> excludes = new ArrayList<String>();
 
-        for ( Iterator extensionsIterator = extensions.iterator(); extensionsIterator.hasNext(); )
+        for ( String extension : extensions )
         {
-            String extension = (String) extensionsIterator.next();
-
             includes.add( "**/*." + extension );
         }
 
         return createFileSet( excludes, false, filtered, group, includes, defaultEncoding );
     }
 
-    private FileSet getUnpackagedFileSet( final boolean filtered, final Set unpackagedExtensions,
-                                          final List unpackagedFiles, final String group, final Set packagedExtensions,
-                                          String defaultEncoding )
+    private FileSet getUnpackagedFileSet( final boolean filtered, final Set<String> unpackagedExtensions,
+                                          final List<String> unpackagedFiles, final String group,
+                                          final Set<String> packagedExtensions, String defaultEncoding )
     {
-        List includes = new ArrayList();
-        List excludes = new ArrayList();
+        List<String> includes = new ArrayList<String>();
+        List<String> excludes = new ArrayList<String>();
 
-        for ( Iterator extensionsIterator = unpackagedExtensions.iterator(); extensionsIterator.hasNext(); )
+        for ( String extension : unpackagedExtensions )
         {
-            String extension = (String) extensionsIterator.next();
-
             if ( packagedExtensions.contains( extension ) )
             {
                 includes.addAll( archetypeFilesResolver.getFilesWithExtension( unpackagedFiles, extension ) );

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/DefaultDownloader.java Sun Jun 13 22:01:28 2010
@@ -48,12 +48,12 @@ public class DefaultDownloader
     private ArtifactFactory artifactFactory;
 
     public File download( String groupId, String artifactId, String version, ArtifactRepository archetypeRepository,
-                          ArtifactRepository localRepository, List remoteRepositories )
+                          ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
         throws DownloadException, DownloadNotFoundException
    {
         Artifact artifact = artifactFactory.createArtifact( groupId, artifactId, version, Artifact.SCOPE_RUNTIME, "jar" );
 
-        List repositories = new ArrayList( remoteRepositories );
+        List<ArtifactRepository> repositories = new ArrayList<ArtifactRepository>( remoteRepositories );
         if ( repositories.isEmpty() && archetypeRepository != null )
         {
             repositories.add( archetypeRepository );
@@ -61,7 +61,6 @@ public class DefaultDownloader
         else if ( repositories.isEmpty() && localRepository != null )
         {
             repositories.add( localRepository );
-
         }
 
         ArtifactRepository localRepo = localRepository;
@@ -82,7 +81,7 @@ public class DefaultDownloader
     }
 
     public File downloadOld( String groupId, String artifactId, String version, ArtifactRepository archetypeRepository,
-                             ArtifactRepository localRepository, List remoteRepositories )
+                             ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
         throws DownloadException, DownloadNotFoundException
    {
         Artifact artifact = artifactFactory.createArtifact( groupId, artifactId, version, Artifact.SCOPE_RUNTIME, "jar" );

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/Downloader.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/Downloader.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/Downloader.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/downloader/Downloader.java Sun Jun 13 22:01:28 2010
@@ -32,10 +32,10 @@ public interface Downloader
     String ROLE = Downloader.class.getName();
 
     public File download( String groupId, String artifactId, String version, ArtifactRepository archetypeRepository,
-                          ArtifactRepository localRepository, List remoteRepositories )
+                          ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
         throws DownloadException, DownloadNotFoundException;
 
     public File downloadOld( String groupId, String artifactId, String version, ArtifactRepository archetypeRepository,
-                             ArtifactRepository localRepository, List remoteRepositories )
+                             ArtifactRepository localRepository, List<ArtifactRepository> remoteRepositories )
         throws DownloadException, DownloadNotFoundException;
 }

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultArchetypeGenerator.java Sun Jun 13 22:01:28 2010
@@ -70,7 +70,7 @@ public class DefaultArchetypeGenerator
             throw new ArchetypeNotDefined( "The archetype is not defined" );
         }
 
-        List repos = new ArrayList/* repositories */();
+        List<ArtifactRepository> repos = new ArrayList<ArtifactRepository>();
 
         ArtifactRepository remoteRepo = null;
         if ( request != null && request.getArchetypeRepository() != null )

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/generator/DefaultFilesetArchetypeGenerator.java Sun Jun 13 22:01:28 2010
@@ -112,12 +112,9 @@ public class DefaultFilesetArchetypeGene
                         + request.getArchetypeArtifactId() + ":" + request.getArchetypeVersion()
                         + " is not configured" );
 
-                    List missingProperties = new ArrayList( 0 );
-                    for ( Iterator requiredProperties = archetypeDescriptor.getRequiredProperties().iterator();
-                        requiredProperties.hasNext(); )
+                    List<String> missingProperties = new ArrayList<String>( 0 );
+                    for ( RequiredProperty requiredProperty : archetypeDescriptor.getRequiredProperties() )
                     {
-                        RequiredProperty requiredProperty = (RequiredProperty) requiredProperties.next();
-
                         if ( StringUtils.isEmpty( request.getProperties().getProperty( requiredProperty.getKey() ) ) )
                         {
                             exceptionMessage.append( "\n\tProperty " + requiredProperty.getKey() + " is missing." );
@@ -138,7 +135,7 @@ public class DefaultFilesetArchetypeGene
             File basedirPom = new File( request.getOutputDirectory(), Constants.ARCHETYPE_POM );
             File pom = new File( outputDirectoryFile, Constants.ARCHETYPE_POM );
 
-            List archetypeResources =
+            List<String> archetypeResources =
                 archetypeArtifactManager.getFilesetArchetypeResources( archetypeFile );
 
             ZipFile archetypeZipFile =
@@ -275,17 +272,13 @@ public class DefaultFilesetArchetypeGene
         }
     }
 
-    private void copyFiles( String directory, List fileSetResources, boolean packaged, String packageName,
+    private void copyFiles( String directory, List<String> fileSetResources, boolean packaged, String packageName,
                             File outputDirectoryFile, ZipFile archetypeZipFile, String moduleOffset,
                             boolean failIfExists, Context context )
         throws OutputFileExists, FileNotFoundException, IOException
     {
-        Iterator iterator = fileSetResources.iterator();
-
-        while ( iterator.hasNext() )
+        for ( String template : fileSetResources )
         {
-            String template = (String) iterator.next();
-
             File outputFile =
                 getOutputFile( template, directory, outputDirectoryFile, packaged, packageName, moduleOffset, context );
 
@@ -399,19 +392,15 @@ public class DefaultFilesetArchetypeGene
 
     private boolean isArchetypeConfigured( ArchetypeDescriptor archetypeDescriptor, ArchetypeGenerationRequest request )
     {
-        boolean configured = true;
-
-        Iterator requiredProperties = archetypeDescriptor.getRequiredProperties().iterator();
-
-        while ( configured && requiredProperties.hasNext() )
+        for ( RequiredProperty requiredProperty : archetypeDescriptor.getRequiredProperties() )
         {
-            RequiredProperty requiredProperty = (RequiredProperty) requiredProperties.next();
-
-            configured =
-                configured && StringUtils.isNotEmpty( request.getProperties().getProperty( requiredProperty.getKey() ) );
+            if ( StringUtils.isEmpty( request.getProperties().getProperty( requiredProperty.getKey() ) ) )
+            {
+                return false;
+            }
         }
 
-        return configured;
+        return true;
     }
 
     private void setParentArtifactId( Context context, String artifactId )
@@ -439,9 +428,10 @@ public class DefaultFilesetArchetypeGene
         return context;
     }
 
-    private void processArchetypeTemplates( AbstractArchetypeDescriptor archetypeDescriptor, List archetypeResources,
-                                            ZipFile archetypeZipFile, String moduleOffset, Context context,
-                                            String packageName, File outputDirectoryFile )
+    private void processArchetypeTemplates( AbstractArchetypeDescriptor archetypeDescriptor,
+                                            List<String> archetypeResources, ZipFile archetypeZipFile,
+                                            String moduleOffset, Context context, String packageName,
+                                            File outputDirectoryFile )
         throws OutputFileExists, ArchetypeGenerationFailure, FileNotFoundException, IOException
     {
         processTemplates( packageName, outputDirectoryFile, context, archetypeDescriptor, archetypeResources,
@@ -450,7 +440,7 @@ public class DefaultFilesetArchetypeGene
 
     private void processArchetypeTemplatesWithWarning(
                                                        org.apache.maven.archetype.metadata.ArchetypeDescriptor archetypeDescriptor,
-                                                       List archetypeResources, ZipFile archetypeZipFile,
+                                                       List<String> archetypeResources, ZipFile archetypeZipFile,
                                                        String moduleOffset, Context context, String packageName,
                                                        File outputDirectoryFile )
         throws OutputFileExists, ArchetypeGenerationFailure, FileNotFoundException, IOException
@@ -459,15 +449,13 @@ public class DefaultFilesetArchetypeGene
                           archetypeZipFile, moduleOffset, true );
     }
 
-    private void processFileSet( String directory, List fileSetResources, boolean packaged, String packageName,
+    private void processFileSet( String directory, List<String> fileSetResources, boolean packaged, String packageName,
                                  Context context, File outputDirectoryFile, String moduleOffset,
                                  String archetypeEncoding, boolean failIfExists )
         throws OutputFileExists, ArchetypeGenerationFailure
     {
-        for ( Iterator iterator = fileSetResources.iterator(); iterator.hasNext(); )
+        for ( String template : fileSetResources )
         {
-            String template = (String) iterator.next();
-
             File outputFile =
                 getOutputFile( template, directory, outputDirectoryFile, packaged, packageName, moduleOffset, context );
 
@@ -476,7 +464,7 @@ public class DefaultFilesetArchetypeGene
         }
     }
 
-    private void processFilesetModule( String rootArtifactId, String artifactId, final List archetypeResources,
+    private void processFilesetModule( String rootArtifactId, String artifactId, final List<String> archetypeResources,
                                        File pom, final ZipFile archetypeZipFile, String moduleOffset, File basedirPom,
                                        File outputDirectoryFile, final String packageName,
                                        final AbstractArchetypeDescriptor archetypeDescriptor, final Context context )
@@ -497,7 +485,7 @@ public class DefaultFilesetArchetypeGene
 
         String parentArtifactId = (String) context.get( Constants.PARENT_ARTIFACT_ID );
 
-        Iterator subprojects = archetypeDescriptor.getModules().iterator();
+        Iterator<ModuleDescriptor> subprojects = archetypeDescriptor.getModules().iterator();
 
         if ( subprojects.hasNext() )
         {
@@ -508,7 +496,7 @@ public class DefaultFilesetArchetypeGene
 
         while ( subprojects.hasNext() )
         {
-            ModuleDescriptor project = (ModuleDescriptor) subprojects.next();
+            ModuleDescriptor project = subprojects.next();
 
             artifactId = project.getId();
 
@@ -534,9 +522,9 @@ public class DefaultFilesetArchetypeGene
     }
 
     private void processFilesetProject( final AbstractArchetypeDescriptor archetypeDescriptor, final String moduleId,
-                                        final List archetypeResources, final File pom, final ZipFile archetypeZipFile,
-                                        String moduleOffset, final Context context, final String packageName,
-                                        final File outputDirectoryFile, final File basedirPom )
+                                        final List<String> archetypeResources, final File pom,
+                                        final ZipFile archetypeZipFile, String moduleOffset, final Context context,
+                                        final String packageName, final File outputDirectoryFile, final File basedirPom )
         throws DocumentException, XmlPullParserException, ArchetypeGenerationFailure, InvalidPackaging, IOException,
         FileNotFoundException, OutputFileExists
     {
@@ -666,11 +654,11 @@ public class DefaultFilesetArchetypeGene
     }
 
     private void processTemplates( String packageName, File outputDirectoryFile, Context context,
-                                   AbstractArchetypeDescriptor archetypeDescriptor, List archetypeResources,
+                                   AbstractArchetypeDescriptor archetypeDescriptor, List<String> archetypeResources,
                                    ZipFile archetypeZipFile, String moduleOffset, boolean failIfExists )
         throws OutputFileExists, ArchetypeGenerationFailure, FileNotFoundException, IOException
     {
-        Iterator iterator = archetypeDescriptor.getFileSets().iterator();
+        Iterator<FileSet> iterator = archetypeDescriptor.getFileSets().iterator();
         if ( iterator.hasNext() )
         {
             getLogger().debug( "Processing filesets" );
@@ -678,9 +666,10 @@ public class DefaultFilesetArchetypeGene
 
         while ( iterator.hasNext() )
         {
-            FileSet fileSet = (FileSet) iterator.next();
+            FileSet fileSet = iterator.next();
 
-            List fileSetResources = archetypeFilesResolver.filterFiles( moduleOffset, fileSet, archetypeResources );
+            List<String> fileSetResources =
+                archetypeFilesResolver.filterFiles( moduleOffset, fileSet, archetypeResources );
 
             // This creates an empty directory, even if there is no file to process
             // Fix for ARCHETYPE-57

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/DefaultOldArchetype.java Sun Jun 13 22:01:28 2010
@@ -65,7 +65,6 @@ import java.net.URLClassLoader;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
-import java.util.Set;
 
 /**
  * @plexus.component
@@ -121,7 +120,7 @@ public class DefaultOldArchetype
     public void createArchetype( ArchetypeGenerationRequest request, File archetypeFile )
         throws ArchetypeDescriptorException, ArchetypeTemplateProcessingException
     {
-        Map parameters = new HashMap();
+        Map<String, String> parameters = new HashMap<String, String>();
 
         parameters.put( "basedir", request.getOutputDirectory() );
 
@@ -149,15 +148,11 @@ public class DefaultOldArchetype
 
                 getLogger().info( "----------------------------------------------------------------------------" );
 
-                Set keys = parameters.keySet();
-
-                Iterator it = keys.iterator();
-
-                while ( it.hasNext() )
+                for ( Map.Entry<String, String> entry : parameters.entrySet() )
                 {
-                    String parameterName = (String) it.next();
+                    String parameterName = entry.getKey();
 
-                    String parameterValue = (String) parameters.get( parameterName );
+                    String parameterValue = entry.getValue();
 
                     getLogger().info( "Parameter: " + parameterName + ", Value: " + parameterValue );
                 }
@@ -288,13 +283,9 @@ public class DefaultOldArchetype
 
         context.put( Constants.PACKAGE, packageName );
 
-        for ( Iterator iterator = parameters.keySet().iterator(); iterator.hasNext(); )
+        for ( Map.Entry<String, String> entry : parameters.entrySet() )
         {
-            String key = (String) iterator.next();
-
-            Object value = parameters.get( key );
-
-            context.put( key, value );
+            context.put( entry.getKey(), entry.getValue() );
         }
 
         // ----------------------------------------------------------------------
@@ -766,10 +757,8 @@ public class DefaultOldArchetype
                                    String packageName, String sourceDirectory )
         throws ArchetypeTemplateProcessingException
     {
-        for ( Iterator i = descriptor.getSources().iterator(); i.hasNext(); )
+        for ( String template : descriptor.getSources() )
         {
-            String template = (String) i.next();
-
             processTemplate( outputDirectory, context, template, descriptor.getSourceDescriptor( template ), true,
                              packageName, sourceDirectory );
         }
@@ -779,10 +768,8 @@ public class DefaultOldArchetype
                                        String packageName, String testSourceDirectory )
         throws ArchetypeTemplateProcessingException
     {
-        for ( Iterator i = descriptor.getTestSources().iterator(); i.hasNext(); )
+        for ( String template : descriptor.getTestSources() )
         {
-            String template = (String) i.next();
-
             processTemplate( outputDirectory, context, template, descriptor.getTestSourceDescriptor( template ), true,
                              packageName, testSourceDirectory );
         }
@@ -792,10 +779,8 @@ public class DefaultOldArchetype
                                      String packageName )
         throws ArchetypeTemplateProcessingException
     {
-        for ( Iterator i = descriptor.getResources().iterator(); i.hasNext(); )
+        for ( String template : descriptor.getResources() )
         {
-            String template = (String) i.next();
-
             processTemplate( outputDirectory, context, template, descriptor.getResourceDescriptor( template ), false,
                              packageName );
         }
@@ -805,10 +790,8 @@ public class DefaultOldArchetype
                                          String packageName )
         throws ArchetypeTemplateProcessingException
     {
-        for ( Iterator i = descriptor.getTestResources().iterator(); i.hasNext(); )
+        for ( String template : descriptor.getTestResources() )
         {
-            String template = (String) i.next();
-
             processTemplate( outputDirectory, context, template, descriptor.getTestResourceDescriptor( template ),
                              false, packageName );
         }
@@ -818,10 +801,8 @@ public class DefaultOldArchetype
                                          String packageName )
         throws ArchetypeTemplateProcessingException
     {
-        for ( Iterator i = descriptor.getSiteResources().iterator(); i.hasNext(); )
+        for ( String template : descriptor.getSiteResources() )
         {
-            String template = (String) i.next();
-
             processTemplate( outputDirectory, context, template, descriptor.getSiteResourceDescriptor( template ),
                              false, packageName );
         }

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/descriptor/ArchetypeDescriptor.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/descriptor/ArchetypeDescriptor.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/descriptor/ArchetypeDescriptor.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/old/descriptor/ArchetypeDescriptor.java Sun Jun 13 22:01:28 2010
@@ -28,50 +28,50 @@ public class ArchetypeDescriptor
 {
     private String id;
 
-    private List sources;
+    private List<String> sources;
 
-    private List testSources;
+    private List<String> testSources;
 
-    private List resources;
+    private List<String> resources;
 
-    private List testResources;
+    private List<String> testResources;
 
-    private List siteResources;
+    private List<String> siteResources;
 
     /**
      * <code>Map</code> that associates the items in the <code>List</code>
      * <code>sources</code> with their attributes (instances of
      * <code>TemplateDescriptor</code>.
      */
-    private Map sourcesDescriptors;
+    private Map<String, TemplateDescriptor> sourcesDescriptors;
 
     /**
      * <code>Map</code> that associates the items in the <code>List</code>
      * <code>testSources</code> with their attributes (instances of
      * <code>TemplateDescriptor</code>.
      */
-    private Map testSourcesDescriptors;
+    private Map<String, TemplateDescriptor> testSourcesDescriptors;
 
     /**
      * <code>Map</code> that associates the items in the <code>List</code>
      * <code>resources</code> with their attributes (instances of
      * <code>TemplateDescriptor</code>.
      */
-    private Map resourcesDescriptors;
+    private Map<String, TemplateDescriptor> resourcesDescriptors;
 
     /**
      * <code>Map</code> that associates the items in the <code>List</code>
      * <code>testResources</code> with their attributes (instances of
      * <code>TemplateDescriptor</code>.
      */
-    private Map testResourcesDescriptors;
+    private Map<String, TemplateDescriptor> testResourcesDescriptors;
 
     /**
      * <code>Map</code> that associates the items in the <code>List</code>
      * <code>siteResources</code> with their attributes (instances of
      * <code>TemplateDescriptor</code>.
      */
-    private Map siteResourcesDescriptors;
+    private Map<String, TemplateDescriptor> siteResourcesDescriptors;
 
     /**
      * This indicates the archetype can be a whole project or can be part
@@ -83,25 +83,25 @@ public class ArchetypeDescriptor
 
     public ArchetypeDescriptor()
     {
-        sources = new ArrayList();
+        sources = new ArrayList<String>();
 
-        resources = new ArrayList();
+        resources = new ArrayList<String>();
 
-        testSources = new ArrayList();
+        testSources = new ArrayList<String>();
 
-        testResources = new ArrayList();
+        testResources = new ArrayList<String>();
 
-        siteResources = new ArrayList();
+        siteResources = new ArrayList<String>();
 
-        sourcesDescriptors = new HashMap();
+        sourcesDescriptors = new HashMap<String, TemplateDescriptor>();
 
-        testSourcesDescriptors = new HashMap();
+        testSourcesDescriptors = new HashMap<String, TemplateDescriptor>();
 
-        resourcesDescriptors = new HashMap();
+        resourcesDescriptors = new HashMap<String, TemplateDescriptor>();
 
-        testResourcesDescriptors = new HashMap();
+        testResourcesDescriptors = new HashMap<String, TemplateDescriptor>();
 
-        siteResourcesDescriptors = new HashMap();
+        siteResourcesDescriptors = new HashMap<String, TemplateDescriptor>();
     }
 
     // ----------------------------------------------------------------------
@@ -125,7 +125,7 @@ public class ArchetypeDescriptor
         putSourceDescriptor( source, new TemplateDescriptor() );
     }
 
-    public List getSources()
+    public List<String> getSources()
     {
         return sources;
     }
@@ -137,10 +137,10 @@ public class ArchetypeDescriptor
 
     public TemplateDescriptor getSourceDescriptor( String source )
     {
-        return (TemplateDescriptor) sourcesDescriptors.get( source );
+        return sourcesDescriptors.get( source );
     }
 
-    public Map getSourcesDescriptors()
+    public Map<String, TemplateDescriptor> getSourcesDescriptors()
     {
         return sourcesDescriptors;
     }
@@ -152,7 +152,7 @@ public class ArchetypeDescriptor
         putTestSourceDescriptor( testSource, new TemplateDescriptor() );
     }
 
-    public List getTestSources()
+    public List<String> getTestSources()
     {
         return testSources;
     }
@@ -164,10 +164,10 @@ public class ArchetypeDescriptor
 
     public TemplateDescriptor getTestSourceDescriptor( String testSource )
     {
-        return (TemplateDescriptor) testSourcesDescriptors.get( testSource );
+        return testSourcesDescriptors.get( testSource );
     }
 
-    public Map getTestSourcesDescriptors()
+    public Map<String, TemplateDescriptor> getTestSourcesDescriptors()
     {
         return testSourcesDescriptors;
     }
@@ -179,7 +179,7 @@ public class ArchetypeDescriptor
         putResourceDescriptor( resource, new TemplateDescriptor() );
     }
 
-    public List getResources()
+    public List<String> getResources()
     {
         return resources;
     }
@@ -191,10 +191,10 @@ public class ArchetypeDescriptor
 
     public TemplateDescriptor getResourceDescriptor( String resource )
     {
-        return (TemplateDescriptor) resourcesDescriptors.get( resource );
+        return resourcesDescriptors.get( resource );
     }
 
-    public Map getReourcesDescriptors()
+    public Map<String, TemplateDescriptor> getReourcesDescriptors()
     {
         return resourcesDescriptors;
     }
@@ -205,7 +205,7 @@ public class ArchetypeDescriptor
         putTestResourceDescriptor( testResource, new TemplateDescriptor() );
     }
 
-    public List getTestResources()
+    public List<String> getTestResources()
     {
         return testResources;
     }
@@ -217,10 +217,10 @@ public class ArchetypeDescriptor
 
     public TemplateDescriptor getTestResourceDescriptor( String testResource )
     {
-        return (TemplateDescriptor) testResourcesDescriptors.get( testResource );
+        return testResourcesDescriptors.get( testResource );
     }
 
-    public Map getTestReourcesDescriptors()
+    public Map<String, TemplateDescriptor> getTestReourcesDescriptors()
     {
         return testResourcesDescriptors;
     }
@@ -232,7 +232,7 @@ public class ArchetypeDescriptor
         putSiteResourceDescriptor( siteResource, new TemplateDescriptor() );
     }
 
-    public List getSiteResources()
+    public List<String> getSiteResources()
     {
         return siteResources;
     }
@@ -244,10 +244,10 @@ public class ArchetypeDescriptor
 
     public TemplateDescriptor getSiteResourceDescriptor( String siteResource )
     {
-        return (TemplateDescriptor) siteResourcesDescriptors.get( siteResource );
+        return siteResourcesDescriptors.get( siteResource );
     }
 
-    public Map getSiteReourcesDescriptors()
+    public Map<String, TemplateDescriptor> getSiteReourcesDescriptors()
     {
         return siteResourcesDescriptors;
     }

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/ArchetypeDataSink.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/ArchetypeDataSink.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/ArchetypeDataSink.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/ArchetypeDataSink.java Sun Jun 13 22:01:28 2010
@@ -23,10 +23,12 @@ import java.io.Writer;
 import java.util.List;
 import java.util.Properties;
 
+import org.apache.maven.archetype.catalog.Archetype;
+
 /** @author Jason van Zyl */
 public interface ArchetypeDataSink
 {
-    void putArchetypes( List archetypes, Writer writer )
+    void putArchetypes( List<Archetype> archetypes, Writer writer )
         throws ArchetypeDataSinkException;
 
     void putArchetypes( ArchetypeDataSource source, Properties properties, Writer writer )

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSink.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSink.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSink.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSink.java Sun Jun 13 22:01:28 2010
@@ -27,7 +27,6 @@ import org.codehaus.plexus.util.IOUtil;
 
 import java.io.IOException;
 import java.io.Writer;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
 
@@ -38,15 +37,13 @@ public class CatalogArchetypeDataSink
 {
     private ArchetypeCatalogXpp3Writer catalogWriter = new ArchetypeCatalogXpp3Writer();
 
-    public void putArchetypes( List archetypes, Writer writer )
+    public void putArchetypes( List<Archetype> archetypes, Writer writer )
         throws ArchetypeDataSinkException
     {
         ArchetypeCatalog catalog = new ArchetypeCatalog();
 
-        for ( Iterator i = archetypes.iterator(); i.hasNext(); )
+        for ( Archetype archetype : archetypes )
         {
-            Archetype archetype = (Archetype) i.next();
-
             catalog.addArchetype( archetype );
         }
 
@@ -67,7 +64,7 @@ public class CatalogArchetypeDataSink
     public void putArchetypes( ArchetypeDataSource source, Properties properties, Writer writer )
         throws ArchetypeDataSourceException, ArchetypeDataSinkException
     {
-        List archetypes = source.getArchetypeCatalog( properties ).getArchetypes();
+        List<Archetype> archetypes = source.getArchetypeCatalog( properties ).getArchetypes();
 
         putArchetypes( archetypes, writer );
     }

Modified: maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSource.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSource.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSource.java (original)
+++ maven/archetype/trunk/archetype-common/src/main/java/org/apache/maven/archetype/source/CatalogArchetypeDataSource.java Sun Jun 13 22:01:28 2010
@@ -91,7 +91,7 @@ public class CatalogArchetypeDataSource
             catalog = new ArchetypeCatalog();
         }
 
-        Iterator archetypes = catalog.getArchetypes().iterator();
+        Iterator<Archetype> archetypes = catalog.getArchetypes().iterator();
         boolean found = false;
         Archetype newArchetype = archetype;
         while ( !found && archetypes.hasNext() )

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateArchetypeFromProjectMojo.java Sun Jun 13 22:01:28 2010
@@ -173,13 +173,13 @@ public class CreateArchetypeFromProjectM
                 propertyFile.getParentFile().mkdirs();
             }
 
-            List languages = getLanguages( archetypeLanguages, propertyFile );
+            List<String> languages = getLanguages( archetypeLanguages, propertyFile );
 
             Properties properties =
                 configurator.configureArchetypeCreation( project, Boolean.valueOf( interactive ), executionProperties,
                                                          propertyFile, languages );
 
-            List filtereds = getFilteredExtensions( archetypeFilteredExtentions, propertyFile );
+            List<String> filtereds = getFilteredExtensions( archetypeFilteredExtentions, propertyFile );
 
             ArchetypeCreationRequest request = new ArchetypeCreationRequest()
                 .setProject( project )
@@ -233,9 +233,9 @@ public class CreateArchetypeFromProjectM
         }
     }
 
-    private List getFilteredExtensions( String archetypeFilteredExtentions, File propertyFile )
+    private List<String> getFilteredExtensions( String archetypeFilteredExtentions, File propertyFile )
     {
-        List filteredExtensions = new ArrayList();
+        List<String> filteredExtensions = new ArrayList<String>();
 
         if ( StringUtils.isNotEmpty( archetypeFilteredExtentions ) )
         {
@@ -277,9 +277,9 @@ public class CreateArchetypeFromProjectM
         return filteredExtensions;
     }
 
-    private List getLanguages( String archetypeLanguages, File propertyFile )
+    private List<String> getLanguages( String archetypeLanguages, File propertyFile )
     {
-        List resultingLanguages = new ArrayList();
+        List<String> resultingLanguages = new ArrayList<String>();
 
         if ( StringUtils.isNotEmpty( archetypeLanguages ) )
         {

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/CreateProjectFromArchetypeMojo.java Sun Jun 13 22:01:28 2010
@@ -132,7 +132,7 @@ public class CreateProjectFromArchetypeM
      * @readonly
      * @required
      */
-    private List remoteArtifactRepositories;
+    private List<ArtifactRepository> remoteArtifactRepositories;
 
     /**
      * User settings use to check the interactiveMode.

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/IntegrationTestMojo.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/IntegrationTestMojo.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/IntegrationTestMojo.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/IntegrationTestMojo.java Sun Jun 13 22:01:28 2010
@@ -36,7 +36,6 @@ import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.io.IOException;
 import java.io.StringWriter;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Properties;
 
@@ -83,15 +82,11 @@ public class IntegrationTestMojo
                 {
                     File archetypeFile = project.getArtifact().getFile();
 
-                    List projectsGoalFiles = FileUtils.getFiles( projectsDirectory, "*/goal.txt", "" );
-
-                    Iterator goalFiles = projectsGoalFiles.iterator();
+                    List<File> projectsGoalFiles = FileUtils.getFiles( projectsDirectory, "*/goal.txt", "" );
 
                     StringWriter errorWriter = new StringWriter();
-                    while ( goalFiles.hasNext() )
+                    for ( File goalFile : projectsGoalFiles )
                     {
-                        File goalFile = (File) goalFiles.next();
-
                         try
                         {
                             processIntegrationTest( goalFile, archetypeFile );
@@ -122,17 +117,15 @@ public class IntegrationTestMojo
     private void assertTest( File reference, File basedir )
         throws IntegrationTestFailure, IOException
     {
-        List referenceFiles = FileUtils.getFileNames( reference, "**", null, false );
-        List projectFiles = FileUtils.getFileNames( basedir, "**", null, false );
+        List<String> referenceFiles = FileUtils.getFileNames( reference, "**", null, false );
+        List<String> projectFiles = FileUtils.getFileNames( basedir, "**", null, false );
 
         boolean fileNamesEquals = CollectionUtils.isEqualCollection( referenceFiles, projectFiles );
 
         if ( !fileNamesEquals )
         {
-            for ( Iterator refs = referenceFiles.iterator(); refs.hasNext(); )
+            for ( String ref : referenceFiles )
             {
-                String ref = (String) refs.next();
-
                 if ( projectFiles.contains( ref ) )
                 {
                     projectFiles.remove( ref );
@@ -150,10 +143,8 @@ public class IntegrationTestMojo
 
         boolean contentEquals = true;
 
-        for ( Iterator files = referenceFiles.iterator(); files.hasNext(); )
+        for ( String file : referenceFiles )
         {
-            String file = (String) files.next();
-
             if ( file.endsWith( "pom.xml" ) )
             {
                 if ( !modelEquals( new File( reference, file ), new File( basedir, file ) ) )

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/MavenArchetypeMojo.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/MavenArchetypeMojo.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/MavenArchetypeMojo.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/mojos/MavenArchetypeMojo.java Sun Jun 13 22:01:28 2010
@@ -143,7 +143,7 @@ public class MavenArchetypeMojo
      * @parameter expression="${project.remoteArtifactRepositories}"
      * @required
      */
-    private List pomRemoteRepositories;
+    private List<ArtifactRepository> pomRemoteRepositories;
 
     /**
      * Other remote repositories available for discovering dependencies and extensions.
@@ -194,13 +194,13 @@ public class MavenArchetypeMojo
         }
 
 
-        List archetypeRemoteRepositories = new ArrayList( pomRemoteRepositories );
+        List<ArtifactRepository> archetypeRemoteRepositories = new ArrayList<ArtifactRepository>( pomRemoteRepositories );
 
         if ( remoteRepositories != null )
         {
             getLog().info( "We are using command line specified remote repositories: " + remoteRepositories );
 
-            archetypeRemoteRepositories = new ArrayList();
+            archetypeRemoteRepositories = new ArrayList<ArtifactRepository>();
 
             String[] s = StringUtils.split( remoteRepositories, "," );
 

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeCreationConfigurator.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeCreationConfigurator.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeCreationConfigurator.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeCreationConfigurator.java Sun Jun 13 22:01:28 2010
@@ -36,7 +36,7 @@ public interface ArchetypeCreationConfig
     String ROLE = ArchetypeCreationConfigurator.class.getName();
 
     Properties configureArchetypeCreation( MavenProject project, Boolean interactiveMode,
-                                           Properties commandLineProperties, File propertyFile, List languages )
+                                           Properties commandLineProperties, File propertyFile, List<String> languages )
         throws FileNotFoundException, IOException, ArchetypeNotDefined, ArchetypeNotConfigured, PrompterException,
         TemplateCreationException;
 }

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypePrompter.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypePrompter.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypePrompter.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypePrompter.java Sun Jun 13 22:01:28 2010
@@ -175,7 +175,7 @@ public class ArchetypePrompter
         }
     }
 
-    private String formatMessage( String message, List possibleValues, String defaultReply )
+    private String formatMessage( String message, List<String> possibleValues, String defaultReply )
     {
         StringBuffer formatted = new StringBuffer( message.length() * 2 );
 

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeSelectionQueryer.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeSelectionQueryer.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeSelectionQueryer.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/ArchetypeSelectionQueryer.java Sun Jun 13 22:01:28 2010
@@ -23,6 +23,7 @@ import org.apache.maven.archetype.catalo
 import org.apache.maven.archetype.common.ArchetypeDefinition;
 import org.codehaus.plexus.components.interactivity.PrompterException;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -32,7 +33,7 @@ public interface ArchetypeSelectionQuery
 {
     String ROLE = ArchetypeSelectionQueryer.class.getName();
 
-    public Archetype selectArchetype( Map map )
+    public Archetype selectArchetype( Map<String, List<Archetype>> map )
         throws PrompterException;
 
     boolean confirmSelection( ArchetypeDefinition archetypeDefinition )
@@ -63,6 +64,6 @@ public interface ArchetypeSelectionQuery
      * @throws org.codehaus.plexus.components.interactivity.PrompterException if there is a problem in making a
      *             selection
      */
-    Archetype selectArchetype( Map archetypes, ArchetypeDefinition defaultDefinition )
+    Archetype selectArchetype( Map<String, List<Archetype>> archetypes, ArchetypeDefinition defaultDefinition )
         throws PrompterException;
 }

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeCreationConfigurator.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeCreationConfigurator.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeCreationConfigurator.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeCreationConfigurator.java Sun Jun 13 22:01:28 2010
@@ -59,7 +59,8 @@ public class DefaultArchetypeCreationCon
     private ArchetypeFilesResolver archetypeFilesResolver;
 
     public Properties configureArchetypeCreation( MavenProject project, Boolean interactiveMode,
-                                                  Properties commandLineProperties, File propertyFile, List languages )
+                                                  Properties commandLineProperties, File propertyFile,
+                                                  List<String> languages )
         throws IOException, ArchetypeNotDefined, ArchetypeNotConfigured, PrompterException, TemplateCreationException
     {
         Properties properties = initialiseArchetypeProperties( commandLineProperties, propertyFile );
@@ -348,7 +349,7 @@ public class DefaultArchetypeCreationCon
 
     private Properties removeDottedProperties( Properties properties )
     {
-        List toRemove = new ArrayList( 0 );
+        List<String> toRemove = new ArrayList<String>( 0 );
 
         for ( Iterator keys = properties.keySet().iterator(); keys.hasNext(); )
         {
@@ -359,10 +360,8 @@ public class DefaultArchetypeCreationCon
             }
         }
 
-        for ( Iterator keysToRemove = toRemove.iterator(); keysToRemove.hasNext(); )
+        for ( String key : toRemove )
         {
-            String key = (String) keysToRemove.next();
-
             properties.remove( key );
         }
         return properties;

Modified: maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java
URL: http://svn.apache.org/viewvc/maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java?rev=954321&r1=954320&r2=954321&view=diff
==============================================================================
--- maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java (original)
+++ maven/archetype/trunk/archetype-plugin/src/main/java/org/apache/maven/archetype/ui/DefaultArchetypeFactory.java Sun Jun 13 22:01:28 2010
@@ -22,6 +22,7 @@ package org.apache.maven.archetype.ui;
 import org.apache.maven.archetype.common.ArchetypeConfiguration;
 import org.apache.maven.archetype.common.ArchetypeDefinition;
 import org.apache.maven.archetype.common.Constants;
+import org.apache.maven.archetype.metadata.RequiredProperty;
 import org.apache.maven.project.MavenProject;
 
 import org.codehaus.plexus.logging.AbstractLogEnabled;
@@ -143,12 +144,8 @@ public class DefaultArchetypeFactory
 
         configuration.setName( archetypeDescriptor.getName() );
 
-        for ( Iterator requiredProperties = archetypeDescriptor.getRequiredProperties().iterator();
-            requiredProperties.hasNext(); )
+        for ( RequiredProperty requiredProperty : archetypeDescriptor.getRequiredProperties() )
         {
-            org.apache.maven.archetype.metadata.RequiredProperty requiredProperty =
-                (org.apache.maven.archetype.metadata.RequiredProperty) requiredProperties.next();
-
             configuration.addRequiredProperty( requiredProperty.getKey() );
             getLogger().debug( "Adding requiredProperty " + requiredProperty.getKey() );