You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by br...@apache.org on 2005/09/21 04:46:49 UTC
svn commit: r290603 -
/maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
Author: brett
Date: Tue Sep 20 19:46:44 2005
New Revision: 290603
URL: http://svn.apache.org/viewcvs?rev=290603&view=rev
Log:
more cleanup of site plugin
Modified:
maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
Modified: maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java?rev=290603&r1=290602&r2=290603&view=diff
==============================================================================
--- maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java (original)
+++ maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java Tue Sep 20 19:46:44 2005
@@ -77,11 +77,6 @@
private static final String DEFAULT_TEMPLATE = RESOURCE_DIR + "/maven-site.vm";
/**
- * OutputName of all reports files generated by Maven
- */
- private static List generatedReportsFileName = new ArrayList();
-
- /**
* Patterns which should be excluded by default.
*/
// TODO Push me into a shared area (plexus-utils?)
@@ -229,8 +224,6 @@
}
}
- List reports = getReports();
-
if ( attributes == null )
{
attributes = new HashMap();
@@ -258,16 +251,10 @@
Locale defaultLocale = (Locale) localesList.get( 0 );
Locale.setDefault( defaultLocale );
- List projectInfos = new ArrayList();
- List projectReports = new ArrayList();
- categorizeReports( reports, defaultLocale, projectInfos, projectReports );
-
for ( Iterator iterator = localesList.iterator(); iterator.hasNext(); )
{
Locale locale = (Locale) iterator.next();
- String siteDescriptor = getSiteDescriptor( reports, locale, projectInfos, projectReports );
-
File outputDirectory = getOutputDirectory( locale, defaultLocale );
// Safety
@@ -276,14 +263,6 @@
outputDirectory.mkdirs();
}
- // Handle the GeneratedSite Directory
- File generatedSiteFile = new File( generatedSiteDirectory );
- if ( generatedSiteFile.exists() )
- {
- siteRenderer.render( generatedSiteFile, outputDirectory, siteDescriptor, template, attributes,
- locale );
- }
-
// Generate static site
File siteDirectoryFile = new File( siteDirectory );
if ( !locale.getLanguage().equals( defaultLocale.getLanguage() ) )
@@ -297,6 +276,10 @@
{
tryToFindDuplicates( siteDirectoryFile, duplicate );
}
+
+ // Handle the GeneratedSite Directory
+ File generatedSiteFile = new File( generatedSiteDirectory );
+
if ( generatedSiteFile.exists() )
{
tryToFindDuplicates( generatedSiteFile, duplicate );
@@ -309,10 +292,37 @@
throw new MavenReportException( msg );
}
+ List reports = getReports();
+
+ Map categories = categorizeReports( reports );
+
+ List projectInfos = (List) categories.get( MavenReport.CATEGORY_PROJECT_INFORMATION );
+ List projectReports = (List) categories.get( MavenReport.CATEGORY_PROJECT_REPORTS );
+
+ if ( projectInfos == null )
+ {
+ projectInfos = Collections.EMPTY_LIST;
+ }
+
+ if ( projectReports == null )
+ {
+ projectReports = Collections.EMPTY_LIST;
+ }
+
+ String siteDescriptor = getSiteDescriptor( reports, locale, projectInfos, projectReports );
+
+ if ( generatedSiteFile.exists() )
+ {
+ siteRenderer.render( generatedSiteFile, outputDirectory, siteDescriptor, template, attributes,
+ locale );
+ }
+
//Generate reports
+ List generatedReportsFileName = Collections.EMPTY_LIST;
if ( reports != null )
{
- generateReportsPages( reports, locale, outputDirectory, defaultLocale, siteDescriptor );
+ generatedReportsFileName = generateReportsPages( reports, locale, outputDirectory, defaultLocale,
+ siteDescriptor );
}
//Generate overview pages
@@ -418,26 +428,23 @@
}
}
- private void categorizeReports( List reports, Locale defaultLocale, List projectInfos, List projectReports )
- throws MojoExecutionException
+ private Map categorizeReports( List reports )
{
+ Map categories = new HashMap();
+
for ( Iterator i = reports.iterator(); i.hasNext(); )
{
MavenReport report = (MavenReport) i.next();
- if ( MavenReport.CATEGORY_PROJECT_INFORMATION.equals( report.getCategoryName() ) )
- {
- projectInfos.add( report );
- }
- else if ( MavenReport.CATEGORY_PROJECT_REPORTS.equals( report.getCategoryName() ) )
- {
- projectReports.add( report );
- }
- else
+
+ List category = (List) categories.get( report.getCategoryName() );
+ if ( category == null )
{
- throw new MojoExecutionException( "'" + report.getCategoryName() + "' category define for " +
- report.getName( defaultLocale ) + " mojo isn't valid." );
+ category = new ArrayList();
+ categories.put( report.getCategoryName(), category );
}
+ category.add( report );
}
+ return categories;
}
/**
@@ -741,10 +748,12 @@
* @param locale
* @param localeOutputDirectory
*/
- private void generateReportsPages( List reports, Locale locale, File localeOutputDirectory, Locale defaultLocale,
+ private List generateReportsPages( List reports, Locale locale, File localeOutputDirectory, Locale defaultLocale,
String siteDescriptor )
throws RendererException, IOException, MavenReportException
{
+ List generatedReportsFileName = new ArrayList();
+
for ( Iterator j = reports.iterator(); j.hasNext(); )
{
MavenReport report = (MavenReport) j.next();
@@ -785,6 +794,7 @@
sink, locale );
}
}
+ return generatedReportsFileName;
}
private void generateProjectInfoPage( String siteDescriptor, Locale locale, List projectInfos,
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org