def __init__(self, envPath): self.logger = log.PythonLoggingObserver( "dobozweb.core.components.environments.environmentManager") self.path = EnvironmentManager.envPath self.idCounter = EnvironmentManager.idCounter self._signal_channel = "environment_manager" self.signalHandler = SignalHander(self._signal_channel)
def __init__(self, parentEnvironment): self.logger = log.PythonLoggingObserver( "dobozweb.core.components.nodes.nodeManager") self.parentEnvironment = parentEnvironment self.nodes = {} self.lastNodeId = 0 self._signal_channel = "node_manager" self.signalHandler = SignalHander(self._signal_channel) self.signal_channel_prefix = "environment_" + str( self.parentEnvironment.id)
def __init__(self, rootUri="http://localhost"): DefaultRestHandler.__init__(self, rootUri) self.valid_contentTypes.append("application/pollapli.eventList+json") self.validGetParams.append('altTimeStamp') self._signal_channel = "global_event_listener" self.signalHandler = SignalHander(self._signal_channel) self.signalHandler.add_handler(channel="driver_manager", handler=self._signal_Handler) self.signalHandler.add_handler(channel="update_manager", handler=self._signal_Handler) self.signalHandler.add_handler(channel="environment_manager", handler=self._signal_Handler) self.signalHandler.add_handler(channel="node_manager", handler=self._signal_Handler) self.lastSignal = DispatchableEvent() self.clientHandler = ClientHandler()
def __init__(self, type="node", name="base_node", description="base node", options={}, *args, **kwargs): DBObject.__init__(self, **kwargs) self.logger = log.PythonLoggingObserver( "dobozweb.core.components.nodes.node") self.name = name self.type = type self.description = description self.extra_params = options self.status = NodeStatus() self.driver = None ################# self.variables = [] self.elements = [] self.tools = [] """this is to ensure no 'asynch clash' occurs when replacing the current driver""" self.driverLock = defer.DeferredSemaphore(1) #self.rootElement=NodeComponent("root") self.testElement = None self.variable_test() #self.link_componentToEndpoint() #self.linkedElements=[] """this is for internal comms handling""" self.signal_channel_prefix = str(self.id) self._signal_channel = "node" + self.signal_channel_prefix + "." + self.name self.signalHandler = SignalHander(self._signal_channel) self.signalHandler.add_handler(handler=self.variable_get, signal="get") self.signalHandler.add_handler(handler=self.variable_set, signal="set")
def __init__(self,port,rootPath,filePath,dataPath): #app = Application("PollapliServer") self.port=port self.rootPath=rootPath self.filePath=filePath self.dataPath=dataPath self.logPath=dataPath self.updates_path=os.path.join(dataPath,"updates") self.addOnsPath=os.path.join(self.rootPath,"addons") self.environmentsPath=os.path.join(self.dataPath,"environments") self.depenciesPath=os.path.join(self.rootPath,"dependencies") if not os.path.exists(self.rootPath): os.makedirs(self.rootPath) if not os.path.exists(self.dataPath): os.makedirs(self.dataPath) if not os.path.exists(self.updates_path): os.makedirs(self.updates_path) if not os.path.exists(self.addOnsPath): os.makedirs(self.addOnsPath) if not os.path.exists(self.environmentsPath): os.makedirs(self.environmentsPath) """"""""""""""""""""""""""""""""""""""""" Initialize various subsystems /set correct paths """ UpdateManager._addon_path=self.addOnsPath UpdateManager.updates_path=self.updates_path EnvironmentManager.envPath=self.environmentsPath FileManager.rootDir=self.dataPath FileManager.corePath=os.path.join(self.rootPath,"core") FileManager.rootPath=self.rootPath FileManager.filePath=self.filePath FileManager.uploadPath=os.path.join(self.dataPath,"uploads") FileManager.dataPath=self.dataPath FileManager.logPath=self.logPath FileManager.updates_path=self.updates_path FileManager._addon_path=self.addOnsPath FileManager.depenciesPath=self.depenciesPath if not os.path.exists(FileManager.uploadPath): os.makedirs(FileManager.uploadPath) self.environmentManager=EnvironmentManager(self.dataPath) """""""""""""""""""""""""""""""""""""" exceptionConverter=ExceptionConverter() exceptionConverter.add_exception(ParameterParseException,400 ,1,"Params parse error") exceptionConverter.add_exception(UnhandledContentTypeException,415 ,2,"Bad content type") exceptionConverter.add_exception(EnvironmentAlreadyExists,409 ,3,"Environment already exists") exceptionConverter.add_exception(EnvironmentNotFound,404 ,4,"Environment not found") exceptionConverter.add_exception(UnknownDeviceType,500 ,5,"Unknown node type") exceptionConverter.add_exception(DeviceNotFound,404 ,6,"Node not found") exceptionConverter.add_exception(NoDriverSet,404,7,"Node has no connector") exceptionConverter.add_exception(UnknownDriver,500,8,"Unknown connector driver type") exceptionConverter.add_exception(DeviceHandshakeMismatch,500,9,"Device handshake failed to match the one defined by the driver") exceptionConverter.add_exception(InvalidFile,500,10,"Invalid File") exceptionConverter.add_exception(DeviceNotConnected,500,11,"Attempting to communicate with not connected device") self._signal_channel="main_signal_listener" self.signalHandler=SignalHander(self._signal_channel) self.signalHandler.add_handler(channel="driver_manager") self.signalHandler.add_handler(channel="update_manager") self.signalHandler.add_handler(channel="environment_manager") self.signalHandler.add_handler(channel="node_manager") self.setup()
def __init__(self, parentEnvironment): self.tasks = {} self.parentEnvironment = parentEnvironment self._signal_channel = "task_manager" self.signalHandler = SignalHander(self._signal_channel)