common/config.py
changeset 9 2fcc8ef0b97d
parent 8 2911935c524d
child 10 f3a1b9792cc9
--- a/common/config.py	Tue Aug 16 15:12:53 2011 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,44 +0,0 @@
-import logging
-
-
-class ConfigParser:
-    def __init__(self):
-        self.args = {}       # config file arguments
-        self.registered_args = {}
-        self.log = logging.getLogger('config') 
-
-    def add_argument(self, name, type=str, default=None):
-        self.registered_args[name] = {'type':type, 'default':default}
-
-    def load(self, fname):
-        # parse config file
-        with open(fname) as f:
-            exec(f.read(), self.args)
-        # check contents
-        return self.check()
-
-    def check(self):
-        ok = True
-        for key in self.args.keys():
-            if key == '__builtins__':
-                continue
-            if key in self.registered_args:
-                # arg registered, check type
-                type = self.registered_args[key]['type']
-                if not isinstance(self.args[key], type):
-                    ok = False
-                    self.log.error("Bad type of config parameter '%s': is %s but should be %s",
-                        key, type(self.args[key]), type)
-            else:
-                # arg not registered
-                    ok = False
-                    self.log.error("Unknown config parameter '%s'.", key)
-        return ok
-
-    def __getattr__(self, name):
-        if name in self.args:
-            return self.args[name]
-        
-        # raise error if not found
-        raise AttributeError()
-