This is an automated email from the ASF dual-hosted git repository.
kwin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-scm.git
The following commit(s) were added to refs/heads/master by this push:
new 86c30f7d1 [SCM-1011] Consider interactive flag for SvnExeScmProvider
86c30f7d1 is described below
commit 86c30f7d1676f9781ce357e7acfa02d94739b2bf
Author: Konrad Windszus <[email protected]>
AuthorDate: Thu Jul 20 09:29:33 2023 +0200
[SCM-1011] Consider interactive flag for SvnExeScmProvider
By default use SVN CLI in interactive mode
---
.../org/apache/maven/scm/provider/ScmProvider.java | 3 +-
.../src/main/mdo/svn-settings.mdo | 4 +--
.../scm/provider/svn/svnexe/SvnExeScmProvider.java | 39 +++++++++++++---------
.../svn/svnexe/command/SvnCommandLineUtils.java | 5 +--
.../svn/svnexe/command/blame/SvnBlameCommand.java | 11 ++++--
.../svnexe/command/branch/SvnBranchCommand.java | 11 ++++--
.../command/changelog/SvnChangeLogCommand.java | 11 ++++--
.../svnexe/command/checkin/SvnCheckInCommand.java | 14 +++++++-
.../command/checkout/SvnCheckOutCommand.java | 13 ++++++--
.../svn/svnexe/command/diff/SvnDiffCommand.java | 10 ++++--
.../svnexe/command/export/SvnExeExportCommand.java | 10 ++++--
.../svn/svnexe/command/info/SvnInfoCommand.java | 9 +++--
.../svn/svnexe/command/list/SvnListCommand.java | 9 +++--
.../svn/svnexe/command/mkdir/SvnMkdirCommand.java | 10 ++++--
.../command/remoteinfo/SvnRemoteInfoCommand.java | 14 ++++++--
.../svnexe/command/status/SvnStatusCommand.java | 11 ++++--
.../svn/svnexe/command/tag/SvnTagCommand.java | 13 +++++---
.../svn/svnexe/command/untag/SvnUntagCommand.java | 8 ++++-
.../svnexe/command/update/SvnUpdateCommand.java | 18 +++++++---
.../svnexe/command/SvnCommandLineUtilsTest.java | 32 +++++++++++-------
.../command/branch/SvnExeBranchCommandTckTest.java | 6 ++--
.../command/changelog/SvnChangeLogCommandTest.java | 8 ++---
.../command/checkin/SvnCheckInCommandTest.java | 11 ++++--
.../command/checkout/SvnCheckOutCommandTest.java | 5 +--
.../command/export/SvnExportCommandTest.java | 13 ++++----
.../svnexe/command/info/SvnInfoCommandTest.java | 2 +-
.../svnexe/command/list/SvnListCommandTest.java | 4 +--
.../svnexe/command/mkdir/SvnMkdirCommandTest.java | 3 +-
.../remoteinfo/SvnRemoteInfoCommandTest.java | 4 +--
.../command/tag/SvnExeTagCommandTckTest.java | 3 +-
.../command/untag/SvnExeUntagCommandTckTest.java | 2 +-
.../svnexe/command/untag/SvnUntagCommandTest.java | 2 +-
.../command/update/SvnUpdateCommandTest.java | 3 +-
33 files changed, 223 insertions(+), 98 deletions(-)
diff --git
a/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java
b/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java
index 34c0fe97a..9418af67c 100644
--- a/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java
+++ b/maven-scm-api/src/main/java/org/apache/maven/scm/provider/ScmProvider.java
@@ -70,7 +70,8 @@ ScmProviderRepository makeProviderScmRepository(File path)
throws ScmRepositoryException, UnknownRepositoryStructure;
/**
- * Sets the interactive mode. As the provider is usually a singleton this
method affects the provider globally!
+ * Sets the interactive mode, which by default (i.e. if not called) is
assumed to be {@code true} by providers.
+ * As providers are usually singletons, this affects every usage of this
provider.
*
* @param interactive either {@code true} in case user may be prompted for
information, otherwise {@code false}. The default is {@code true}.
* @since 2.0.0-M2
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/mdo/svn-settings.mdo
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/mdo/svn-settings.mdo
index a53ea04d5..55717665f 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/mdo/svn-settings.mdo
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svn-commons/src/main/mdo/svn-settings.mdo
@@ -68,9 +68,9 @@
<name>useNonInteractive</name>
<version>1.1.0+</version>
<type>boolean</type>
- <defaultValue>true</defaultValue>
+ <defaultValue>false</defaultValue>
<description><![CDATA[
- Switch off if you do not like to use
<code>--non-interactive</code> e.g. on Leopard (see SCM-402).
+ Switch on if you want to use <code>--non-interactive</code>
irrespective of the interactive flag set on the according SCM provider. The
value false means that provider's interactive flag is used to determine this
CLI argument.
]]></description>
</field>
<field>
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java
index f2b6d120e..340e924b3 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/SvnExeScmProvider.java
@@ -56,6 +56,13 @@
@Singleton
@Named("svn")
public class SvnExeScmProvider extends AbstractSvnScmProvider {
+ private boolean interactive = true;
+
+ @Override
+ public void setInteractive(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/**
* {@inheritDoc}
*/
@@ -69,7 +76,7 @@ protected SvnCommand getAddCommand() {
*/
@Override
protected SvnCommand getBranchCommand() {
- return new SvnBranchCommand();
+ return new SvnBranchCommand(interactive);
}
/**
@@ -77,7 +84,7 @@ protected SvnCommand getBranchCommand() {
*/
@Override
protected SvnCommand getChangeLogCommand() {
- return new SvnChangeLogCommand();
+ return new SvnChangeLogCommand(interactive);
}
/**
@@ -85,7 +92,7 @@ protected SvnCommand getChangeLogCommand() {
*/
@Override
protected SvnCommand getCheckInCommand() {
- return new SvnCheckInCommand();
+ return new SvnCheckInCommand(interactive);
}
/**
@@ -93,7 +100,7 @@ protected SvnCommand getCheckInCommand() {
*/
@Override
protected SvnCommand getCheckOutCommand() {
- return new SvnCheckOutCommand();
+ return new SvnCheckOutCommand(interactive);
}
/**
@@ -101,7 +108,7 @@ protected SvnCommand getCheckOutCommand() {
*/
@Override
protected SvnCommand getDiffCommand() {
- return new SvnDiffCommand();
+ return new SvnDiffCommand(interactive);
}
/**
@@ -109,7 +116,7 @@ protected SvnCommand getDiffCommand() {
*/
@Override
protected SvnCommand getExportCommand() {
- return new SvnExeExportCommand();
+ return new SvnExeExportCommand(interactive);
}
/**
@@ -125,7 +132,7 @@ protected SvnCommand getRemoveCommand() {
*/
@Override
protected SvnCommand getStatusCommand() {
- return new SvnStatusCommand();
+ return new SvnStatusCommand(interactive);
}
/**
@@ -133,7 +140,7 @@ protected SvnCommand getStatusCommand() {
*/
@Override
protected SvnCommand getTagCommand() {
- return new SvnTagCommand();
+ return new SvnTagCommand(interactive);
}
/**
@@ -141,7 +148,7 @@ protected SvnCommand getTagCommand() {
*/
@Override
protected SvnCommand getUntagCommand() {
- return new SvnUntagCommand();
+ return new SvnUntagCommand(interactive);
}
/**
@@ -149,7 +156,7 @@ protected SvnCommand getUntagCommand() {
*/
@Override
protected SvnCommand getUpdateCommand() {
- return new SvnUpdateCommand();
+ return new SvnUpdateCommand(interactive);
}
/**
@@ -157,12 +164,12 @@ protected SvnCommand getUpdateCommand() {
*/
@Override
protected SvnCommand getListCommand() {
- return new SvnListCommand();
+ return new SvnListCommand(interactive);
}
@Override
public SvnCommand getInfoCommand() {
- return new SvnInfoCommand();
+ return new SvnInfoCommand(interactive);
}
/**
@@ -170,7 +177,7 @@ public SvnCommand getInfoCommand() {
*/
@Override
protected SvnCommand getBlameCommand() {
- return new SvnBlameCommand();
+ return new SvnBlameCommand(interactive);
}
/**
@@ -178,7 +185,7 @@ protected SvnCommand getBlameCommand() {
*/
@Override
protected SvnCommand getMkdirCommand() {
- return new SvnMkdirCommand();
+ return new SvnMkdirCommand(interactive);
}
/**
@@ -203,13 +210,13 @@ protected String getRepositoryURL(File path) throws
ScmException {
@Override
public RemoteInfoScmResult remoteInfo(
ScmProviderRepository repository, ScmFileSet fileSet,
CommandParameters parameters) throws ScmException {
- SvnRemoteInfoCommand svnRemoteInfoCommand = new SvnRemoteInfoCommand();
+ SvnRemoteInfoCommand svnRemoteInfoCommand = new
SvnRemoteInfoCommand(interactive);
return svnRemoteInfoCommand.executeRemoteInfoCommand(repository,
fileSet, parameters);
}
@Override
public boolean remoteUrlExist(ScmProviderRepository repository,
CommandParameters parameters) throws ScmException {
- SvnRemoteInfoCommand svnRemoteInfoCommand = new SvnRemoteInfoCommand();
+ SvnRemoteInfoCommand svnRemoteInfoCommand = new
SvnRemoteInfoCommand(interactive);
return svnRemoteInfoCommand.remoteUrlExist(repository, parameters);
}
}
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/SvnCommandLineUtils.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java
index 5b62bad76..27695bb1f 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtils.java
@@ -70,7 +70,8 @@ public static void addTarget(Commandline cl, List<File>
files) throws IOExceptio
targets.deleteOnExit();
}
- public static Commandline getBaseSvnCommandLine(File workingDirectory,
SvnScmProviderRepository repository) {
+ public static Commandline getBaseSvnCommandLine(
+ File workingDirectory, SvnScmProviderRepository repository,
boolean interactive) {
Commandline cl = new Commandline();
cl.setExecutable("svn");
@@ -111,7 +112,7 @@ public static Commandline getBaseSvnCommandLine(File
workingDirectory, SvnScmPro
cl.createArg().setValue("--no-auth-cache");
}
- if (SvnUtil.getSettings().isUseNonInteractive()) {
+ if (!interactive || SvnUtil.getSettings().isUseNonInteractive()) {
cl.createArg().setValue("--non-interactive");
}
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/blame/SvnBlameCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/blame/SvnBlameCommand.java
index ceef18619..21bb129d0 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/blame/SvnBlameCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/blame/SvnBlameCommand.java
@@ -39,6 +39,12 @@
* @since 1.4
*/
public class SvnBlameCommand extends AbstractBlameCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnBlameCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/**
* {@inheritDoc}
*/
@@ -73,9 +79,8 @@ public BlameScmResult
executeBlameCommand(ScmProviderRepository repo, ScmFileSet
return new BlameScmResult(cl.toString(), consumer.getLines());
}
- public static Commandline createCommandLine(
- SvnScmProviderRepository repository, File workingDirectory, String
filename) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ public Commandline createCommandLine(SvnScmProviderRepository repository,
File workingDirectory, String filename) {
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("blame");
cl.createArg().setValue("--xml");
cl.createArg().setValue(filename);
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/branch/SvnBranchCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnBranchCommand.java
index a89363cce..60e823394 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnBranchCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnBranchCommand.java
@@ -52,6 +52,11 @@
* TODO since this is just a copy, use that instead.
*/
public class SvnBranchCommand extends AbstractBranchCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnBranchCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
public ScmResult executeBranchCommand(
ScmProviderRepository repo, ScmFileSet fileSet, String branch,
ScmBranchParameters scmBranchParameters)
@@ -138,7 +143,7 @@ public ScmResult executeBranchCommand(ScmProviderRepository
repo, ScmFileSet fil
//
// ----------------------------------------------------------------------
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository, File workingDirectory, String
branch, File messageFile) {
ScmBranchParameters scmBranchParameters = new ScmBranchParameters();
scmBranchParameters.setRemoteBranching(false);
@@ -146,13 +151,13 @@ public static Commandline createCommandLine(
return createCommandLine(repository, workingDirectory, branch,
messageFile, scmBranchParameters);
}
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
String branch,
File messageFile,
ScmBranchParameters scmBranchParameters) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("copy");
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 bd08d0fbf..720831ef3 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
@@ -54,6 +54,11 @@
*/
public class SvnChangeLogCommand extends AbstractChangeLogCommand implements
SvnCommand {
private static final String DATE_FORMAT = "yyyy-MM-dd HH:mm:ss Z";
+ private final boolean interactive;
+
+ public SvnChangeLogCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
@Override
public ScmResult executeCommand(ScmProviderRepository repository,
ScmFileSet fileSet, CommandParameters parameters)
@@ -170,7 +175,7 @@ private ChangeLogScmResult executeChangeLogCommand(
//
// ----------------------------------------------------------------------
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
ScmBranch branch,
@@ -182,7 +187,7 @@ public static Commandline createCommandLine(
repository, workingDirectory, branch, startDate, endDate,
startVersion, endVersion, null);
}
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
ScmBranch branch,
@@ -195,7 +200,7 @@ public static Commandline createCommandLine(
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("log");
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/checkin/SvnCheckInCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommand.java
index 7f8ecdc45..f177817a1 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommand.java
@@ -43,6 +43,12 @@
*
*/
public class SvnCheckInCommand extends AbstractCheckInCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnCheckInCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/** {@inheritDoc} */
protected CheckInScmResult executeCheckInCommand(
ScmProviderRepository repo, ScmFileSet fileSet, String message,
ScmVersion version) throws ScmException {
@@ -104,7 +110,13 @@ protected CheckInScmResult executeCheckInCommand(
public static Commandline createCommandLine(
SvnScmProviderRepository repository, ScmFileSet fileSet, File
messageFile) throws ScmException {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository);
+ return createCommandLine(repository, fileSet, messageFile, true);
+ }
+
+ public static Commandline createCommandLine(
+ SvnScmProviderRepository repository, ScmFileSet fileSet, File
messageFile, boolean interactive)
+ throws ScmException {
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository,
interactive);
cl.createArg().setValue("commit");
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/checkout/SvnCheckOutCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommand.java
index 6acd729ec..ea34abae4 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommand.java
@@ -46,6 +46,12 @@
*
*/
public class SvnCheckOutCommand extends AbstractCheckOutCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnCheckOutCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/**
* {@inheritDoc}
*/
@@ -110,7 +116,7 @@ protected CheckOutScmResult executeCheckOutCommand(
* @return the SVN command line for the SVN check out.
* @see #createCommandLine(SvnScmProviderRepository, File, ScmVersion,
String, boolean)
*/
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository, File workingDirectory,
ScmVersion version, String url) {
return createCommandLine(repository, workingDirectory, version, url,
true);
}
@@ -126,13 +132,14 @@ public static Commandline createCommandLine(
* @return the SVN command line for the SVN check out.
* @since 1.1.1
*/
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
ScmVersion version,
String url,
boolean recursive) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory.getParentFile(),
repository);
+ Commandline cl =
+
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory.getParentFile(),
repository, interactive);
cl.createArg().setValue("checkout");
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/diff/SvnDiffCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/diff/SvnDiffCommand.java
index 0fe62e98b..ead6d64ec 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/diff/SvnDiffCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/diff/SvnDiffCommand.java
@@ -42,6 +42,12 @@
*
*/
public class SvnDiffCommand extends AbstractDiffCommand implements SvnCommand {
+ private final boolean interactive;
+
+ public SvnDiffCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/** {@inheritDoc} */
protected DiffScmResult executeDiffCommand(
ScmProviderRepository repo, ScmFileSet fileSet, ScmVersion
startVersion, ScmVersion endVersion)
@@ -81,12 +87,12 @@ protected DiffScmResult executeDiffCommand(
//
// ----------------------------------------------------------------------
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
ScmVersion startVersion,
ScmVersion endVersion) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("diff");
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/export/SvnExeExportCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExeExportCommand.java
index d1fb2f164..95ae21ec1 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExeExportCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExeExportCommand.java
@@ -47,6 +47,12 @@
*
*/
public class SvnExeExportCommand extends AbstractExportCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnExeExportCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/** {@inheritDoc} */
protected ExportScmResult executeExportCommand(
ScmProviderRepository repo, ScmFileSet fileSet, ScmVersion
version, String outputDirectory)
@@ -105,7 +111,7 @@ protected ExportScmResult executeExportCommand(
//
// ----------------------------------------------------------------------
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
ScmVersion version,
@@ -115,7 +121,7 @@ public static Commandline createCommandLine(
version = null;
}
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("export");
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/info/SvnInfoCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java
index 5609f2d73..699baa2c4 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommand.java
@@ -41,6 +41,11 @@
*
*/
public class SvnInfoCommand extends AbstractCommand implements SvnCommand {
+ private final boolean interactive;
+
+ public SvnInfoCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
/** {@inheritDoc} */
protected ScmResult executeCommand(
@@ -85,9 +90,9 @@ public InfoScmResult executeInfoCommand(
}
// set scope to protected to allow test to call it directly
- protected static Commandline createCommandLine(
+ protected Commandline createCommandLine(
SvnScmProviderRepository repository, ScmFileSet fileSet, boolean
recursive, String revision) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository,
interactive);
cl.createArg().setValue("info");
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/list/SvnListCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java
index 4d07e7142..0866ea557 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommand.java
@@ -45,6 +45,11 @@
*/
public class SvnListCommand extends AbstractListCommand implements SvnCommand {
private static final File TMP_DIR = new
File(System.getProperty("java.io.tmpdir"));
+ private final boolean interactive;
+
+ public SvnListCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
/** {@inheritDoc} */
protected ListScmResult executeListCommand(
@@ -79,9 +84,9 @@ protected ListScmResult executeListCommand(
return new ListScmResult(cl.toString(), consumer.getFiles());
}
- static Commandline createCommandLine(
+ Commandline createCommandLine(
SvnScmProviderRepository repository, ScmFileSet fileSet, boolean
recursive, ScmVersion version) {
- Commandline cl = SvnCommandLineUtils.getBaseSvnCommandLine(TMP_DIR,
repository);
+ Commandline cl = SvnCommandLineUtils.getBaseSvnCommandLine(TMP_DIR,
repository, interactive);
cl.createArg().setValue("list");
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/mkdir/SvnMkdirCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommand.java
index a9388ae28..382d189b9 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommand.java
@@ -42,6 +42,12 @@
*
*/
public class SvnMkdirCommand extends AbstractMkdirCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnMkdirCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/**
* {@inheritDoc}
*/
@@ -96,14 +102,14 @@ protected MkdirScmResult executeMkdirCommand(
}
}
- protected static Commandline createCommandLine(
+ protected Commandline createCommandLine(
SvnScmProviderRepository repository, ScmFileSet fileSet, File
messageFile, boolean createInLocal) {
// as we want to be able to create path remote only create this
directory if not here
if (!fileSet.getBasedir().exists() && !createInLocal) {
fileSet.getBasedir().mkdirs();
}
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository,
interactive);
cl.createArg().setValue("mkdir");
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/remoteinfo/SvnRemoteInfoCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java
index 744afe915..8f9d6afab 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommand.java
@@ -41,6 +41,13 @@
* @since 1.6
*/
public class SvnRemoteInfoCommand extends AbstractRemoteInfoCommand implements
SvnCommand {
+
+ private final boolean interactive;
+
+ public SvnRemoteInfoCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
@Override
public RemoteInfoScmResult executeRemoteInfoCommand(
ScmProviderRepository repository, ScmFileSet fileSet,
CommandParameters parameters) throws ScmException {
@@ -53,7 +60,7 @@ public RemoteInfoScmResult executeRemoteInfoCommand(
String baseUrl = url.substring(0, idx);
Commandline cl = SvnCommandLineUtils.getBaseSvnCommandLine(
- fileSet == null ? null : fileSet.getBasedir(),
(SvnScmProviderRepository) repository);
+ fileSet == null ? null : fileSet.getBasedir(),
(SvnScmProviderRepository) repository, interactive);
cl.createArg().setValue("ls");
@@ -80,7 +87,7 @@ public RemoteInfoScmResult executeRemoteInfoCommand(
}
cl = SvnCommandLineUtils.getBaseSvnCommandLine(
- fileSet == null ? null : fileSet.getBasedir(),
(SvnScmProviderRepository) repository);
+ fileSet == null ? null : fileSet.getBasedir(),
(SvnScmProviderRepository) repository, interactive);
cl.createArg().setValue("ls");
@@ -110,7 +117,8 @@ public RemoteInfoScmResult executeRemoteInfoCommand(
public boolean remoteUrlExist(ScmProviderRepository repository,
CommandParameters parameters) throws ScmException {
String url = ((SvnScmProviderRepository) repository).getUrl();
- Commandline cl = SvnCommandLineUtils.getBaseSvnCommandLine(null,
(SvnScmProviderRepository) repository);
+ Commandline cl =
+ SvnCommandLineUtils.getBaseSvnCommandLine(null,
(SvnScmProviderRepository) repository, interactive);
cl.createArg().setValue("ls");
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/status/SvnStatusCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusCommand.java
index 2ca6b8b71..fb3b21d1f 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/status/SvnStatusCommand.java
@@ -36,6 +36,13 @@
*
*/
public class SvnStatusCommand extends AbstractStatusCommand implements
SvnCommand {
+
+ private final boolean interactive;
+
+ public SvnStatusCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/** {@inheritDoc} */
protected StatusScmResult executeStatusCommand(ScmProviderRepository repo,
ScmFileSet fileSet) throws ScmException {
Commandline cl = createCommandLine((SvnScmProviderRepository) repo,
fileSet);
@@ -71,8 +78,8 @@ protected StatusScmResult
executeStatusCommand(ScmProviderRepository repo, ScmFi
//
// ----------------------------------------------------------------------
- public static Commandline createCommandLine(SvnScmProviderRepository
repository, ScmFileSet fileSet) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository);
+ public Commandline createCommandLine(SvnScmProviderRepository repository,
ScmFileSet fileSet) {
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repository,
interactive);
cl.createArg().setValue("status");
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/tag/SvnTagCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnTagCommand.java
index b12234e61..45c7e011e 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnTagCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnTagCommand.java
@@ -53,6 +53,11 @@
* TODO since this is just a copy, use that instead.
*/
public class SvnTagCommand extends AbstractTagCommand implements SvnCommand {
+ private final boolean interactive;
+
+ public SvnTagCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
public ScmResult executeTagCommand(ScmProviderRepository repo, ScmFileSet
fileSet, String tag, String message)
throws ScmException {
@@ -174,9 +179,9 @@ public ScmResult executeTagCommand(
* @param messageFile
* @return TODO
*/
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository, File workingDirectory, String
tag, File messageFile) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("copy");
@@ -196,13 +201,13 @@ public static Commandline createCommandLine(
return cl;
}
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository,
File workingDirectory,
String tag,
File messageFile,
ScmTagParameters scmTagParameters) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
cl.createArg().setValue("copy");
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/untag/SvnUntagCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommand.java
index a830ae7b3..e0e298af8 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommand.java
@@ -47,6 +47,12 @@
*/
public class SvnUntagCommand extends AbstractUntagCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnUntagCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/** {@inheritDoc} */
@Override
public ScmResult executeUntagCommand(
@@ -117,7 +123,7 @@ public ScmResult executeUntagCommand(
* @return command line instance
*/
Commandline createCommandline(SvnScmProviderRepository repo, ScmFileSet
fileSet, String tag, File messageFile) {
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repo);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(fileSet.getBasedir(), repo,
interactive);
cl.createArg().setValue("--file");
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/update/SvnUpdateCommand.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommand.java
index 75286bd99..a5c3d17eb 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommand.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommand.java
@@ -48,6 +48,12 @@
*
*/
public class SvnUpdateCommand extends AbstractUpdateCommand implements
SvnCommand {
+ private final boolean interactive;
+
+ public SvnUpdateCommand(boolean interactive) {
+ this.interactive = interactive;
+ }
+
/** {@inheritDoc} */
protected UpdateScmResult executeUpdateCommand(ScmProviderRepository repo,
ScmFileSet fileSet, ScmVersion version)
throws ScmException {
@@ -92,9 +98,13 @@ protected UpdateScmResult
executeUpdateCommand(ScmProviderRepository repo, ScmFi
// ----------------------------------------------------------------------
//
// ----------------------------------------------------------------------
-
- public static Commandline createCommandLine(
+ public Commandline createCommandLine(
SvnScmProviderRepository repository, File workingDirectory,
ScmVersion version) {
+ return createCommandLine(repository, workingDirectory, version, true);
+ }
+
+ public Commandline createCommandLine(
+ SvnScmProviderRepository repository, File workingDirectory,
ScmVersion version, boolean interactive) {
Settings settings = SvnUtil.getSettings();
String workingDir = workingDirectory.getAbsolutePath();
@@ -109,7 +119,7 @@ public static Commandline createCommandLine(
version = null;
}
- Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository);
+ Commandline cl =
SvnCommandLineUtils.getBaseSvnCommandLine(workingDirectory, repository,
interactive);
if (version == null || SvnTagBranchUtils.isRevisionSpecifier(version))
{
cl.createArg().setValue("update");
@@ -141,6 +151,6 @@ public static Commandline createCommandLine(
/** {@inheritDoc} */
protected ChangeLogCommand getChangeLogCommand() {
- return new SvnChangeLogCommand();
+ return new SvnChangeLogCommand(interactive);
}
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtilsTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtilsTest.java
index 1d0272597..8cce9751b 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtilsTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/SvnCommandLineUtilsTest.java
@@ -41,30 +41,33 @@ public void testCryptPassword() throws Exception {
*/
SvnScmProviderRepository repo = new SvnScmProviderRepository(
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username", "password");
- String clString =
-
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ String clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
Commandline expectedCmd =
new Commandline("svn --username username --password *****
--no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
assertEquals(expectedCmd.toString(), clString);
repo = new
SvnScmProviderRepository("https://svn.apache.org/repos/asf/maven/scm/trunk",
"username", null);
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
assertCommandLine(
"svn --username username --no-auth-cache --non-interactive",
new File("."),
- SvnCommandLineUtils.getBaseSvnCommandLine(new File("."),
repo));
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
repo = new SvnScmProviderRepository(
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username", "password with spaces");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
assertEquals(expectedCmd.toString(), clString);
repo = new SvnScmProviderRepository(
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username", "password'with'single'quotes");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
assertEquals(expectedCmd.toString(), clString);
@@ -73,14 +76,16 @@ public void testCryptPassword() throws Exception {
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username",
"password'with'single'quotes and spaces");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
assertEquals(expectedCmd.toString(), clString);
repo = new SvnScmProviderRepository(
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username", "password\"with\"double\"quotes");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
assertEquals(expectedCmd.toString(), clString);
@@ -89,7 +94,8 @@ public void testCryptPassword() throws Exception {
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username",
"password\"with\"double\"quotes and spaces");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
// FIXME https://github.com/codehaus-plexus/plexus-utils/issues/36
@@ -103,7 +109,8 @@ public void testCryptPassword() throws Exception {
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username",
"password\"with\"double\"quotes'and'single'quotes");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
assertEquals(expectedCmd.toString(), clString);
@@ -112,7 +119,8 @@ public void testCryptPassword() throws Exception {
"https://svn.apache.org/repos/asf/maven/scm/trunk",
"username",
"password\"with\"double\"quotes'and'single'quotes and spaces");
- clString =
SvnCommandLineUtils.cryptPassword(SvnCommandLineUtils.getBaseSvnCommandLine(new
File("."), repo));
+ clString = SvnCommandLineUtils.cryptPassword(
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
expectedCmd = new Commandline("svn --username username --password
***** --no-auth-cache --non-interactive");
expectedCmd.setWorkingDirectory(new File(".").getAbsolutePath());
// FIXME https://github.com/codehaus-plexus/plexus-utils/issues/36
@@ -126,6 +134,6 @@ public void testCryptPassword() throws Exception {
assertCommandLine(
"svn --username username --no-auth-cache --non-interactive",
new File("."),
- SvnCommandLineUtils.getBaseSvnCommandLine(new File("."),
repo));
+ SvnCommandLineUtils.getBaseSvnCommandLine(new File("."), repo,
false));
}
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnExeBranchCommandTckTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnExeBranchCommandTckTest.java
index d661def2c..b5ca4bb69 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnExeBranchCommandTckTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/branch/SvnExeBranchCommandTckTest.java
@@ -171,10 +171,10 @@ private void testCommandLine(
Commandline cl = null;
if (scmBranchParameters == null) {
- cl = SvnBranchCommand.createCommandLine(svnRepository,
workingDirectory, branch, messageFile);
+ cl = new SvnBranchCommand(false).createCommandLine(svnRepository,
workingDirectory, branch, messageFile);
} else {
- cl = SvnBranchCommand.createCommandLine(
- svnRepository, workingDirectory, branch, messageFile,
scmBranchParameters);
+ cl = new SvnBranchCommand(false)
+ .createCommandLine(svnRepository, workingDirectory,
branch, messageFile, scmBranchParameters);
}
assertCommandLine(commandLine, workingDirectory, cl);
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommandTest.java
index 56a81b929..cd741bdbd 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/changelog/SvnChangeLogCommandTest.java
@@ -210,8 +210,8 @@ private void testCommandLine(
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl = SvnChangeLogCommand.createCommandLine(
- svnRepository, workingDirectory, branch, startDate, endDate,
null, null, limit);
+ Commandline cl = new SvnChangeLogCommand(false)
+ .createCommandLine(svnRepository, workingDirectory, branch,
startDate, endDate, null, null, limit);
assertCommandLine(commandLine, workingDirectory, cl);
}
@@ -224,8 +224,8 @@ private void testCommandLine(String scmUrl, ScmVersion
startVersion, ScmVersion
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl = SvnChangeLogCommand.createCommandLine(
- svnRepository, workingDirectory, null, null, null,
startVersion, endVersion);
+ Commandline cl = new SvnChangeLogCommand(false)
+ .createCommandLine(svnRepository, workingDirectory, null,
null, null, startVersion, endVersion);
assertCommandLine(commandLine, workingDirectory, cl);
}
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommandTest.java
index 7e8b02e6a..382afc2f3 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkin/SvnCheckInCommandTest.java
@@ -82,7 +82,8 @@ public void
testCommandLineWithUsernameWithoutNonInteractive() throws Exception
SvnUtil.setSettingsDirectory(getTestFile("src/test/resources/svn/checkin/macos"));
testCommandLine(
"scm:svn:http://[email protected]/svn/trunk",
- "svn --username anonymous --no-auth-cache commit " +
messageFileString);
+ "svn --username anonymous --no-auth-cache commit " +
messageFileString,
+ true);
} finally {
SvnUtil.setSettingsDirectory(SvnUtil.DEFAULT_SETTINGS_DIRECTORY);
@@ -94,14 +95,18 @@ public void
testCommandLineWithUsernameWithoutNonInteractive() throws Exception
// ----------------------------------------------------------------------
private void testCommandLine(String scmUrl, String commandLine) throws
Exception {
+ testCommandLine(scmUrl, commandLine, false);
+ }
+
+ private void testCommandLine(String scmUrl, String commandLine, boolean
interactive) throws Exception {
File workingDirectory = getTestFile("target/svn-checkin-command-test");
ScmRepository repository = getScmManager().makeScmRepository(scmUrl);
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl =
- SvnCheckInCommand.createCommandLine(svnRepository, new
ScmFileSet(workingDirectory), messageFile);
+ Commandline cl = SvnCheckInCommand.createCommandLine(
+ svnRepository, new ScmFileSet(workingDirectory), messageFile,
interactive);
assertCommandLine(commandLine, workingDirectory, cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommandTest.java
index 8b9d1d176..51b4635ef 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/checkout/SvnCheckOutCommandTest.java
@@ -107,8 +107,9 @@ private void testCommandLine(ScmManager scmManager, String
scmUrl, String revisi
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl = SvnCheckOutCommand.createCommandLine(
- svnRepository, workingDirectory, new ScmRevision(revision),
svnRepository.getUrl(), recursive);
+ Commandline cl = new SvnCheckOutCommand(false)
+ .createCommandLine(
+ svnRepository, workingDirectory, new
ScmRevision(revision), svnRepository.getUrl(), recursive);
assertCommandLine(commandLine, workingDirectory.getParentFile(), cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExportCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExportCommandTest.java
index b27b8c8d6..c4191f5d1 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExportCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/export/SvnExportCommandTest.java
@@ -56,12 +56,13 @@ private void testCommandLine(String scmUrl, File
workingDirectory, File exportDi
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl = SvnExeExportCommand.createCommandLine(
- svnRepository,
- exportDirectory,
- null,
- svnRepository.getUrl(),
- exportDirectory != null ? exportDirectory.getAbsolutePath() :
null);
+ Commandline cl = new SvnExeExportCommand(false)
+ .createCommandLine(
+ svnRepository,
+ exportDirectory,
+ null,
+ svnRepository.getUrl(),
+ exportDirectory != null ?
exportDirectory.getAbsolutePath() : null);
assertCommandLine(commandLine, exportDirectory, cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommandTest.java
index 2e0f11b4f..605f51770 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/info/SvnInfoCommandTest.java
@@ -41,7 +41,7 @@ private void testCommandLine(String scmUrl, ScmFileSet
fileSet, String commandLi
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl = SvnInfoCommand.createCommandLine(svnRepository,
fileSet, false, null);
+ Commandline cl = new
SvnInfoCommand(false).createCommandLine(svnRepository, fileSet, false, null);
assertCommandLine(commandLine, fileSet.getBasedir(), cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommandTest.java
index 7ab87e26a..d0d58f4ed 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/list/SvnListCommandTest.java
@@ -84,8 +84,8 @@ private void testCommandLine(String scmUrl, boolean
recursive, String revision,
throws Exception {
ScmFileSet fileSet = new ScmFileSet(new File("."), new File("."));
- Commandline cl = SvnListCommand.createCommandLine(
- getSvnRepository(scmUrl), fileSet, recursive, new
ScmRevision(revision));
+ Commandline cl = new SvnListCommand(false)
+ .createCommandLine(getSvnRepository(scmUrl), fileSet,
recursive, new ScmRevision(revision));
assertCommandLine(
commandLine + " http://foo.com/svn/trunk/.@", new
File(System.getProperty("java.io.tmpdir")), cl);
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommandTest.java
index 44cfe2614..b1f4351bb 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/mkdir/SvnMkdirCommandTest.java
@@ -96,7 +96,8 @@ private void testCommandLine(String scmUrl, String
commandLine, boolean createIn
SvnScmProviderRepository svnRepository = (SvnScmProviderRepository)
repository.getProviderRepository();
- Commandline cl = SvnMkdirCommand.createCommandLine(svnRepository,
fileSet, messageFile, createInLocal);
+ Commandline cl =
+ new SvnMkdirCommand(false).createCommandLine(svnRepository,
fileSet, messageFile, createInLocal);
assertCommandLine(commandLine, workingDirectory, cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommandTest.java
index acfdbc953..9b50e3e48 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/remoteinfo/SvnRemoteInfoCommandTest.java
@@ -34,7 +34,7 @@ public class SvnRemoteInfoCommandTest extends ScmTestCase {
public void testExist() throws Exception {
checkScmPresence(SVN_COMMAND_LINE);
- SvnRemoteInfoCommand svnRemoteInfoCommand = new SvnRemoteInfoCommand();
+ SvnRemoteInfoCommand svnRemoteInfoCommand = new
SvnRemoteInfoCommand(false);
SvnScmProviderRepository svnScmProviderRepository =
new
SvnScmProviderRepository("http://svn.apache.org/repos/asf/maven/scm/trunk/");
@@ -45,7 +45,7 @@ public void testExist() throws Exception {
public void testNotExist() throws Exception {
checkScmPresence(SVN_COMMAND_LINE);
- SvnRemoteInfoCommand svnRemoteInfoCommand = new SvnRemoteInfoCommand();
+ SvnRemoteInfoCommand svnRemoteInfoCommand = new
SvnRemoteInfoCommand(false);
SvnScmProviderRepository svnScmProviderRepository =
new
SvnScmProviderRepository("http://svn.apache.org/repos/asf/maven/scm/trunk/foo/bar/beer");
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnExeTagCommandTckTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnExeTagCommandTckTest.java
index 3f8c3ded4..d932b57bd 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnExeTagCommandTckTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/tag/SvnExeTagCommandTckTest.java
@@ -148,7 +148,8 @@ private void testCommandLine(
Commandline cl = null;
- cl = SvnTagCommand.createCommandLine(svnRepository, workingDirectory,
tag, messageFile, scmTagParameters);
+ cl = new SvnTagCommand(false)
+ .createCommandLine(svnRepository, workingDirectory, tag,
messageFile, scmTagParameters);
assertCommandLine(commandLine, workingDirectory, cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnExeUntagCommandTckTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnExeUntagCommandTckTest.java
index 7feedb1e4..08582b113 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnExeUntagCommandTckTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnExeUntagCommandTckTest.java
@@ -105,7 +105,7 @@ private void testCommandLine(
svnRepository.setUser(user);
- Commandline cl = new
SvnUntagCommand().createCommandline(svnRepository, scmFileSet, tag,
messageFile);
+ Commandline cl = new
SvnUntagCommand(false).createCommandline(svnRepository, scmFileSet, tag,
messageFile);
assertCommandLine(commandLine, workingDirectory, cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommandTest.java
index c514c8091..5d944620c 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/untag/SvnUntagCommandTest.java
@@ -113,7 +113,7 @@ private void testCommandLine(
throws Exception {
SvnScmProviderRepository repo = getSvnRepository(scmUrl);
repo.setUser(user);
- Commandline cl = new SvnUntagCommand().createCommandline(repo,
scmFileSet, tag, messageFile);
+ Commandline cl = new SvnUntagCommand(false).createCommandline(repo,
scmFileSet, tag, messageFile);
assertCommandLine(commandline, scmFileSet.getBasedir(), cl);
}
diff --git
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommandTest.java
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommandTest.java
index d9b87493b..aac6c23b7 100644
---
a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommandTest.java
+++
b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/test/java/org/apache/maven/scm/provider/svn/svnexe/command/update/SvnUpdateCommandTest.java
@@ -197,7 +197,8 @@ private void testCommandLine(String scmUrl, ScmVersion
version, String commandLi
private void testCommandLine(String scmUrl, ScmVersion version, String
commandLine, File workingDirectory)
throws Exception {
- Commandline cl =
SvnUpdateCommand.createCommandLine(getSvnRepository(scmUrl), workingDirectory,
version);
+ Commandline cl = new SvnUpdateCommand(false)
+ .createCommandLine(getSvnRepository(scmUrl), workingDirectory,
version, false);
assertCommandLine(commandLine, workingDirectory, cl);
}