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 2006/02/24 18:06:31 UTC

svn commit: r380712 - /maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java

Author: evenisse
Date: Fri Feb 24 09:06:28 2006
New Revision: 380712

URL: http://svn.apache.org/viewcvs?rev=380712&view=rev
Log:
Define a default format for user input dates

Modified:
    maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java

Modified: maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java
URL: http://svn.apache.org/viewcvs/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java?rev=380712&r1=380711&r2=380712&view=diff
==============================================================================
--- maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java (original)
+++ maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java Fri Feb 24 09:06:28 2006
@@ -41,6 +41,7 @@
 public class ChangeLogMojo
     extends AbstractScmMojo
 {
+    private final static String DEFAULT_DATE_FORMAT = "yyyy-MM-dd";
 
     /**
      * Start Date.
@@ -63,11 +64,17 @@
      */
     private String dateFormat;
 
-    private SimpleDateFormat localFormat = new SimpleDateFormat();
+    /**
+     * Date format to use for the specified startDate and/or endDate.
+     *
+     * @parameter expression="${dateFormat}" default-value="yyyy-MM-dd"
+     */
+    private String userDateFormat = DEFAULT_DATE_FORMAT;
 
     public void execute()
         throws MojoExecutionException
     {
+        SimpleDateFormat localFormat = new SimpleDateFormat( userDateFormat );
 
         try
         {
@@ -75,8 +82,10 @@
 
             ScmProvider provider = getScmManager().getProviderByRepository( repository );
 
-            ChangeLogScmResult result = provider.changeLog( repository, getFileSet(), this.parseDate( this.startDate ),
-                                                            this.parseDate( this.endDate ), 0, null, dateFormat );
+            ChangeLogScmResult result = provider.changeLog( repository, getFileSet(),
+                                                            this.parseDate( localFormat, this.startDate ),
+                                                            this.parseDate( localFormat, this.endDate ), 0, null,
+                                                            dateFormat );
             checkResult( result );
 
             ChangeLogSet changeLogSet = result.getChangeLog();
@@ -104,7 +113,7 @@
      *
      * @return A date
      */
-    private Date parseDate( String date )
+    private Date parseDate( SimpleDateFormat format, String date )
         throws MojoExecutionException
     {
         if ( date == null || date.trim().length() == 0 )
@@ -114,12 +123,12 @@
 
         try
         {
-            return localFormat.parse( date.toString() );
+            return format.parse( date.toString() );
         }
         catch ( ParseException e )
         {
-            throw new MojoExecutionException(
-                "Please use this date pattern: " + localFormat.toLocalizedPattern().toString(), e );
+            throw new MojoExecutionException( "Please use this date pattern: " + format.toLocalizedPattern().toString(),
+                                              e );
         }
     }