Mercurial > hg > mercurial
changeset 369:0b2e9154d26e
Merge branch Eluru-6.5.x
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Wed, 08 Feb 2012 10:43:17 +0400 |
parents | 061e5f3a6bad (current diff) 7d9620034403 (diff) |
children | 64cb622b3e89 |
files | mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/BaseCommand.java mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/VcsRootCommand.java |
diffstat | 3 files changed, 41 insertions(+), 17 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/BaseCommand.java Fri Feb 03 13:23:18 2012 +0400 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/BaseCommand.java Wed Feb 08 10:43:17 2012 +0400 @@ -17,10 +17,12 @@ import com.intellij.execution.configurations.GeneralCommandLine; import com.intellij.openapi.util.SystemInfo; -import jetbrains.buildServer.util.StringUtil; import org.jetbrains.annotations.NotNull; import java.io.File; +import java.util.Set; + +import static java.util.Collections.emptySet; /** * @author pavel @@ -48,24 +50,13 @@ } protected GeneralCommandLine createCL() { - GeneralCommandLine cl = new EscapingCommandLineDecorator(); + GeneralCommandLine cl = new MercurialCommandLine(getPrivateData()); setupExecutable(cl); return cl; } - /** - * Escape its parameters - */ - private static class EscapingCommandLineDecorator extends GeneralCommandLine { - @Override - public void addParameter(@NotNull String parameter) { - String escaped = escape(parameter); - super.addParameter(escaped); - } - - private String escape(String s) { - return StringUtil.escapeQuotesIfWindows(s); - } + protected Set<String> getPrivateData() { + return emptySet(); } /**
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/MercurialCommandLine.java Wed Feb 08 10:43:17 2012 +0400 @@ -0,0 +1,32 @@ +package jetbrains.buildServer.buildTriggers.vcs.mercurial.command; + +import com.intellij.execution.configurations.GeneralCommandLine; +import jetbrains.buildServer.util.StringUtil; +import org.jetbrains.annotations.NotNull; + +import java.util.Set; + +public class MercurialCommandLine extends GeneralCommandLine { + + private final Set<String> myPrivateData; + + public MercurialCommandLine(@NotNull Set<String> privateData) { + myPrivateData = privateData; + } + + @Override + public String getCommandLineString() { + String original = super.getCommandLineString(); + return CommandUtil.removePrivateData(original, myPrivateData); + } + + @Override + public void addParameter(@NotNull String parameter) { + String escaped = escape(parameter); + super.addParameter(escaped); + } + + private String escape(String s) { + return StringUtil.escapeQuotesIfWindows(s); + } +}
--- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/VcsRootCommand.java Fri Feb 03 13:23:18 2012 +0400 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/command/VcsRootCommand.java Wed Feb 08 10:43:17 2012 +0400 @@ -35,7 +35,8 @@ return CommandUtil.runCommand(cli, with.privateData(getPrivateData())); } - private Set<String> getPrivateData() { - return Collections.singleton(mySettings.getPassword()); + protected Set<String> getPrivateData() { + String password = mySettings.getPassword(); + return password != null ? Collections.singleton(password) : Collections.<String>emptySet(); } }