make controlled_by configuration work properly
- secnode.py: initialize all modules before creating description - fixes in ctrlby.py
This commit is contained in:
@@ -58,6 +58,7 @@ class WrapControlledBy:
|
||||
prev_enum = self.parameters['controlled_by'].datatype.export_datatype()['members']
|
||||
# add enum member, using autoincrement feature of Enum
|
||||
self.parameters['controlled_by'].datatype = EnumType(Enum(prev_enum, **{name: None}))
|
||||
self.log.info('enumtype %r', self.parameters['controlled_by'].datatype)
|
||||
|
||||
def write_controlled_by(self, modulename):
|
||||
result = modulename
|
||||
|
||||
@@ -99,7 +99,7 @@ class SecNode:
|
||||
modobj._initfailed = True
|
||||
raise InitFailed('try to access erroneous module') from e
|
||||
modobj._isinitialized = True
|
||||
self.log.debug('initialized module %r', modulename)
|
||||
self.log.info('initialized module %r', modulename)
|
||||
return modobj
|
||||
|
||||
def get_module_instance(self, modulename):
|
||||
@@ -201,6 +201,9 @@ class SecNode:
|
||||
self.log.info('Pinata %s found %d modules',
|
||||
modname, len(pinata_modules))
|
||||
todos.extend(pinata_modules)
|
||||
# inititalize all modules
|
||||
for modulename in self.modules:
|
||||
self.get_module(modulename)
|
||||
|
||||
def export_accessibles(self, modobj):
|
||||
self.log.debug('export_accessibles(%r)', modobj.name)
|
||||
|
||||
Reference in New Issue
Block a user