254 Bootstrap the application with minimal use of Python bindings.
260 expandvars =
lambda data : data
265 if _bootstrap
is None:
268 self.log.debug(
'basicInit: instantiate ApplicationMgr')
269 self.
ip = self.
g = _bootstrap.createApplicationMgr()
271 self.log.debug(
'basicInit: apply options')
274 comp =
'ApplicationMgr'
275 props = Configurable.allConfigurables.get(comp, {})
277 props =
expandvars(props.getValuedProperties())
278 for p, v
in props.items() + [(
'JobOptionsType',
'NONE')]:
279 if not self.g.setProperty(p, str(v)):
280 self.log.error(
'Cannot set property %s.%s to %s', comp, p, v)
283 if _bootstrap.ROOT_VERSION < (6, 2, 7):
291 msp = self.g.getService(comp)
293 self.log.error(
'Cannot get service %s', comp)
295 props = Configurable.allConfigurables.get(comp, {})
297 props =
expandvars(props.getValuedProperties())
298 for p, v
in props.items():
299 if not _bootstrap.setProperty(msp, p, str(v)):
300 self.log.error(
'Cannot set property %s.%s to %s', comp, p, v)
304 comp =
'JobOptionsSvc'
305 jos = self.g.getService(comp)
307 self.log.error(
'Cannot get service %s', comp)
310 c = Configurable.allConfigurables[n]
311 if n
in [
'ApplicationMgr',
'MessageSvc']:
313 for p, v
in c.getValuedProperties().items() :
316 if hasattr(Configurable,
"PropertyReference")
and type(v) == Configurable.PropertyReference:
320 if type(v) == str : v =
'"%s"' % v
321 elif type(v) == long: v =
'%d' % v
322 _bootstrap.addPropertyToCatalogue(jos, n, p, str(v))
323 if hasattr(Configurable,
"_configurationLocked"):
324 Configurable._configurationLocked =
True
325 self.log.debug(
'basicInit: done')
def getNeededConfigurables()