Mercurial > hg4j
diff src/org/tmatesoft/hg/core/HgUpdateConfigCommand.java @ 382:82336b7c54f4
Per-repository UpdateConfigCommand completed. Access to system properties through SessionContext to ease alternation
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Fri, 10 Feb 2012 13:56:24 +0100 |
parents | 9fb990c8a724 |
children | 9c9c442b5f2e |
line wrap: on
line diff
--- a/src/org/tmatesoft/hg/core/HgUpdateConfigCommand.java Thu Feb 09 19:07:29 2012 +0100 +++ b/src/org/tmatesoft/hg/core/HgUpdateConfigCommand.java Fri Feb 10 13:56:24 2012 +0100 @@ -26,6 +26,7 @@ import org.tmatesoft.hg.internal.ConfigFile; import org.tmatesoft.hg.internal.Experimental; import org.tmatesoft.hg.internal.Internals; +import org.tmatesoft.hg.repo.HgInternals; import org.tmatesoft.hg.repo.HgRepository; /** @@ -37,27 +38,26 @@ @Experimental(reason="Investigating approaches to alter Hg configuration files") public final class HgUpdateConfigCommand extends HgAbstractCommand<HgUpdateConfigCommand> { - private final HgRepository repo; private final File configFile; private Map<String,List<String>> toRemove; private Map<String,Map<String,String>> toSet; - private HgUpdateConfigCommand(HgRepository hgRepo, File configurationFile) { - repo = hgRepo; + private HgUpdateConfigCommand(File configurationFile) { configFile = configurationFile; } public static HgUpdateConfigCommand forRepository(HgRepository hgRepo) { - return new HgUpdateConfigCommand(hgRepo, new File(".hg/hgrc")); + // XXX HgRepository to implement SessionContextProvider (with getContext())? + return new HgUpdateConfigCommand(new File(HgInternals.getRepositoryDir(hgRepo), "hgrc")); } - public static HgUpdateConfigCommand forUser(HgRepository hgRepo) { - return new HgUpdateConfigCommand(null, Internals.getUserConfigurationFileToWrite()); + public static HgUpdateConfigCommand forUser(SessionContext ctx) { + return new HgUpdateConfigCommand(Internals.getUserConfigurationFileToWrite(ctx)); } - public static HgUpdateConfigCommand forInstallation() { - return new HgUpdateConfigCommand(null, Internals.getInstallationConfigurationFileToWrite()); + public static HgUpdateConfigCommand forInstallation(SessionContext ctx) { + return new HgUpdateConfigCommand(Internals.getInstallationConfigurationFileToWrite(ctx)); } /**