You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by ev...@apache.org on 2005/05/29 21:52:03 UTC
svn commit: r178980 -
/maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia
/maven/components/trunk/maven-reporting/maven-reporting-api
/maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting
/maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources
/maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle
/maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc
/maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd
/maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo
Author: evenisse
Date: Sun May 29 12:52:01 2005
New Revision: 178980
URL: http://svn.apache.org/viewcvs?rev=178980&view=rev
Log:
o Extends AbstractReport to AbstractMojo => we need now to create only one class for a report and a mojo
o Start implementation of internationalization
Added:
maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources/
maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources/default-report.xml
Removed:
maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleReportMojo.java
maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/JavadocReportMojo.java
maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReportMojo.java
maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ProjectReportsMojo.java
Modified:
maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
maven/components/trunk/maven-reporting/maven-reporting-api/pom.xml
maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenMultiPageReport.java
maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenReport.java
maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/MavenReport.java
maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleReport.java
maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/JavadocReport.java
maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java
maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.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=178980&r1=178979&r2=178980&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 Sun May 29 12:52:01 2005
@@ -42,6 +42,7 @@
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
/**
@@ -163,7 +164,8 @@
SiteRendererSink sink = siteRenderer.createSink( new File( siteDirectory ), outputFileName,
getSiteDescriptor() );
- report.generate( sink );
+ //TODO: Use multiple locale with a loop
+ report.generate( sink, Locale.ENGLISH );
File outputFile = new File( outputDirectory, outputFileName );
Modified: maven/components/trunk/maven-reporting/maven-reporting-api/pom.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reporting/maven-reporting-api/pom.xml?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reporting/maven-reporting-api/pom.xml (original)
+++ maven/components/trunk/maven-reporting/maven-reporting-api/pom.xml Sun May 29 12:52:01 2005
@@ -17,14 +17,10 @@
<artifactId>doxia-core</artifactId>
<version>1.0-alpha-3-SNAPSHOT</version>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven</groupId>
+ <artifactId>maven-plugin-api</artifactId>
+ <version>2.0-SNAPSHOT</version>
+ </dependency>
</dependencies>
- <!-- build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-plexus-plugin</artifactId>
- <version>1.0-SNAPSHOT</version>
- </plugin>
- </plugins>
- </build -->
</project>
Modified: maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenMultiPageReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenMultiPageReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenMultiPageReport.java (original)
+++ maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenMultiPageReport.java Sun May 29 12:52:01 2005
@@ -16,15 +16,15 @@
* limitations under the License.
*/
+import org.apache.maven.reporting.sink.MultiPageSink;
+import org.apache.maven.reporting.sink.SinkFactory;
+import org.codehaus.doxia.sink.Sink;
+
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.apache.maven.reporting.sink.MultiPageSink;
-import org.apache.maven.reporting.sink.SinkFactory;
-import org.codehaus.doxia.sink.Sink;
-
/**
* @author <a href="evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id: MavenReport.java 163376 2005-02-23 00:06:06Z brett $
@@ -110,7 +110,7 @@
currentSink.paragraph();
for ( Iterator j = sinks.iterator(); i.hasNext(); )
{
- if (counter>1)
+ if ( counter > 1 )
{
currentSink.text( " " );
}
@@ -118,7 +118,7 @@
sink.link( sink.getOutputName() + ".html" );
sink.text( String.valueOf( counter++ ) );
sink.link_();
-
+
}
currentSink.paragraph_();
currentSink.closeSink();
Modified: maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenReport.java (original)
+++ maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/AbstractMavenReport.java Sun May 29 12:52:01 2005
@@ -16,9 +16,22 @@
* limitations under the License.
*/
+import org.apache.maven.plugin.AbstractMojo;
+import org.apache.maven.plugin.MojoExecutionException;
+import org.apache.maven.project.MavenProject;
+import org.codehaus.doxia.module.xhtml.XhtmlSink;
import org.codehaus.doxia.sink.Sink;
+import org.codehaus.doxia.site.renderer.SiteRenderer;
+import org.codehaus.plexus.util.IOUtil;
+import org.codehaus.plexus.util.StringInputStream;
+import org.codehaus.plexus.util.StringUtils;
+import java.io.File;
import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
/**
* The basis for a Maven report.
@@ -27,8 +40,28 @@
* @version $Id: MavenReport.java 163376 2005-02-23 00:06:06Z brett $
*/
public abstract class AbstractMavenReport
+ extends AbstractMojo
implements MavenReport
{
+ /** @todo share, use default excludes from plexus utils. */
+ protected static final String[] DEFAULT_EXCLUDES = {// Miscellaneous typical temporary files
+ "**/*~", "**/#*#", "**/.#*", "**/%*%", "**/._*",
+
+ // CVS
+ "**/CVS", "**/CVS/**", "**/.cvsignore",
+
+ // SCCS
+ "**/SCCS", "**/SCCS/**",
+
+ // Visual SourceSafe
+ "**/vssver.scc",
+
+ // Subversion
+ "**/.svn", "**/.svn/**",
+
+ // Mac
+ "**/.DS_Store"};
+
private MavenReportConfiguration config;
private Sink sink;
@@ -43,7 +76,44 @@
this.config = config;
}
- public void generate( Sink sink )
+ protected abstract SiteRenderer getSiteRenderer();
+
+ protected abstract String getOutputDirectory();
+
+ protected abstract MavenProject getProject();
+
+ /**
+ * @see org.apache.maven.plugin.Mojo#execute()
+ */
+ public void execute()
+ throws MojoExecutionException
+ {
+ config = new MavenReportConfiguration();
+
+ config.setProject( getProject() );
+
+ config.setReportOutputDirectory( new File( getOutputDirectory() ) );
+
+ try
+ {
+ String outputDirectory = getOutputDirectory();
+
+ XhtmlSink sink = getSiteRenderer().createSink( new File( outputDirectory ), outputDirectory,
+ getOutputName() + ".html",
+ getSiteDescriptor(), "maven" );
+
+ generate( sink, Locale.ENGLISH );
+ }
+ catch ( Exception e )
+ {
+ throw new MojoExecutionException( "An error is occurred in " + getName() + " report generation." );
+ }
+ }
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#generate(org.codehaus.doxia.sink.Sink, java.util.Locale)
+ */
+ public void generate( Sink sink, Locale locale )
throws MavenReportException
{
if ( config == null )
@@ -60,12 +130,12 @@
this.sink = sink;
}
- execute();
+ executeReport( locale );
closeReport();
}
- protected abstract void execute()
+ protected abstract void executeReport( Locale locale )
throws MavenReportException;
protected void closeReport()
@@ -82,4 +152,60 @@
{
return CATEGORY_PROJECT_REPORTS;
}
-}
\ No newline at end of file
+
+ private String getReportsMenu()
+ throws MojoExecutionException
+ {
+ StringBuffer buffer = new StringBuffer();
+ buffer.append( "<menu name=\"Project Documentation\">\n" );
+
+ buffer.append( " <item name=\"" + getName() + "\" href=\"/" + getOutputName() + ".html\"/>\n" );
+
+ buffer.append( "</menu>\n" );
+
+ return buffer.toString();
+ }
+
+ private InputStream getSiteDescriptor()
+ throws MojoExecutionException
+ {
+ String siteDescriptorContent = "";
+
+ try
+ {
+ siteDescriptorContent = IOUtil.toString( getClass().getResourceAsStream( "/default-report.xml" ) );
+ }
+ catch ( IOException e )
+ {
+ throw new MojoExecutionException( "The site descriptor cannot be read!", e );
+ }
+
+ Map props = new HashMap();
+
+ props.put( "reports", getReportsMenu() );
+
+ // TODO: interpolate ${project.*} in general
+
+ if ( getProject().getName() != null )
+ {
+ props.put( "project.name", getProject().getName() );
+ }
+ else
+ {
+ props.put( "project.name", "NO_PROJECT_NAME_SET" );
+ }
+
+ if ( getProject().getUrl() != null )
+ {
+ props.put( "project.url", getProject().getUrl() );
+ }
+ else
+ {
+ props.put( "project.url", "NO_PROJECT_URL_SET" );
+ }
+
+ siteDescriptorContent = StringUtils.interpolate( siteDescriptorContent, props );
+
+ return new StringInputStream( siteDescriptorContent );
+ }
+}
Modified: maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/MavenReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/MavenReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/MavenReport.java (original)
+++ maven/components/trunk/maven-reporting/maven-reporting-api/src/main/java/org/apache/maven/reporting/MavenReport.java Sun May 29 12:52:01 2005
@@ -19,6 +19,7 @@
import org.codehaus.doxia.sink.Sink;
import java.io.IOException;
+import java.util.Locale;
/**
* The basis for a Maven report.
@@ -39,7 +40,7 @@
void setConfiguration( MavenReportConfiguration config );
- void generate( Sink sink )
+ void generate( Sink sink, Locale locale )
throws MavenReportException;
String getOutputName();
Added: maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources/default-report.xml
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources/default-report.xml?rev=178980&view=auto
==============================================================================
--- maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources/default-report.xml (added)
+++ maven/components/trunk/maven-reporting/maven-reporting-api/src/main/resources/default-report.xml Sun May 29 12:52:01 2005
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<project name="${project.name}">
+ <body>
+ ${reports}
+ </body>
+</project>
Modified: maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleReport.java (original)
+++ maven/components/trunk/maven-reports/maven-checkstyle-plugin/src/main/java/org/apache/maven/plugin/checkstyle/CheckstyleReport.java Sun May 29 12:52:01 2005
@@ -16,8 +16,10 @@
* limitations under the License.
*/
+import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
+import org.codehaus.doxia.site.renderer.SiteRenderer;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.StringUtils;
@@ -38,32 +40,37 @@
import java.net.URL;
import java.util.Iterator;
import java.util.List;
+import java.util.Locale;
import java.util.Properties;
/**
+ * @goal checkstyle
+ *
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id: DependenciesReport.java,v 1.2 2005/02/23 00:08:02 brett Exp $
*/
public class CheckstyleReport
extends AbstractMavenReport
{
- protected static final String[] DEFAULT_EXCLUDES = {// Miscellaneous typical temporary files
- "**/*~", "**/#*#", "**/.#*", "**/%*%", "**/._*",
-
- // CVS
- "**/CVS", "**/CVS/**", "**/.cvsignore",
-
- // SCCS
- "**/SCCS", "**/SCCS/**",
-
- // Visual SourceSafe
- "**/vssver.scc",
-
- // Subversion
- "**/.svn", "**/.svn/**",
-
- // Mac
- "**/.DS_Store"};
+ /**
+ * @parameter expression="${project.build.directory}/site"
+ * @required
+ */
+ private String outputDirectory;
+
+ /**
+ * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
+ * @required
+ * @readonly
+ */
+ private SiteRenderer siteRenderer;
+
+ /**
+ * @parameter expression="${project}"
+ * @required
+ * @readonly
+ */
+ private MavenProject project;
private URL configFile = getClass().getResource( "/config/sun_checks.xml" );
@@ -75,17 +82,50 @@
private boolean failedOnError = false;
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getName()
+ */
public String getName()
{
return "Checkstyle";
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getDescription()
+ */
public String getDescription()
{
return "Report on coding style conventions.";
}
- public void execute()
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getOutputDirectory()
+ */
+ protected String getOutputDirectory()
+ {
+ return outputDirectory;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getProject()
+ */
+ protected MavenProject getProject()
+ {
+ return project;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getSiteRenderer()
+ */
+ protected SiteRenderer getSiteRenderer()
+ {
+ return siteRenderer;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#executeReport(java.util.Locale)
+ */
+ public void executeReport( Locale locale )
throws MavenReportException
{
// ----------------------------------------------------------------------
@@ -204,6 +244,9 @@
}
}
+ /* (non-Javadoc)
+ * @see org.apache.maven.reporting.MavenReport#getOutputName()
+ */
public String getOutputName()
{
return "checkstyle";
Modified: maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/JavadocReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/JavadocReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/JavadocReport.java (original)
+++ maven/components/trunk/maven-reports/maven-javadoc-plugin/src/main/java/org/apache/maven/plugin/javadoc/JavadocReport.java Sun May 29 12:52:01 2005
@@ -19,27 +19,91 @@
import java.io.File;
import java.util.Calendar;
import java.util.Iterator;
+import java.util.Locale;
+import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
import org.codehaus.doxia.sink.Sink;
+import org.codehaus.doxia.site.renderer.SiteRenderer;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.cli.CommandLineUtils;
import org.codehaus.plexus.util.cli.Commandline;
import org.codehaus.plexus.util.cli.DefaultConsumer;
/**
+ * @goal javadoc
+ *
* @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
* @version $Id: DependenciesReport.java,v 1.2 2005/02/23 00:08:02 brett Exp $
*/
public class JavadocReport
extends AbstractMavenReport
{
+ /**
+ * @parameter expression="${project.build.directory}/site"
+ * @required
+ */
+ private String outputDirectory;
+
+ /**
+ * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
+ * @required
+ * @readonly
+ */
+ private SiteRenderer siteRenderer;
+
+ /**
+ * @parameter expression="${project}"
+ * @required
+ * @readonly
+ */
+ private MavenProject project;
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getName()
+ */
+ public String getName()
+ {
+ return "JavaDocs";
+ }
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getDescription()
+ */
+ public String getDescription()
+ {
+ return "JavaDoc API documentation.";
+ }
/**
- * @see org.apache.maven.reporting.AbstractMavenReport#generate(org.codehaus.doxia.sink.Sink)
+ * @see org.apache.maven.reporting.AbstractMavenReport#getOutputDirectory()
*/
- public void generate( Sink sink )
+ protected String getOutputDirectory()
+ {
+ return outputDirectory;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getProject()
+ */
+ protected MavenProject getProject()
+ {
+ return project;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getSiteRenderer()
+ */
+ protected SiteRenderer getSiteRenderer()
+ {
+ return siteRenderer;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#generate(org.codehaus.doxia.sink.Sink, java.util.Locale)
+ */
+ public void generate( Sink sink, Locale locale )
throws MavenReportException
{
if ( getConfiguration() == null )
@@ -47,13 +111,13 @@
throw new MavenReportException( "You must specify a report configuration." );
}
- execute();
+ executeReport( locale);
}
/**
- * @see org.apache.maven.reporting.AbstractMavenReport#execute()
+ * @see org.apache.maven.reporting.AbstractMavenReport#executeReport(java.util.Locale)
*/
- protected void execute()
+ protected void executeReport( Locale locale )
throws MavenReportException
{
try
@@ -143,22 +207,6 @@
{
throw new MavenReportException( "An error is occurred in javadoc report generation.", e );
}
- }
-
- /**
- * @see org.apache.maven.reporting.MavenReport#getDescription()
- */
- public String getDescription()
- {
- return "JavaDoc API documentation.";
- }
-
- /**
- * @see org.apache.maven.reporting.MavenReport#getName()
- */
- public String getName()
- {
- return "JavaDocs";
}
/**
Modified: maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java (original)
+++ maven/components/trunk/maven-reports/maven-pmd-plugin/src/main/java/org/apache/maven/plugin/pmd/PmdReport.java Sun May 29 12:52:01 2005
@@ -22,9 +22,12 @@
import net.sourceforge.pmd.RuleContext;
import net.sourceforge.pmd.RuleSet;
import net.sourceforge.pmd.RuleSetFactory;
+
+import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
import org.codehaus.doxia.sink.Sink;
+import org.codehaus.doxia.site.renderer.SiteRenderer;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.StringUtils;
@@ -36,10 +39,13 @@
import java.util.Collections;
import java.util.Iterator;
import java.util.List;
+import java.util.Locale;
/**
* Implement the PMD report.
*
+ * @goal pmd
+ *
* @todo needs to support the multiple source roots
* @author Brett Porter
* @version $Id: PmdReport.java,v 1.3 2005/02/23 00:08:53 brett Exp $
@@ -47,36 +53,70 @@
public class PmdReport
extends AbstractMavenReport
{
- /** @todo share, use default excludes from plexus utils. */
- protected static final String[] DEFAULT_EXCLUDES = {// Miscellaneous typical temporary files
- "**/*~", "**/#*#", "**/.#*", "**/%*%", "**/._*",
-
- // CVS
- "**/CVS", "**/CVS/**", "**/.cvsignore",
-
- // SCCS
- "**/SCCS", "**/SCCS/**",
-
- // Visual SourceSafe
- "**/vssver.scc",
-
- // Subversion
- "**/.svn", "**/.svn/**",
-
- // Mac
- "**/.DS_Store"};
-
+ /**
+ * @parameter expression="${project.build.directory}/site"
+ * @required
+ */
+ private String outputDirectory;
+
+ /**
+ * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
+ * @required
+ * @readonly
+ */
+ private SiteRenderer siteRenderer;
+
+ /**
+ * @parameter expression="${project}"
+ * @required
+ * @readonly
+ */
+ private MavenProject project;
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getName()
+ */
public String getName()
{
return "PMD report";
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getDescription()
+ */
public String getDescription()
{
return "Verification of coding rules.";
}
- public void execute()
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getOutputDirectory()
+ */
+ protected String getOutputDirectory()
+ {
+ return outputDirectory;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getProject()
+ */
+ protected MavenProject getProject()
+ {
+ return project;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getSiteRenderer()
+ */
+ protected SiteRenderer getSiteRenderer()
+ {
+ return siteRenderer;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#executeReport(java.util.Locale)
+ */
+ public void executeReport( Locale locale )
throws MavenReportException
{
Sink sink = null;
@@ -158,6 +198,9 @@
reportSink.endDocument();
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getOutputName()
+ */
public String getOutputName()
{
return "pmd";
Modified: maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java (original)
+++ maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java Sun May 29 12:52:01 2005
@@ -18,15 +18,20 @@
import org.apache.maven.model.Dependency;
import org.apache.maven.model.Model;
+import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReportRenderer;
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
import org.codehaus.doxia.sink.Sink;
+import org.codehaus.doxia.site.renderer.SiteRenderer;
import java.io.IOException;
import java.util.Iterator;
+import java.util.Locale;
/**
+ * @goal dependencies
+ *
* @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
* @version $Id: DependenciesReport.java,v 1.2 2005/02/23 00:08:02 brett Exp $
* @plexus.component
@@ -34,22 +39,78 @@
public class DependenciesReport
extends AbstractMavenReport
{
+ /**
+ * @parameter expression="${project.build.directory}/site"
+ * @required
+ */
+ private String outputDirectory;
+
+ /**
+ * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
+ * @required
+ * @readonly
+ */
+ private SiteRenderer siteRenderer;
+
+ /**
+ * @parameter expression="${project}"
+ * @required
+ * @readonly
+ */
+ private MavenProject project;
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getName()
+ */
public String getName()
{
return "Dependencies";
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getCategoryName()
+ */
public String getCategoryName()
{
return CATEGORY_PROJECT_INFORMATION;
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getDescription()
+ */
public String getDescription()
{
return "This document lists the projects dependencies and provides information on each dependency.";
}
- public void execute()
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getOutputDirectory()
+ */
+ protected String getOutputDirectory()
+ {
+ return outputDirectory;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getProject()
+ */
+ protected MavenProject getProject()
+ {
+ return project;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getSiteRenderer()
+ */
+ protected SiteRenderer getSiteRenderer()
+ {
+ return siteRenderer;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#executeReport(java.util.Locale)
+ */
+ public void executeReport( Locale locale )
throws MavenReportException
{
try
@@ -64,6 +125,9 @@
}
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getOutputName()
+ */
public String getOutputName()
{
return "dependencies";
Modified: maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java
URL: http://svn.apache.org/viewcvs/maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java?rev=178980&r1=178979&r2=178980&view=diff
==============================================================================
--- maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java (original)
+++ maven/components/trunk/maven-reports/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java Sun May 29 12:52:01 2005
@@ -18,37 +18,97 @@
import org.apache.maven.model.MailingList;
import org.apache.maven.model.Model;
+import org.apache.maven.project.MavenProject;
import org.apache.maven.reporting.AbstractMavenReportRenderer;
import org.apache.maven.reporting.AbstractMavenReport;
import org.apache.maven.reporting.MavenReportException;
import org.codehaus.doxia.sink.Sink;
+import org.codehaus.doxia.site.renderer.SiteRenderer;
import java.io.IOException;
import java.util.Iterator;
+import java.util.Locale;
/**
+ * @goal mailing-list
* @author <a href="mailto:brett@apache.org">Brett Porter</a>
* @version $Id: MailingListsReport.java,v 1.4 2005/02/23 00:08:03 brett Exp $
*/
public class MailingListsReport
extends AbstractMavenReport
{
+ /**
+ * @parameter expression="${project.build.directory}/site"
+ * @required
+ */
+ private String outputDirectory;
+
+ /**
+ * @parameter expression="${component.org.codehaus.doxia.site.renderer.SiteRenderer}"
+ * @required
+ * @readonly
+ */
+ private SiteRenderer siteRenderer;
+
+ /**
+ * @parameter expression="${project}"
+ * @required
+ * @readonly
+ */
+ private MavenProject project;
+
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getName()
+ */
public String getName()
{
return "Mailing Lists";
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getCategoryName()
+ */
public String getCategoryName()
{
return CATEGORY_PROJECT_INFORMATION;
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getDescription()
+ */
public String getDescription()
{
return "This document provides subscription and archive information for this project's mailing lists.";
}
- public void execute()
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getOutputDirectory()
+ */
+ protected String getOutputDirectory()
+ {
+ return outputDirectory;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getProject()
+ */
+ protected MavenProject getProject()
+ {
+ return project;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#getSiteRenderer()
+ */
+ protected SiteRenderer getSiteRenderer()
+ {
+ return siteRenderer;
+ }
+
+ /**
+ * @see org.apache.maven.reporting.AbstractMavenReport#executeReport(java.util.Locale)
+ */
+ public void executeReport( Locale locale )
throws MavenReportException
{
try
@@ -63,6 +123,9 @@
}
}
+ /**
+ * @see org.apache.maven.reporting.MavenReport#getOutputName()
+ */
public String getOutputName()
{
return "mail-lists";
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org