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/21 22:14:49 UTC

svn commit: r956681 - /maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/

Author: hboutemy
Date: Mon Jun 21 20:14:49 2010
New Revision: 956681

URL: http://svn.apache.org/viewvc?rev=956681&view=rev
Log:
[MSITE-487] use Java 5 generics

Modified:
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/ReportDocumentRenderer.java
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteMojo.java
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteRunMojo.java
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java
    maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageMojo.java

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteMojo.java Mon Jun 21 20:14:49 2010
@@ -97,7 +97,7 @@ public abstract class AbstractSiteMojo
      * @required
      * @readonly
      */
-    protected List reactorProjects;
+    protected List<MavenProject> reactorProjects;
 
     /**
      * Specifies the input encoding.
@@ -136,9 +136,9 @@ public abstract class AbstractSiteMojo
     protected void populateReportItems( DecorationModel decorationModel, Locale locale,
                                         Map<String, MavenReport> reportsByOutputName )
     {
-        for ( Iterator i = decorationModel.getMenus().iterator(); i.hasNext(); )
+        for ( Iterator<Menu> i = decorationModel.getMenus().iterator(); i.hasNext(); )
         {
-            Menu menu = (Menu) i.next();
+            Menu menu = i.next();
 
             populateItemRefs( menu.getItems(), locale, reportsByOutputName );
         }

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/AbstractSiteRenderingMojo.java Mon Jun 21 20:14:49 2010
@@ -131,7 +131,7 @@ public abstract class AbstractSiteRender
      *
      * @parameter expression="${attributes}"
      */
-    protected Map attributes;
+    protected Map<Object, Object> attributes;
 
     /**
      * Site renderer.
@@ -145,7 +145,7 @@ public abstract class AbstractSiteRender
      * @required
      * @readonly
      */
-    protected List reports;
+    protected List<MavenReport> reports;
 
     /**
      * Alternative directory for xdoc source, useful for m1 to m2 migration
@@ -164,12 +164,11 @@ public abstract class AbstractSiteRender
      */
     protected File generatedSiteDirectory;
 
-    protected List filterReports( List reports )
+    protected List<MavenReport> filterReports( List<MavenReport> reports )
     {
-        List filteredReports = new ArrayList( reports.size() );
-        for ( Iterator i = reports.iterator(); i.hasNext(); )
+        List<MavenReport> filteredReports = new ArrayList<MavenReport>( reports.size() );
+        for ( MavenReport report : reports )
         {
-            MavenReport report = (MavenReport) i.next();
             //noinspection ErrorNotRethrown,UnusedCatchParameter
             try
             {
@@ -198,7 +197,7 @@ public abstract class AbstractSiteRender
     {
         if ( attributes == null )
         {
-            attributes = new HashMap();
+            attributes = new HashMap<Object, Object>();
         }
 
         if ( attributes.get( "project" ) == null )
@@ -307,10 +306,10 @@ public abstract class AbstractSiteRender
     protected Map<String, MavenReport> locateReports( List<MavenReport> reports,
                                                       Map<String, DocumentRenderer> documents, Locale locale )
     {
-        Map reportsByOutputName = new HashMap();
-        for ( Iterator i = reports.iterator(); i.hasNext(); )
+        Map<String, MavenReport> reportsByOutputName = new HashMap<String, MavenReport>();
+        for ( Iterator<MavenReport> i = reports.iterator(); i.hasNext(); )
         {
-            MavenReport report = (MavenReport) i.next();
+            MavenReport report = i.next();
 
             String outputName = report.getOutputName() + ".html";
 
@@ -342,15 +341,15 @@ public abstract class AbstractSiteRender
      * @param reports A Collection of MavenReports
      * @return A map keyed category having the report itself as value
      */
-    protected Map categoriseReports( Collection<MavenReport> reports )
+    protected Map<String, List<MavenReport>> categoriseReports( Collection<MavenReport> reports )
     {
-        Map categories = new HashMap();
+        Map<String, List<MavenReport>> categories = new HashMap<String, List<MavenReport>>();
         for ( MavenReport report : reports )
         {
-            List categoryReports = (List) categories.get( report.getCategoryName() );
+            List<MavenReport> categoryReports = categories.get( report.getCategoryName() );
             if ( categoryReports == null )
             {
-                categoryReports = new ArrayList();
+                categoryReports = new ArrayList<MavenReport>();
                 categories.put( report.getCategoryName(), categoryReports );
             }
             categoryReports.add( report );
@@ -358,22 +357,23 @@ public abstract class AbstractSiteRender
         return categories;
     }
 
-    protected Map locateDocuments( SiteRenderingContext context, List reports, Locale locale )
+    protected Map<String, DocumentRenderer> locateDocuments( SiteRenderingContext context, List<MavenReport> reports,
+                                                             Locale locale )
         throws IOException, RendererException
     {
-        Map documents = siteRenderer.locateDocumentFiles( context );
+        Map<String, DocumentRenderer> documents = siteRenderer.locateDocumentFiles( context );
 
-        Map reportsByOutputName = locateReports( reports, documents, locale );
+        Map<String, MavenReport> reportsByOutputName = locateReports( reports, documents, locale );
 
         // TODO: I want to get rid of categories eventually. There's no way to add your own in a fully i18n manner
-        Map categories = categoriseReports( reportsByOutputName.values() );
+        Map<String, List<MavenReport>> categories = categoriseReports( reportsByOutputName.values() );
 
         siteTool.populateReportsMenu( context.getDecoration(), locale, categories );
         populateReportItems( context.getDecoration(), locale, reportsByOutputName );
 
         if ( categories.containsKey( MavenReport.CATEGORY_PROJECT_INFORMATION ) )
         {
-            List categoryReports = (List) categories.get( MavenReport.CATEGORY_PROJECT_INFORMATION );
+            List<MavenReport> categoryReports = categories.get( MavenReport.CATEGORY_PROJECT_INFORMATION );
 
             RenderingContext renderingContext = new RenderingContext( siteDirectory, "project-info.html" );
             String title = i18n.getString( "site-plugin", locale, "report.information.title" );
@@ -394,7 +394,7 @@ public abstract class AbstractSiteRender
 
         if ( categories.containsKey( MavenReport.CATEGORY_PROJECT_REPORTS ) )
         {
-            List categoryReports = (List) categories.get( MavenReport.CATEGORY_PROJECT_REPORTS );
+            List<MavenReport> categoryReports = categories.get( MavenReport.CATEGORY_PROJECT_REPORTS );
             RenderingContext renderingContext = new RenderingContext( siteDirectory, "project-reports.html" );
             String title = i18n.getString( "site-plugin", locale, "report.project.title" );
             String desc1 = i18n.getString( "site-plugin", locale, "report.project.description1" );

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/ReportDocumentRenderer.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/ReportDocumentRenderer.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/ReportDocumentRenderer.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/ReportDocumentRenderer.java Mon Jun 21 20:14:49 2010
@@ -42,7 +42,6 @@ import java.io.FileWriter;
 import java.util.ArrayList;
 import java.util.Locale;
 import java.util.List;
-import java.util.Iterator;
 
 /**
  * Renders a Maven report.
@@ -98,7 +97,7 @@ public class ReportDocumentRenderer
     {
         private RenderingContext context;
 
-        private List sinks = new ArrayList();
+        private List<MySink> sinks = new ArrayList<MySink>();
 
         public MySinkFactory( RenderingContext ctx )
         {
@@ -107,7 +106,7 @@ public class ReportDocumentRenderer
 
         public Sink createSink( File outputDir, String outputName )
         {
-            SiteRendererSink sink = new MySink( outputDir, outputName, context );
+            MySink sink = new MySink( outputDir, outputName, context );
             sinks.add( sink );
             return sink;
         }
@@ -133,7 +132,7 @@ public class ReportDocumentRenderer
             return null;
         }
 
-        public List sinks()
+        public List<MySink> sinks()
         {
             return sinks;
         }
@@ -182,17 +181,17 @@ public class ReportDocumentRenderer
         {
             try
             {
-                List sinks = sf.sinks();
+                List<MySink> sinks = sf.sinks();
 
                 log.debug( "Multipage report: " + sinks.size() + " subreports" );
 
-                for ( Iterator it = sinks.iterator(); it.hasNext(); )
+                for ( MySink mySink : sinks )
                 {
-                    MySink mySink = (MySink) it.next();
                     mySink.enableLogging( new MojoLogWrapper( log ) );
 
                     log.debug( "  Rendering " + mySink.getOutputName() );
 
+                    // TODO should not rely on platform encoding
                     Writer out = new FileWriter( new File( mySink.getOutputDir(), mySink.getOutputName() ) );
 
                     try

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteMojo.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteMojo.java Mon Jun 21 20:14:49 2010
@@ -19,6 +19,7 @@ package org.apache.maven.plugins.site;
  * under the License.
  */
 
+import org.apache.maven.doxia.siterenderer.DocumentRenderer;
 import org.apache.maven.doxia.siterenderer.RendererException;
 import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
 import org.apache.maven.plugin.MojoExecutionException;
@@ -28,7 +29,6 @@ import org.apache.maven.reporting.MavenR
 import java.io.File;
 import java.io.IOException;
 import java.util.Collections;
-import java.util.Iterator;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
@@ -95,7 +95,7 @@ public class SiteMojo
     public void execute()
         throws MojoExecutionException, MojoFailureException
     {
-        List filteredReports;
+        List<MavenReport> filteredReports;
         if ( generateReports )
         {
             filteredReports = filterReports( reports );
@@ -107,16 +107,14 @@ public class SiteMojo
 
         try
         {
-            List localesList = siteTool.getAvailableLocales( locales );
+            List<Locale> localesList = siteTool.getAvailableLocales( locales );
 
             // Default is first in the list
-            Locale defaultLocale = (Locale) localesList.get( 0 );
+            Locale defaultLocale = localesList.get( 0 );
             Locale.setDefault( defaultLocale );
 
-            for ( Iterator iterator = localesList.iterator(); iterator.hasNext(); )
+            for ( Locale locale : localesList )
             {
-                Locale locale = (Locale) iterator.next();
-
                 renderLocale( locale, filteredReports );
             }
         }
@@ -130,8 +128,7 @@ public class SiteMojo
         }
     }
 
-    private void renderLocale( Locale locale,
-                               List reports )
+    private void renderLocale( Locale locale, List<MavenReport> reports )
         throws IOException, RendererException, MojoFailureException, MojoExecutionException
     {
         SiteRenderingContext context = createSiteRenderingContext( locale );
@@ -144,14 +141,13 @@ public class SiteMojo
             getLog().info( "Validation is switched on, xml input documents will be validated!" );
         }
 
-        Map documents = locateDocuments( context, reports, locale );
+        Map<String, DocumentRenderer> documents = locateDocuments( context, reports, locale );
 
         File outputDir = getOutputDirectory( locale );
 
         // For external reports
-        for ( Iterator i = reports.iterator(); i.hasNext(); )
+        for ( MavenReport report : reports )
         {
-            MavenReport report = (MavenReport) i.next();
             report.setReportOutputDirectory( outputDir );
         }
 

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteRunMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteRunMojo.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteRunMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteRunMojo.java Mon Jun 21 20:14:49 2010
@@ -30,6 +30,7 @@ import java.util.List;
 import java.util.Locale;
 import java.util.Map;
 
+import org.apache.maven.doxia.siterenderer.DocumentRenderer;
 import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.maven.plugin.MojoFailureException;
@@ -152,13 +153,12 @@ public class SiteRunMojo
 
         // For external reports
         project.getReporting().setOutputDirectory( tempWebappDirectory.getAbsolutePath() );
-        for ( Iterator i = reports.iterator(); i.hasNext(); )
+        for ( MavenReport report : reports )
         {
-            MavenReport report = (MavenReport) i.next();
             report.setReportOutputDirectory( tempWebappDirectory );
         }
 
-        List filteredReports = filterReports( reports );
+        List<MavenReport> filteredReports = filterReports( reports );
 
         List<Locale> localesList = siteTool.getAvailableLocales( locales );
         webapp.setAttribute( DoxiaFilter.LOCALES_LIST_KEY, localesList );
@@ -177,7 +177,7 @@ public class SiteRunMojo
                 i18nContext.setInputEncoding( getInputEncoding() );
                 i18nContext.setOutputEncoding( getOutputEncoding() );
 
-                Map i18nDocuments = locateDocuments( i18nContext, filteredReports, locale );
+                Map<String, DocumentRenderer> i18nDocuments = locateDocuments( i18nContext, filteredReports, locale );
                 DoxiaBean doxiaBean;
                 if ( defaultLocale.equals( locale ) )
                 {
@@ -185,8 +185,9 @@ public class SiteRunMojo
                 }
                 else
                 {
-                    doxiaBean = new DoxiaBean( i18nContext, i18nDocuments, new File( generatedSiteDirectory, locale
-                        .getLanguage() ) );
+                    doxiaBean =
+                        new DoxiaBean( i18nContext, i18nDocuments, new File( generatedSiteDirectory,
+                                                                             locale.getLanguage() ) );
                 }
 
                 i18nDoxiaContexts.put( locale.getLanguage(), doxiaBean );

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageDeployMojo.java Mon Jun 21 20:14:49 2010
@@ -251,7 +251,8 @@ public class SiteStageDeployMojo
      * @param usersStagingSiteURL The staging site URL as suggested by the user's configuration
      * @return the site URL for staging
      */
-    protected String getStagingSiteURL( MavenProject currentProject, List reactorProjects, String usersStagingSiteURL )
+    protected String getStagingSiteURL( MavenProject currentProject, List<MavenProject> reactorProjects,
+                                        String usersStagingSiteURL )
     {
         String topLevelURL = null;
         String relative = "";

Modified: maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageMojo.java?rev=956681&r1=956680&r2=956681&view=diff
==============================================================================
--- maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageMojo.java (original)
+++ maven/plugins/trunk/maven-site-plugin/src/main/java/org/apache/maven/plugins/site/SiteStageMojo.java Mon Jun 21 20:14:49 2010
@@ -19,7 +19,6 @@ package org.apache.maven.plugins.site;
  * under the License.
  */
 
-
 import java.io.File;
 import java.util.List;
 
@@ -31,10 +30,6 @@ import org.apache.maven.plugins.site.wag
 import org.codehaus.plexus.util.PathTool;
 import org.codehaus.plexus.util.StringUtils;
 
-import java.io.File;
-import java.util.Iterator;
-import java.util.List;
-
 /**
  * Generates a site in a local staging or mock directory based on the site URL
  * specified in the <code>&lt;distributionManagement&gt;</code> section of the
@@ -103,12 +98,8 @@ public class SiteStageMojo
 
         if ( reactorProjects != null && reactorProjects.size() > 1 )
         {
-            Iterator reactorItr = reactorProjects.iterator();
-
-            while ( reactorItr.hasNext() )
+            for ( MavenProject reactorProject : reactorProjects )
             {
-                MavenProject reactorProject = (MavenProject) reactorItr.next();
-
                 if ( reactorProject != null && reactorProject.getParent() != null
                     && project.getArtifactId().equals( reactorProject.getParent().getArtifactId() ) )
                 {
@@ -129,7 +120,8 @@ public class SiteStageMojo
      * @param usersStagingDirectory The staging directory as suggested by the user's configuration
      * @return the directory for staging
      */
-    protected File getStagingDirectory( MavenProject currentProject, List reactorProjects, File usersStagingDirectory )
+    protected File getStagingDirectory( MavenProject currentProject, List<MavenProject> reactorProjects,
+                                        File usersStagingDirectory )
     {
         // Check if the user has specified a stagingDirectory
         if ( usersStagingDirectory != null )
@@ -164,15 +156,13 @@ public class SiteStageMojo
      * @param reactorProjects The projects in the reactor
      * @return The top level project in the reactor, or <code>null</code> if none can be found
      */
-    protected MavenProject getTopLevelProject( List reactorProjects )
+    protected MavenProject getTopLevelProject( List<MavenProject> reactorProjects )
     {
         MavenProject topLevelProject = null;
         if ( reactorProjects != null )
         {
-            Iterator iterator = reactorProjects.iterator();
-            while ( iterator.hasNext() )
+            for ( MavenProject reactorProject : reactorProjects )
             {
-                MavenProject reactorProject = (MavenProject) iterator.next();
                 if ( reactorProject.isExecutionRoot() )
                 {
                     topLevelProject = reactorProject;