added some comments
This commit is contained in:
parent
e2ab9709c1
commit
a547de5147
1 changed files with 30 additions and 2 deletions
|
|
@ -77,8 +77,16 @@ class ConfigParser:
|
||||||
self.log.i("reading Config: " + configFilename)
|
self.log.i("reading Config: " + configFilename)
|
||||||
return json.loads(config)
|
return json.loads(config)
|
||||||
|
|
||||||
|
|
||||||
def _create_raw_Object(self, jsonDict, msgName, creator):
|
def _create_raw_Object(self, jsonDict, msgName, creator):
|
||||||
|
"""
|
||||||
|
creates an Main object from the configuration, but just parses raw data and hands it to the object
|
||||||
|
|
||||||
|
:param jsonDict: the configuration file part as dict
|
||||||
|
:param msgName: name of object for error message
|
||||||
|
:param creator: function pointer which is taking two arguments: identifier of the object and arguments.
|
||||||
|
:should return an object
|
||||||
|
:return: a list of objects returned by creator
|
||||||
|
"""
|
||||||
items = []
|
items = []
|
||||||
for key, val in jsonDict.items():
|
for key, val in jsonDict.items():
|
||||||
try:
|
try:
|
||||||
|
|
@ -89,8 +97,13 @@ class ConfigParser:
|
||||||
self.log.w(str(Exception))
|
self.log.w(str(Exception))
|
||||||
return items
|
return items
|
||||||
|
|
||||||
|
|
||||||
def _load_module(self, clazz, modPart):
|
def _load_module(self, clazz, modPart):
|
||||||
|
"""
|
||||||
|
imports and caches a module.
|
||||||
|
:param clazz: the filename of the module (i.e email, ping...)
|
||||||
|
:param modPart: the folder of the module. (i.e services, parsers...)
|
||||||
|
:return: the imported/cached module, or throws an error if it couldn't find it
|
||||||
|
"""
|
||||||
mods = self._loadedMods[modPart]
|
mods = self._loadedMods[modPart]
|
||||||
if clazz in mods:
|
if clazz in mods:
|
||||||
return mods["class"]
|
return mods["class"]
|
||||||
|
|
@ -102,6 +115,14 @@ class ConfigParser:
|
||||||
return mod
|
return mod
|
||||||
|
|
||||||
def replace_with_import(self, objList, modPart, items_func, class_check):
|
def replace_with_import(self, objList, modPart, items_func, class_check):
|
||||||
|
"""
|
||||||
|
replaces configuration dicts with their objects by importing and creating it in the first step.
|
||||||
|
In the second step the original list of json config dicts gets replaced by the loaded objects
|
||||||
|
:param objList: the list of objects which is iterated on
|
||||||
|
:param modPart: the folder from the module (i.e tasks, parsers)
|
||||||
|
:param items_func: function to get a pointer on the list of json-config-objects to replace. Takes one argument and
|
||||||
|
:param class_check: currently unsupported
|
||||||
|
"""
|
||||||
for obj in objList:
|
for obj in objList:
|
||||||
repl = []
|
repl = []
|
||||||
items = items_func(obj)
|
items = items_func(obj)
|
||||||
|
|
@ -134,6 +155,13 @@ class ConfigParser:
|
||||||
items.extend(repl)
|
items.extend(repl)
|
||||||
|
|
||||||
def replace_pointer(self, objectList, replObjectList, id_list_func, id_get_func):
|
def replace_pointer(self, objectList, replObjectList, id_list_func, id_get_func):
|
||||||
|
"""
|
||||||
|
replaces objects from the config by ids.
|
||||||
|
:param objectList: the list of objects to be iterated on
|
||||||
|
:param replObjectList: the list of objects to replace
|
||||||
|
:param id_list_func: function taking one argument as object and should return a list of config ids to replace
|
||||||
|
:param id_get_func: function taking one config-object as argument and should return the config id to compare
|
||||||
|
"""
|
||||||
for obj in objectList:
|
for obj in objectList:
|
||||||
replacements = []
|
replacements = []
|
||||||
idList = id_list_func(obj)
|
idList = id_list_func(obj)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue