From b1df5ae25e8bc336bb50ef5a2deb4dd40ee809ed Mon Sep 17 00:00:00 2001 From: tv Date: Wed, 18 Dec 2013 16:32:41 +0100 Subject: Reaktor: s/(config).json/\1.py/ --- Reaktor/IRC/getconf.py | 24 +++++++++++++++++------- 1 file changed, 17 insertions(+), 7 deletions(-) (limited to 'Reaktor/IRC/getconf.py') diff --git a/Reaktor/IRC/getconf.py b/Reaktor/IRC/getconf.py index 5fdd1cdb..d6e9f425 100644 --- a/Reaktor/IRC/getconf.py +++ b/Reaktor/IRC/getconf.py @@ -2,19 +2,29 @@ #getconf(key) -> value #oder error -import json +import imp +import os + def make_getconf(filename): + + config = load_config(filename) + def getconf(prop): prop_split = prop.split('.') string = '' - file = open(filename) - for line in file.readlines(): - string+=line - parsed = json.loads(string) - tmp = parsed + imp.reload(config) + tmp = config.__dict__ for pr in prop_split: tmp = tmp[pr] - return tmp + return getconf + + +def load_config(filename): + dirname = os.path.dirname(filename) + modname, ext = os.path.splitext(os.path.basename(filename)) + file, pathname, description = imp.find_module(modname, [ dirname ]) + return imp.load_module(modname, file, pathname, description) + -- cgit v1.2.3