You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by vs...@apache.org on 2008/01/23 01:33:41 UTC
svn commit: r614398 - in
/maven/plugins/trunk/maven-project-info-reports-plugin: pom.xml
src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
Author: vsiveton
Date: Tue Jan 22 16:33:40 2008
New Revision: 614398
URL: http://svn.apache.org/viewvc?rev=614398&view=rev
Log:
MSITE-290: Move logic from AbstractSiteMojo and AbstractSiteRenderingMojo for Doxia related stuff
MNG-3346: Move logic inside AbstractProjectInfoReport to maven-reporting-impl
o used new shared maven-doxia-tools
Modified:
maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml
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/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml?rev=614398&r1=614397&r2=614398&view=diff
==============================================================================
--- maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml Tue Jan 22 16:33:40 2008
@@ -261,6 +261,12 @@
</exclusions>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven.shared</groupId>
+ <artifactId>maven-doxia-tools</artifactId>
+ <version>1.0-SNAPSHOT</version>
+ </dependency>
+
<!-- Plexus -->
<dependency>
<groupId>org.codehaus.plexus</groupId>
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=614398&r1=614397&r2=614398&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 Tue Jan 22 16:33:40 2008
@@ -35,6 +35,8 @@
import org.apache.maven.doxia.siterenderer.RendererException;
import org.apache.maven.doxia.siterenderer.SiteRenderingContext;
import org.apache.maven.doxia.siterenderer.sink.SiteRendererSink;
+import org.apache.maven.doxia.tools.SiteTool;
+import org.apache.maven.doxia.tools.SiteToolException;
import org.apache.maven.plugin.MojoExecutionException;
import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReport;
@@ -61,6 +63,13 @@
extends AbstractMavenReport
{
/**
+ * SiteTool.
+ *
+ * @component
+ */
+ protected SiteTool siteTool;
+
+ /**
* Report output directory.
*
* @parameter expression="${project.reporting.outputDirectory}"
@@ -132,7 +141,8 @@
attributes.put( "outputEncoding", "UTF-8" );
attributes.put( "project", project );
Locale locale = Locale.getDefault();
- SiteRenderingContext siteContext = siteRenderer.createContextForSkin( getSkinArtifactFile(), attributes,
+ 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" );
@@ -159,6 +169,11 @@
throw new MojoExecutionException(
"An error has occurred in " + getName( Locale.ENGLISH ) + " report generation.", e );
}
+ catch ( SiteToolException e )
+ {
+ throw new MojoExecutionException(
+ "An error has occurred in " + getName( Locale.ENGLISH ) + " report generation.", e );
+ }
catch ( MavenReportException e )
{
throw new MojoExecutionException(
@@ -192,44 +207,5 @@
protected Renderer getSiteRenderer()
{
return siteRenderer;
- }
-
- // ----------------------------------------------------------------------
- // Private methods
- // ----------------------------------------------------------------------
-
- private File getSkinArtifactFile()
- throws MojoExecutionException
- {
- Skin skin = Skin.getDefaultSkin();
-
- String version = skin.getVersion();
- Artifact artifact;
- try
- {
- if ( version == null )
- {
- version = Artifact.RELEASE_VERSION;
- }
- VersionRange versionSpec = VersionRange.createFromVersionSpec( version );
- artifact = factory.createDependencyArtifact( skin.getGroupId(), skin.getArtifactId(), versionSpec, "jar",
- null, null );
-
- resolver.resolve( artifact, project.getRemoteArtifactRepositories(), localRepository );
- }
- catch ( InvalidVersionSpecificationException e )
- {
- throw new MojoExecutionException( "The skin version '" + version + "' is not valid: " + e.getMessage() );
- }
- catch ( ArtifactResolutionException e )
- {
- throw new MojoExecutionException( "Unable to find skin", e );
- }
- catch ( ArtifactNotFoundException e )
- {
- throw new MojoExecutionException( "The skin does not exist: " + e.getMessage() );
- }
-
- return artifact.getFile();
}
}