Author: michaelo
Date: Mon Dec  8 19:06:02 2014
New Revision: 1643888

URL: http://svn.apache.org/r1643888
Log:
[MPIR-288] Add a skipEmptyReport option

Generally, report generation is now skipped by defualt if the appropriate 
section(s) of the POM are not filled.

* Resolved a few TODOs
* Added a few TODOs to which need to be resolved before MPIR-288 can be applied 
to all reports
* Adaptes minimal-pom IT for new option

Modified:
    maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/pom.xml
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/verify.bsh
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/AbstractProjectInfoReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/CimReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyConvergenceReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyManagementReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DistributionManagementReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/IssueTrackingReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/LicenseReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ModulesReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginManagementReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ScmReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/TeamListReport.java
    
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.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=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml (original)
+++ maven/plugins/trunk/maven-project-info-reports-plugin/pom.xml Mon Dec  8 
19:06:02 2014
@@ -439,7 +439,7 @@ under the License.
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-jarsigner-plugin</artifactId>
-        <executions>
+<!--        <executions>
           <execution>
             <id>sign</id>
             <goals>
@@ -452,7 +452,7 @@ under the License.
               <goal>verify</goal>
             </goals>
           </execution>
-        </executions>
+        </executions>-->
       </plugin>
       <plugin>
         <groupId>org.codehaus.mojo</groupId>

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/pom.xml
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/pom.xml?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/pom.xml
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/pom.xml
 Mon Dec  8 19:06:02 2014
@@ -30,8 +30,12 @@
 
   <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+    
<artifacts.url>http://maven.apache.org/plugins/it/${project.artifactId}</artifacts.url>
   </properties>
 
+  <url>${artifacts.url}</url>
+
   <build>
     <plugins>
       <plugin>

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/verify.bsh
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/verify.bsh?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/verify.bsh
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/it/minimal-pom/verify.bsh
 Mon Dec  8 19:06:02 2014
@@ -30,20 +30,25 @@ try
         return false;
     }
 
-    String[] reports = { "dependencies",
+    String[] reports = { "dependency-info",
                          "index",
-                         "integration",
-                         "issue-tracking",
-                         "license",
-                         "mail-lists",
                          "plugin-management",
                          "plugins",
                          "project-info",
-                         "project-summary",
-                         "source-repository",
-                         "team-list",
-                         "distribution-management"
+                         "project-summary"
                        };
+
+    String[] skippedReports = { "dependencies",
+                                "integration",
+                                "issue-tracking",
+                                "license",
+                                "mail-lists",
+                                "source-repository",
+                                "dependency-management",
+                                "team-list",
+                                "distribution-management"
+                              };
+
     for ( String report : reports )
     {
         File reportFile = new File( siteDir, report + ".html" );
@@ -53,6 +58,16 @@ try
             return false;
         }
     }
+
+    for ( String skippedReport : skippedReports )
+    {
+        File skippedReportFile = new File( siteDir, skippedReport + ".html" );
+        if ( skippedReportFile.isFile() )
+        {
+            System.out.println( "Skipped report file existent: " + 
skippedReportFile );
+            return false;
+        }
+    }
 }
 catch( Throwable t )
 {

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=1643888&r1=1643887&r2=1643888&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
 Mon Dec  8 19:06:02 2014
@@ -177,6 +177,15 @@ public abstract class AbstractProjectInf
     @Parameter( property = "mpir.skip", defaultValue = "false" )
     private boolean skip;
 
+    /**
+     * Skip the project info report generation if a report-specific section of 
the POM is empty.
+     * Defaults to <code>true</code>.
+     *
+     * @since 2.8
+     */
+    @Parameter( defaultValue = "true" )
+    protected boolean skipEmptyReport;
+
     // ----------------------------------------------------------------------
     // Public methods
     // ----------------------------------------------------------------------

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/CimReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/CimReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/CimReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/CimReport.java
 Mon Dec  8 19:06:02 2014
@@ -46,6 +46,19 @@ public class CimReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+         boolean result = super.canGenerateReport();
+         if ( result && skipEmptyReport )
+         {
+             CiManagement cim = getProject().getModel().getCiManagement();
+             result = cim != null ;
+         }
+
+         return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         CimRenderer r = new CimRenderer( getSink(), getProject().getModel(), 
getI18N( locale ), locale );

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependenciesReport.java
 Mon Dec  8 19:06:02 2014
@@ -150,6 +150,21 @@ public class DependenciesReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            // This seems to be a bit too much but the DependenciesRenderer 
applies the same logic
+            DependencyNode dependencyNode = resolveProject();
+            Dependencies dependencies = new Dependencies( project, 
dependencyNode, classesAnalyzer );
+            result = dependencies.hasDependencies();
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         if ( settings.isOffline() && dependencyLocationsEnabled )

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyConvergenceReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyConvergenceReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyConvergenceReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyConvergenceReport.java
 Mon Dec  8 19:06:02 2014
@@ -119,6 +119,14 @@ public class DependencyConvergenceReport
     // Public methods
     // ----------------------------------------------------------------------
 
+    @Override
+    public boolean canGenerateReport()
+    {
+        // TODO Add a noconvergence property string aligned with the other 
reports
+        // should generate the convergency report, even its single Maven 
project.
+        return super.canGenerateReport() && reactorProjects.size() >= 1;
+    }
+
     /** {@inheritDoc} */
     public String getOutputName()
     {
@@ -131,13 +139,6 @@ public class DependencyConvergenceReport
         return "dependency-convergence";
     }
 
-    @Override
-    public boolean canGenerateReport()
-    {
-        // should generate the convergency report, even its single Maven 
project.
-        return super.canGenerateReport() && reactorProjects.size() >= 1;
-    }
-
     // ----------------------------------------------------------------------
     // Protected methods
     // ----------------------------------------------------------------------

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyManagementReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyManagementReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyManagementReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DependencyManagementReport.java
 Mon Dec  8 19:06:02 2014
@@ -98,6 +98,18 @@ public class DependencyManagementReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = getManagementDependencies().hasDependencies();
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         @SuppressWarnings( "unchecked" ) RepositoryUtils repoUtils =
@@ -126,12 +138,6 @@ public class DependencyManagementReport
         return "dependencyManagement";
     }
 
-    @Override
-    public boolean canGenerateReport()
-    {
-        return super.canGenerateReport() && 
getManagementDependencies().hasDependencies();
-    }
-
     // ----------------------------------------------------------------------
     // Private methods
     // ----------------------------------------------------------------------

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DistributionManagementReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DistributionManagementReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DistributionManagementReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/DistributionManagementReport.java
 Mon Dec  8 19:06:02 2014
@@ -44,6 +44,18 @@ public class DistributionManagementRepor
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = getProject().getDistributionManagement() != null;
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         DistributionManagementRenderer r =

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/IssueTrackingReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/IssueTrackingReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/IssueTrackingReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/IssueTrackingReport.java
 Mon Dec  8 19:06:02 2014
@@ -44,6 +44,18 @@ public class IssueTrackingReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = getProject().getModel().getIssueManagement() != null;
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         IssueTrackingRenderer r =

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/LicenseReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/LicenseReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/LicenseReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/LicenseReport.java
 Mon Dec  8 19:06:02 2014
@@ -83,19 +83,15 @@ public class LicenseReport
     // ----------------------------------------------------------------------
 
     @Override
-    public void executeReport( Locale locale )
-    {
-        LicenseRenderer r =
-            new LicenseRenderer( getSink(), getProject(), getI18N( locale ), 
locale, settings,
-                                 linkOnly, licenseFileEncoding );
-
-        r.render();
-    }
-
-    @Override
     public boolean canGenerateReport()
     {
-        if ( !super.canGenerateReport() )
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = !isEmpty( getProject().getModel().getLicenses() ) ;
+        }
+
+        if ( !result )
         {
             return false;
         }
@@ -139,6 +135,16 @@ public class LicenseReport
         return false;
     }
 
+    @Override
+    public void executeReport( Locale locale )
+    {
+        LicenseRenderer r =
+            new LicenseRenderer( getSink(), getProject(), getI18N( locale ), 
locale, settings,
+                                 linkOnly, licenseFileEncoding );
+
+        r.render();
+    }
+
     /**
      * {@inheritDoc}
      */

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/MailingListsReport.java
 Mon Dec  8 19:06:02 2014
@@ -60,6 +60,18 @@ public class MailingListsReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = !isEmpty( getProject().getModel().getMailingLists() );
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         MailingListsRenderer r =
@@ -127,7 +139,6 @@ public class MailingListsReport
             {
                 startSection( getTitle() );
 
-                // TODO: should the report just be excluded?
                 paragraph( getI18nString( "nolist" ) );
 
                 endSection();

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ModulesReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ModulesReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ModulesReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ModulesReport.java
 Mon Dec  8 19:06:02 2014
@@ -72,6 +72,7 @@ public class ModulesReport
     @Override
     public boolean canGenerateReport()
     {
+        // TODO Add a nomodules property string aligned with the other reports
         return !isEmpty( getProject().getModel().getModules() );
     }
 

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginManagementReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginManagementReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginManagementReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginManagementReport.java
 Mon Dec  8 19:06:02 2014
@@ -97,6 +97,7 @@ public class PluginManagementReport
     @Override
     public boolean canGenerateReport()
     {
+        // TODO Add a nopluginmanagement property string aligned with the 
other reports
         return super.canGenerateReport() && project.getPluginManagement() != 
null
             && !isEmpty( project.getPluginManagement().getPlugins() );
     }

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/PluginsReport.java
 Mon Dec  8 19:06:02 2014
@@ -73,6 +73,19 @@ public class PluginsReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = !isEmpty( getProject().getPluginArtifacts() )
+                    || !isEmpty( getProject().getReportArtifacts() );
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         @SuppressWarnings( "unchecked" )
@@ -95,13 +108,6 @@ public class PluginsReport
         return "plugins";
     }
 
-    @Override
-    public boolean canGenerateReport()
-    {
-        return super.canGenerateReport()
-            && !( isEmpty( project.getPluginArtifacts() ) && isEmpty( 
project.getReportArtifacts() ) );
-    }
-
     // ----------------------------------------------------------------------
     // Private
     // ----------------------------------------------------------------------
@@ -137,7 +143,7 @@ public class PluginsReport
          * @param mavenProjectBuilder {@link MavenProjectBuilder}
          * @param artifactFactory {@link ArtifactFactory}
          * @param localRepository {@link ArtifactRepository}
-         * 
+         *
          */
         public PluginsRenderer( Log log, Sink sink, Locale locale, I18N i18n, 
Set<Artifact> plugins,
                                 Set<Artifact> reports, MavenProject project, 
MavenProjectBuilder mavenProjectBuilder,

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ScmReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ScmReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ScmReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/ScmReport.java
 Mon Dec  8 19:06:02 2014
@@ -110,6 +110,26 @@ public class ScmReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            Scm scm = getProject().getModel().getScm();
+            result = scm != null;
+
+            if ( result && StringUtils.isEmpty( anonymousConnection )
+                    && StringUtils.isEmpty( developerConnection )
+                    && StringUtils.isEmpty( scm.getUrl() ) )
+            {
+                result = false;
+            }
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         ScmRenderer r =

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/TeamListReport.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/TeamListReport.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/TeamListReport.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/TeamListReport.java
 Mon Dec  8 19:06:02 2014
@@ -69,6 +69,19 @@ public class TeamListReport
     // ----------------------------------------------------------------------
 
     @Override
+    public boolean canGenerateReport()
+    {
+        boolean result = super.canGenerateReport();
+        if ( result && skipEmptyReport )
+        {
+            result = !isEmpty( getProject().getModel().getDevelopers() )
+                    || !isEmpty( getProject().getModel().getContributors() );
+        }
+
+        return result;
+    }
+
+    @Override
     public void executeReport( Locale locale )
     {
         // CHECKSTYLE_OFF: LineLength
@@ -241,9 +254,9 @@ public class TeamListReport
 
             // To handle JS
             javascript.append( "}" );
-            javascript.append( SystemUtils.LINE_SEPARATOR ); 
-            javascript.append( SystemUtils.LINE_SEPARATOR ); 
-            javascript.append( "window.onLoad = init();" ); 
+            javascript.append( SystemUtils.LINE_SEPARATOR );
+            javascript.append( SystemUtils.LINE_SEPARATOR );
+            javascript.append( "window.onLoad = init();" );
             javascript.append( SystemUtils.LINE_SEPARATOR );
             javaScript( javascript.toString() );
 

Modified: 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java
URL: 
http://svn.apache.org/viewvc/maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java?rev=1643888&r1=1643887&r2=1643888&view=diff
==============================================================================
--- 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java
 (original)
+++ 
maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java
 Mon Dec  8 19:06:02 2014
@@ -233,7 +233,6 @@ public class DependenciesRenderer
         {
             startSection( getTitle() );
 
-            // TODO: should the report just be excluded?
             paragraph( getI18nString( "nolist" ) );
 
             endSection();


Reply via email to