Author: olamy
Date: Fri Apr 20 21:11:22 2012
New Revision: 1328504
URL: http://svn.apache.org/viewvc?rev=1328504&view=rev
Log:
[SCM-658] HgChangeLogCommand doesn't implement method executeChangeLogCommand().
Submitted Vladimir Kralik.
Modified:
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java
maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java
Modified:
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java
URL:
http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java?rev=1328504&r1=1328503&r2=1328504&view=diff
==============================================================================
---
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java
(original)
+++
maven/scm/trunk/maven-scm-api/src/main/java/org/apache/maven/scm/command/changelog/AbstractChangeLogCommand.java
Fri Apr 20 21:11:22 2012
@@ -72,7 +72,7 @@ public abstract class AbstractChangeLogC
String datePattern = parameters.getString(
CommandParameter.CHANGELOG_DATE_PATTERN, null );
- if ( startVersion != null )
+ if ( startVersion != null || endVersion != null)
{
return executeChangeLogCommand( repository, fileSet, startVersion,
endVersion, datePattern );
}
Modified:
maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java
URL:
http://svn.apache.org/viewvc/maven/scm/trunk/maven-scm-plugin/src/main/java/org/apache/maven/scm/plugin/ChangeLogMojo.java?rev=1328504&r1=1328503&r2=1328504&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 Apr 20 21:11:22 2012
@@ -28,10 +28,12 @@ import org.apache.maven.plugin.MojoExecu
import org.apache.maven.scm.ChangeSet;
import org.apache.maven.scm.ScmBranch;
import org.apache.maven.scm.ScmException;
+import org.apache.maven.scm.ScmVersion;
import org.apache.maven.scm.command.changelog.ChangeLogScmResult;
import org.apache.maven.scm.command.changelog.ChangeLogSet;
import org.apache.maven.scm.provider.ScmProvider;
import org.apache.maven.scm.repository.ScmRepository;
+import org.codehaus.plexus.util.StringUtils;
/**
* Dump changelog contents to console. It is mainly used to test
maven-scm-api's changelog command.
@@ -60,6 +62,34 @@ public class ChangeLogMojo
* @parameter expression="${endDate}"
*/
private String endDate;
+
+ /**
+ * Start Scm Version.
+ *
+ * @parameter expression="${startScmVersion}"
+ */
+ private String startScmVersion;
+
+ /**
+ * End Scm Version.
+ *
+ * @parameter expression="${endScmVersion}"
+ */
+ private String endScmVersion;
+
+ /**
+ * Start Scm Version Type.
+ *
+ * @parameter expression="${startScmVersionType}"
+ */
+ private String startScmVersionType;
+
+ /**
+ * End Scm Version Type.
+ *
+ * @parameter expression="${endScmVersionType}"
+ */
+ private String endScmVersionType;
/**
* Date Format in changelog output of scm tool.
@@ -102,12 +132,22 @@ public class ChangeLogMojo
ScmRepository repository = getScmRepository();
ScmProvider provider = getScmManager().getProviderByRepository(
repository );
-
- ChangeLogScmResult result = provider.changeLog( repository,
getFileSet(),
+
+ ScmVersion startRev = getScmVersion(
+ StringUtils.isEmpty(startScmVersionType) ? "revision" :
startScmVersionType , startScmVersion );
+ ScmVersion endRev = getScmVersion(
+ StringUtils.isEmpty(endScmVersionType) ? "revision" :
endScmVersionType , endScmVersion );
+
+ ChangeLogScmResult result;
+ if (startRev != null || endRev != null) {
+ result = provider.changeLog( repository,
getFileSet(),startRev, endRev, dateFormat);
+ } else {
+ result = provider.changeLog( repository, getFileSet(),
this.parseDate(
localFormat, this.startDate ),
this.parseDate(
localFormat, this.endDate ), 0,
(ScmBranch)
getScmVersion( scmVersionType, scmVersion ),
dateFormat );
+ }
checkResult( result );
ChangeLogSet changeLogSet = result.getChangeLog();