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/05/02 23:23:53 UTC
svn commit: r940319 -
/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
Author: hboutemy
Date: Sun May 2 21:23:52 2010
New Revision: 940319
URL: http://svn.apache.org/viewvc?rev=940319&view=rev
Log:
code refactoring
Modified:
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
Modified: maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java?rev=940319&r1=940318&r2=940319&view=diff
==============================================================================
--- maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java (original)
+++ maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java Sun May 2 21:23:52 2010
@@ -37,6 +37,7 @@ import org.apache.maven.project.MavenPro
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
import org.codehaus.plexus.i18n.I18N;
+import org.codehaus.plexus.util.IOUtil;
import java.io.File;
import java.io.FileOutputStream;
@@ -143,29 +144,34 @@ public abstract class AbstractProjectInf
}
// TODO: push to a helper? Could still be improved by taking more of the site information from the site plugin
+ Writer writer = null;
try
{
+ String filename = getOutputName() + ".html";
+
DecorationModel model = new DecorationModel();
model.setBody( new Body() );
+
Map attributes = new HashMap();
attributes.put( "outputEncoding", "UTF-8" );
attributes.put( "project", project );
+
Locale locale = Locale.getDefault();
Artifact defaultSkin =
siteTool.getDefaultSkinArtifact( localRepository, project.getRemoteArtifactRepositories() );
+
SiteRenderingContext siteContext = siteRenderer.createContextForSkin( defaultSkin.getFile(), attributes,
model, getName( locale ), locale );
- RenderingContext context = new RenderingContext( outputDirectory, getOutputName() + ".html" );
+ RenderingContext context = new RenderingContext( outputDirectory, filename );
SiteRendererSink sink = new SiteRendererSink( context );
- generate( (org.apache.maven.doxia.sink.Sink) sink, null, locale );
+
+ generate( sink, null, locale );
outputDirectory.mkdirs();
- Writer writer =
- new OutputStreamWriter( new FileOutputStream( new File( outputDirectory, getOutputName() + ".html" ) ),
- "UTF-8" );
+ writer = new OutputStreamWriter( new FileOutputStream( new File( outputDirectory, filename ) ), "UTF-8" );
siteRenderer.generateDocument( writer, sink, siteContext );
@@ -192,6 +198,10 @@ public abstract class AbstractProjectInf
throw new MojoExecutionException(
"An error has occurred in " + getName( Locale.ENGLISH ) + " report generation.", e );
}
+ finally
+ {
+ IOUtil.close( writer );
+ }
}
/** {@inheritDoc} */