You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ep...@apache.org on 2006/04/11 12:55:16 UTC

svn commit: r393180 - /maven/sandbox/plugins/maven-changelog-plugin/src/main/java/org/apache/maven/changelog/ChangeLogReport.java

Author: epunzalan
Date: Tue Apr 11 03:55:02 2006
New Revision: 393180

URL: http://svn.apache.org/viewcvs?rev=393180&view=rev
Log:
PR: MCHANGELOG-15, MCHANGELOG-16

Fixed IndexOutOfBounds and svn display links

Modified:
    maven/sandbox/plugins/maven-changelog-plugin/src/main/java/org/apache/maven/changelog/ChangeLogReport.java

Modified: maven/sandbox/plugins/maven-changelog-plugin/src/main/java/org/apache/maven/changelog/ChangeLogReport.java
URL: http://svn.apache.org/viewcvs/maven/sandbox/plugins/maven-changelog-plugin/src/main/java/org/apache/maven/changelog/ChangeLogReport.java?rev=393180&r1=393179&r2=393180&view=diff
==============================================================================
--- maven/sandbox/plugins/maven-changelog-plugin/src/main/java/org/apache/maven/changelog/ChangeLogReport.java (original)
+++ maven/sandbox/plugins/maven-changelog-plugin/src/main/java/org/apache/maven/changelog/ChangeLogReport.java Tue Apr 11 03:55:02 2006
@@ -179,7 +179,7 @@
      *
      * @parameter expression="${project.scm.url}"
      */
-    private String scmUrl;
+    protected String scmUrl;
 
     /**
      * The Maven Project Object
@@ -241,7 +241,7 @@
      *
      * @parameter expression="${project.scm.url}"
      */
-    private String displayFileDetailUrl;
+    protected String displayFileDetailUrl;
 
     // temporary field holder while generating the report
     private String rpt_Repository, rpt_OneRepoParam, rpt_MultiRepoParam;
@@ -907,6 +907,8 @@
         sink.tableHeaderCell_();
         sink.tableRow_();
 
+        initReportUrls();
+
         for ( Iterator i = entries.iterator(); i.hasNext(); )
         {
             ChangeSet entry = (ChangeSet) i.next();
@@ -937,7 +939,6 @@
         sink.tableCell_();
 
         sink.tableCell();
-        initReportUrls();
         //doRevision( entry.getFiles(), bundle, sink );
         doChangedFiles( entry.getFiles(), sink );
         sink.lineBreak();
@@ -974,10 +975,12 @@
 
                     if ( idx > 0 )
                     {
-                        displayFileDetailUrl = displayFileDetailUrl.substring( 0, idx );
+                        String fileDetailUrl = displayFileDetailUrl.substring( 0, idx );
 
                         String rpt_TmpMultiRepoParam = displayFileDetailUrl.substring( idx + 1 );
 
+                        displayFileDetailUrl = fileDetailUrl;
+
                         rpt_OneRepoParam = "?" + rpt_TmpMultiRepoParam;
 
                         rpt_MultiRepoParam = "&" + rpt_TmpMultiRepoParam;
@@ -1092,6 +1095,21 @@
                     linkRev =
                         rpt_Repository + "?cmd=viewBrowseVersion" + module + "&file=" + name + "&version=" + revision;
                 }
+            }
+            else if ( connection.startsWith( "scm:svn" ))
+            {
+                // idea will be to look for placeholders in URL, then replace them with appropriate values
+                String url = displayFileDetailUrl + rpt_OneRepoParam;
+
+                url = url.replaceFirst( "([&?]path=)([^&]+|$)", "$1" + name );
+                linkFile = url;
+
+                if ( revision != null )
+                {
+                    url = url.replaceFirst( "([&?]rev=)([^&]+|$)", "$1" + revision );
+                    linkRev = url;
+                }
+
             }
             else
             {