class SensorDataManager(threading.Thread): ''' * Default Constructor ''' def __init__(self): threading.Thread.__init__(self) time.sleep(1) self.alo = ActuatorDataListener() self.alo.start() ''' * Runnable thread,to perform actuation ''' def run(self): while(True): if (self.alo.on_Actuator_Message() is True): maa = MultiActuatorAdaptor() maa.temp_act(self.alo.get_alo_object().sensor_value) else: continue time.sleep(5) ''' * Function to create instance of MultiActuatorAdaptor class ''' def trigger_actuation(self): self.maa = MultiActuatorAdaptor() ''' * Standard getter function * Output: MultiActuatorAdaptor(object) ''' def get_maaadaptor(self): return self.maa ''' * Function to handle sensor data, so as to activate actuator * Input: SensorData(Object) * Output: True or False (Boolean) ''' def handle_sensordata(self, invalue): self.x = invalue if(self.x.getActuationStae() is True): return True if(self.x.getActuationStae() is False): return False def get_alo(self): return self.alo
def registerActuatorDataDbmsListener(self) -> bool: #try registering to actuatorDataListener try: #initialize ActuatorDataListener and send current reference to redis actuatorDataListener = ActuatorDataListener(self.r_actuator) #start the thread actuatorDataListener.start() #if caused an exception except Exception as e: print(e) #return false return False #if ran successfully return True