+ @property
+ def state(self):
+ super(LinuxApplication, self).state
+
+ if self._state == ResourceState.STARTED:
+ try:
+ is_finished = self.invoke(SIMULATOR_UUID, "isFinished")
+
+ if is_finished:
+ self.set_stopped()
+ except:
+ msg = "Simulator failed. Can not retrieve state"
+ out = ""
+
+ import traceback
+ err = traceback.format_exc()
+ self.error(msg, out, err)
+ self.do_fail()
+
+ return self._state
+
+ @property
+ def enable_dce(self):
+ if self._enable_dce is None:
+ from nepi.resources.ns3.ns3dceapplication import NS3BaseDceApplication
+ rclass = ResourceFactory.get_resource_type(
+ NS3BaseDceApplication.get_rtype())
+
+ self._enable_dce = False
+ for guid in self.ec.resources:
+ rm = self.ec.get_resource(guid)
+ if isinstance(rm, rclass):
+ self._enable_dce = True
+
+ from nepi.resources.ns3.ns3dcehelper import NS3DceHelper
+ self._dce_helper = NS3DceHelper(self)
+ break
+
+ return self._enable_dce
+
+ @property
+ def dce_helper(self):
+ return self._dce_helper
+