+class VnsProject(ManoProject):
+
+ def __init__(self, name, tasklet, **kw):
+ super(VnsProject, self).__init__(tasklet.log, name)
+ self.update(tasklet)
+
+ self._vlr_handler = None
+ self._vnsm = None
+ # A mapping of instantiated vlr_id's to VirtualLinkRecord objects
+ self._vlrs = {}
+
+ @asyncio.coroutine
+ def register (self):
+ self._vnsm = VnsManager(dts=self._dts,
+ log=self.log,
+ log_hdl=self._log_hdl,
+ loop=self._loop,
+ project=self)
+ yield from self._vnsm.run()
+
+ # NSM needs to detect VLD deletion that has active VLR
+ # self._vld_handler = VldDescriptorConfigDtsHandler(
+ # self._dts, self.log, self.loop, self._vlrs,
+ # )
+ # yield from self._vld_handler.register()
+
+ def deregister(self):
+ self._log.debug("De-register project {}".format(self.name))
+ self._vnsm.deregister()
+
+