You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2021/08/05 20:42:34 UTC

[maven-scm] branch SCM-948 created (now 4cafe0f)

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a change to branch SCM-948
in repository https://gitbox.apache.org/repos/asf/maven-scm.git.


      at 4cafe0f  [SCM-948] Make limit parameter work for svnexe and gitexe changelog goal

This branch includes the following new commits:

     new 4cafe0f  [SCM-948] Make limit parameter work for svnexe and gitexe changelog goal

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


[maven-scm] 01/01: [SCM-948] Make limit parameter work for svnexe and gitexe changelog goal

Posted by mi...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch SCM-948
in repository https://gitbox.apache.org/repos/asf/maven-scm.git

commit 4cafe0f5031f7ca0be79f2e4944b535a8c812ac5
Author: Clemens Quoss <cl...@quoss.de>
AuthorDate: Fri Jul 23 23:48:53 2021 +0200

    [SCM-948] Make limit parameter work for svnexe and gitexe changelog goal
    
    This closes #119
---
 .../command/changelog/GitChangeLogCommand.java     | 33 +++++++++++++++++++++-
 .../command/changelog/SvnChangeLogCommand.java     | 20 +++++++++++++
 2 files changed, 52 insertions(+), 1 deletion(-)

diff --git a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java
index e4879ba..6f87a43 100644
--- a/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java
+++ b/maven-scm-providers/maven-scm-providers-git/maven-scm-provider-gitexe/src/main/java/org/apache/maven/scm/provider/git/gitexe/command/changelog/GitChangeLogCommand.java
@@ -39,6 +39,9 @@ import java.io.File;
 import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.TimeZone;
+import org.apache.maven.scm.CommandParameter;
+import org.apache.maven.scm.CommandParameters;
+import org.apache.maven.scm.ScmResult;
 
 /**
  * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
@@ -51,7 +54,24 @@ public class GitChangeLogCommand
 {
     private static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss Z";
 
+    @Override
+    public ScmResult executeCommand( ScmProviderRepository repository, ScmFileSet fileSet,
+                                     CommandParameters parameters )
+        throws ScmException
+    {
+        return executeChangeLogCommand( repository, fileSet,
+                parameters.getDate( CommandParameter.START_DATE, null ),
+                parameters.getDate( CommandParameter.END_DATE, null ),
+                (ScmBranch) parameters.getScmVersion( CommandParameter.BRANCH, null ),
+                parameters.getString( CommandParameter.CHANGELOG_DATE_PATTERN, null ),
+                parameters.getScmVersion( CommandParameter.START_SCM_VERSION, null ),
+                parameters.getScmVersion( CommandParameter.END_SCM_VERSION, null ),
+                parameters.getInt( CommandParameter.LIMIT, -1 ),
+                parameters.getScmVersion( CommandParameter.SCM_VERSION, null ) );
+    }
+
     /** {@inheritDoc} */
+    @Override
     protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet,
                                                           ScmVersion startVersion, ScmVersion endVersion,
                                                           String datePattern )
@@ -61,6 +81,7 @@ public class GitChangeLogCommand
     }
 
     /** {@inheritDoc} */
+    @Override
     protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet,
                                                           Date startDate, Date endDate, ScmBranch branch,
                                                           String datePattern )
@@ -148,9 +169,19 @@ public class GitChangeLogCommand
     // ----------------------------------------------------------------------
 
     /**
-     * this constructs creates the commandline for the git-whatchanged command.
+     * This method creates the commandline for the git-whatchanged command.
+     * <p>
      * Since it uses --since and --until for the start and end date, the branch
      * and version parameters can be used simultanously. 
+     *
+     * @param repository Provider repositry to use.
+     * @param workingDirectory Working copy directory.
+     * @param branch Branch to run command on.
+     * @param startDate Start date of log entries.
+     * @param endDate End date of log entries.
+     * @param startVersion Start version of log entries.
+     * @param endVersion End version of log entries.
+     * @return Command line.
      */
     public static Commandline createCommandLine( GitScmProviderRepository repository, File workingDirectory,
                                                  ScmBranch branch, Date startDate, Date endDate,
diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommand.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommand.java
index 7f50bb7..aa94af2 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommand.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommand.java
@@ -44,6 +44,9 @@ import java.text.SimpleDateFormat;
 import java.util.Date;
 import java.util.Objects;
 import java.util.TimeZone;
+import org.apache.maven.scm.CommandParameter;
+import org.apache.maven.scm.CommandParameters;
+import org.apache.maven.scm.ScmResult;
 
 /**
  * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
@@ -56,8 +59,24 @@ public class SvnChangeLogCommand
 {
     private static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss Z";
 
+    @Override
+    public ScmResult executeCommand( ScmProviderRepository repository, ScmFileSet fileSet,
+                                     CommandParameters parameters )
+        throws ScmException
+    {
+        return executeChangeLogCommand( repository, fileSet,
+                parameters.getDate( CommandParameter.START_DATE, null ),
+                parameters.getDate( CommandParameter.END_DATE, null ),
+                (ScmBranch) parameters.getScmVersion( CommandParameter.BRANCH, null ),
+                parameters.getString( CommandParameter.CHANGELOG_DATE_PATTERN, null ),
+                parameters.getScmVersion( CommandParameter.START_SCM_VERSION, null ),
+                parameters.getScmVersion( CommandParameter.END_SCM_VERSION, null ),
+                parameters.getInt( CommandParameter.LIMIT, -1 ) );
+    }
+
     /** {@inheritDoc} */
     @Deprecated
+    @Override
     protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet,
                                                           ScmVersion startVersion, ScmVersion endVersion,
                                                           String datePattern )
@@ -68,6 +87,7 @@ public class SvnChangeLogCommand
 
     /** {@inheritDoc} */
     @Deprecated
+    @Override
     protected ChangeLogScmResult executeChangeLogCommand( ScmProviderRepository repo, ScmFileSet fileSet,
                                                           Date startDate, Date endDate, ScmBranch branch,
                                                           String datePattern )