Beispiel #1
0
 async def __add_worker_and_thread_to_entry(self, entry, origin) -> bool:
     communicator: AbstractCommunicator = Communicator(
         entry, origin, None, self.__args.websocket_command_timeout)
     worker: Optional[AbstractWorker] = await self.__worker_factory \
         .get_worker_using_settings(origin, self.__enable_configmode,
                                    communicator=communicator)
     if worker is None:
         return False
     # to break circular dependencies, we need to set the worker ref >.<
     communicator.worker_instance_ref = worker
     new_worker_thread = Thread(name=origin, target=worker.start_worker)
     new_worker_thread.daemon = True
     entry.worker_thread = new_worker_thread
     entry.worker_instance = worker
     return True
Beispiel #2
0
 def __init__(self, args, dev_id, id, websocket_handler, walker,
              mapping_manager, mitm_mapper: MitmMapper,
              db_wrapper: DbWrapper, area_id: int, routemanager_name: str):
     self._args = args
     self._communicator = Communicator(websocket_handler, id, self,
                                       args.websocket_command_timeout)
     self._stop_worker_event = Event()
     self._dev_id = dev_id
     self._origin = id
     self._routemanager_name = routemanager_name
     self._area_id = area_id
     self._walker = walker
     self.workerstart = None
     self._mapping_manager: MappingManager = mapping_manager
     self._mitm_mapper = mitm_mapper
     self._db_wrapper = db_wrapper