You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm-commits@maven.apache.org by ev...@apache.org on 2005/11/07 14:31:28 UTC

svn commit: r331268 - /maven/scm/trunk/maven-scm-providers/maven-scm-provider-svn/src/main/java/org/apache/maven/scm/provider/svn/command/changelog/SvnChangeLogConsumer.java

Author: evenisse
Date: Mon Nov  7 05:31:25 2005
New Revision: 331268

URL: http://svn.apache.org/viewcvs?rev=331268&view=rev
Log:
Add support of new svn changelog format

Modified:
    maven/scm/trunk/maven-scm-providers/maven-scm-provider-svn/src/main/java/org/apache/maven/scm/provider/svn/command/changelog/SvnChangeLogConsumer.java

Modified: maven/scm/trunk/maven-scm-providers/maven-scm-provider-svn/src/main/java/org/apache/maven/scm/provider/svn/command/changelog/SvnChangeLogConsumer.java
URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-providers/maven-scm-provider-svn/src/main/java/org/apache/maven/scm/provider/svn/command/changelog/SvnChangeLogConsumer.java?rev=331268&r1=331267&r2=331268&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-providers/maven-scm-provider-svn/src/main/java/org/apache/maven/scm/provider/svn/command/changelog/SvnChangeLogConsumer.java (original)
+++ maven/scm/trunk/maven-scm-providers/maven-scm-provider-svn/src/main/java/org/apache/maven/scm/provider/svn/command/changelog/SvnChangeLogConsumer.java Mon Nov  7 05:31:25 2005
@@ -67,6 +67,12 @@
                                           "\\d+:\\d+:\\d+) " + // time 16:01:00
                                           "([\\-+])(\\d\\d)(\\d\\d)"; // gmt offset -0400
 
+    private static final String pattern2 = "^r(\\d+)\\s+\\|\\s+" +          // revision number
+                                          "(\\(\\S+\\s+\\S+\\)|\\S+)\\s+\\|\\s+" + // author username
+                                          "(\\d+-\\d+-\\d+ " +             // date 2002-08-24
+                                          "\\d+:\\d+:\\d+) " +             // time 16:01:00
+                                          "([\\-+])(\\d\\d)(\\d\\d)";      // gmt offset -0400 
+
     /** Current status of the parser */
     private int status = GET_HEADER;
 
@@ -85,6 +91,8 @@
     /** The regular expression used to match header lines */
     private RE headerRegexp;
 
+    private RE headerRegexp2;
+
     /**
      * Default constructor.
      */
@@ -93,6 +101,7 @@
         try
         {
             headerRegexp = new RE( pattern );
+            headerRegexp2 = new RE( pattern2 );
         }
         catch ( RESyntaxException ex )
         {
@@ -146,7 +155,14 @@
     {
         if ( !headerRegexp.match( line ) )
         {
-            return;
+            if ( !headerRegexp2.match( line ) )
+            {
+                return;
+            }
+            else
+            {
+                headerRegexp = headerRegexp2;
+            }
         }
 
         currentRevision = headerRegexp.getParen( 1 );