--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/mercurialserver/config.py Fri Nov 13 12:26:08 2009 +0000
@@ -0,0 +1,47 @@
+# Copyright 2008-2009 LShift Ltd
+
+import sys
+import os.path
+import mercurial.config
+
+globalconfig = None
+
+def _getConf():
+ global globalconfig
+ if globalconfig is None:
+ globalconfig = mercurial.config.config()
+ globalconfig.read(os.path.expanduser("~/.mercurial-server"))
+ return globalconfig
+
+def configExists():
+ try:
+ _getConf()
+ return True
+ except:
+ return False
+
+def _getPath(name):
+ return os.path.expanduser(_getConf()["paths"][name])
+
+def _getPaths(name):
+ return [os.path.expanduser(p)
+ for p in _getConf()["paths"][name].split(":")]
+
+
+def getExePath(): return _getPath("exe")
+def getReposPath(): return _getPath("repos")
+
+def getKeysPaths(): return _getPaths("keys")
+def getAccessPaths(): return _getPaths("access")
+
+# This goes into an env var, so pass it on verbatim.
+def getHgrcPaths(): return _getConf()["paths"]["hgrc"]
+
+# Work out where we are, don't use config.
+def setExePath():
+ global _exePath
+ _exePath = os.path.dirname(os.path.abspath(sys.argv[0]))
+
+def getExePath():
+ return _exePath
+