introduced attached modules
for the module names, use Attach instead of Property, which get attached modules automatically before calling initModule Change-Id: Iff1b37828d4345c03a18ed29b9970bea149a812d Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21885 Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de> Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
This commit is contained in:
@ -33,6 +33,7 @@ from daemon import DaemonContext
|
||||
|
||||
from secop.errors import ConfigError
|
||||
from secop.lib import formatException, get_class, getGeneralConfig
|
||||
from secop.modules import Attached
|
||||
|
||||
try:
|
||||
import daemon.pidlockfile as pidlockfile
|
||||
@ -186,6 +187,12 @@ class Server:
|
||||
# also call earlyInit on the modules
|
||||
modobj.earlyInit()
|
||||
|
||||
# handle attached modules
|
||||
for modname, modobj in self.modules.items():
|
||||
for propname, propobj in modobj.__class__.properties.items():
|
||||
if isinstance(propobj, Attached):
|
||||
setattr(modobj, propobj.attrname or '_' + propname,
|
||||
self.dispatcher.get_module(modobj.properties[propname]))
|
||||
# call init on each module after registering all
|
||||
for modname, modobj in self.modules.items():
|
||||
modobj.initModule()
|
||||
|
Reference in New Issue
Block a user