added reconfigure event type, for re-generating service config files

added new Event Message handling for starting mobility model or reconfiguring
  a service during runtime
(Boeing r1806)
This commit is contained in:
ahrenholz 2013-12-05 23:44:25 +00:00
parent c1c71bb33a
commit a9ea208a08
4 changed files with 42 additions and 6 deletions

View file

@ -36,18 +36,25 @@ class MobilityManager(ConfigurableManager):
self.session.broker.handlers += (self.physnodehandlelink, )
self.register()
def startup(self):
def startup(self, nodenums=None):
''' Session is transitioning from instantiation to runtime state.
Instantiate any mobility models that have been configured for a WLAN.
'''
for nodenum in self.configs:
v = self.configs[nodenum]
if nodenums is None:
nodenums = self.configs.keys()
for nodenum in nodenums:
try:
n = self.session.obj(nodenum)
except KeyError:
self.session.warn("Skipping mobility configuration for unknown"
"node %d." % nodenum)
continue
if nodenum not in self.configs:
self.session.warn("Missing mobility configuration for node "
"%d." % nodenum)
continue
v = self.configs[nodenum]
for model in v:
try:
cls = self._modelclsmap[model[0]]
@ -60,6 +67,7 @@ class MobilityManager(ConfigurableManager):
self.installphysnodes(n)
if n.mobility:
self.session.evq.add_event(0.0, n.mobility.startup)
return ()
def reset(self):