Imported from archive.
[mudpy.git] / lib / muff / muffconf.py
index d20f219..0e7c709 100644 (file)
@@ -6,6 +6,9 @@
 # muff configuration files use the ini format supported by ConfigParser
 import ConfigParser
 
+# need os for testing whether the config file exists and is readable
+import os
+
 # hack to load all modules in teh muff package
 import muff
 for module in muff.__all__:
@@ -15,14 +18,30 @@ for module in muff.__all__:
 config_dirs = [".", "./etc", "/usr/local/muff", "/usr/local/muff/etc", "/etc/muff", "/etc" ]
 
 # name of the config file
-config_name = "muff.conf"
+config_name = "mudpy.conf"
 
-# build a list of possible config files
-config_files = []
+# find the config file
 for each_dir in config_dirs:
-       config_files.append(each_dir + "/" + config_name)
+       config_file = each_dir + "/" + config_name
+       if os.access(config_file, os.R_OK): break
 
 # read the config
 config_data = ConfigParser.SafeConfigParser()
-config_data.read(config_files)
+config_data.read(config_file)
+
+def get(section, option):
+       """Convenience function to get configuration data."""
+       return config_data.get(section, option)
+
+def getfloat(section, option):
+       "Convenience function to get floating-point configuration data."""
+       return config_data.getfloat(section, option)
+
+def getint(section, option):
+       """Convenience function to get integer configuration data."""
+       return config_data.getint(section, option)
+
+def set(section, option, value):
+       """Convenienve function to set miscellaneous configuration data."""
+       return config_data.get(section, option, repr(value))