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 2009/02/27 11:56:55 UTC

svn commit: r748483 - /maven/plugins/trunk/maven-project-info-reports-plugin/src/main/java/org/apache/maven/report/projectinfo/dependencies/renderer/DependenciesRenderer.java

Author: vsiveton
Date: Fri Feb 27 10:56:55 2009
New Revision: 748483

URL: http://svn.apache.org/viewvc?rev=748483&view=rev
Log:
MPIR-140: Add anchors to sections to be able to link them directly

o override startSection() and endSection() to specify the anchor
o based on r748481

Modified:
    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/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=748483&r1=748482&r2=748483&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 Fri Feb 27 10:56:55 2009
@@ -48,6 +48,7 @@
 import org.apache.maven.artifact.resolver.ArtifactResolutionException;
 import org.apache.maven.doxia.parser.Parser;
 import org.apache.maven.doxia.sink.Sink;
+import org.apache.maven.doxia.util.HtmlTools;
 import org.apache.maven.model.License;
 import org.apache.maven.plugin.logging.Log;
 import org.apache.maven.project.MavenProject;
@@ -112,6 +113,11 @@
     private final DecimalFormat fileLengthDecimalFormat;
 
     /**
+     * @since 2.1.1
+     */
+    private int section;
+
+    /**
      * Will be filled with license name / set of projects.
      */
     private Map licenseMap = new HashMap()
@@ -276,6 +282,110 @@
     }
 
     // ----------------------------------------------------------------------
+    // Protected methods
+    // ----------------------------------------------------------------------
+
+    /** {@inheritDoc} */
+    // workaround for MPIR-140
+    // TODO Remove me when maven-reporting-impl:2.1-SNAPSHOT is out
+    protected void startSection( String name )
+    {
+        section = section + 1;
+
+        super.sink.anchor( HtmlTools.encodeId( name ) );
+        super.sink.anchor_();
+
+        switch ( section )
+        {
+            case 1:
+                sink.section1();
+                sink.sectionTitle1();
+                break;
+            case 2:
+                sink.section2();
+                sink.sectionTitle2();
+                break;
+            case 3:
+                sink.section3();
+                sink.sectionTitle3();
+                break;
+            case 4:
+                sink.section4();
+                sink.sectionTitle4();
+                break;
+            case 5:
+                sink.section5();
+                sink.sectionTitle5();
+                break;
+
+            default:
+                // TODO: warning - just don't start a section
+                break;
+        }
+
+        text( name );
+
+        switch ( section )
+        {
+            case 1:
+                sink.sectionTitle1_();
+                break;
+            case 2:
+                sink.sectionTitle2_();
+                break;
+            case 3:
+                sink.sectionTitle3_();
+                break;
+            case 4:
+                sink.sectionTitle4_();
+                break;
+            case 5:
+                sink.sectionTitle5_();
+                break;
+
+            default:
+                // TODO: warning - just don't start a section
+                break;
+        }
+    }
+
+    /** {@inheritDoc} */
+    // workaround for MPIR-140
+    // TODO Remove me when maven-reporting-impl:2.1-SNAPSHOT is out
+    protected void endSection()
+    {
+        switch ( section )
+        {
+            case 1:
+                sink.section1_();
+                break;
+            case 2:
+                sink.section2_();
+                break;
+            case 3:
+                sink.section3_();
+                break;
+            case 4:
+                sink.section4_();
+                break;
+            case 5:
+                sink.section5_();
+                break;
+
+            default:
+                // TODO: warning - just don't start a section
+                break;
+        }
+
+        section = section - 1;
+
+        if ( section < 0 )
+        {
+            throw new IllegalStateException( "Too many closing sections" );
+        }
+    }
+
+    // ----------------------------------------------------------------------
     // Private methods
     // ----------------------------------------------------------------------