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();
     }
 }


Reply via email to