def handle(self): while not self.end.is_set(): try: obj = interface.recv(self.request) if not obj: break self.handle_cmd(obj) except socket.error as e: print("Connection to controller lost: {0}".format(e)) break except KeyboardInterrupt: self.server.running = False break
def handle(self): # self.request is the TCP socket connected to the client while not self.end.is_set(): try: # We currently don't expect anything from the client obj = interface.recv(self.request) if not obj: break self.handle_obj(obj) except socket.timeout: continue except socket.error as e: print("Export socket closed: {0}".format(e)) break
def handle(self): #This overrides the handle method while not self.end.is_set(): try: obj = interface.recv(self.request) if not obj: break self.handle_cmd(obj) #handles the command send to the server #print ("# Handle_cmd end") #DEBUG! except socket.error as e: print("Connection to controller lost: {0}".format(e)) break except KeyboardInterrupt: self.server.running = False break print("# Handle end")
def recv(self): # Loop while we are not told otherwise while not self.end.is_set(): try: # Wait for data from the node obj = interface.recv(self.socket) if obj: # Pass received object to the handler self.handle(obj) else: # Connection was closed. # Raise an exception to cause reconnect in self.run() raise socket.error(0, "Connection closed") except socket.timeout: # This happens all the time. Just try again continue
def run(self): while not self.end.is_set(): try: # Wait for GUI to start connection if not self.connected.wait(.5): continue # Read data from controller obj = interface.recv(self.socket) if obj: self.handle_obj(obj) else: # Connected closed by remote, clean up self.disconnect() except socket.timeout: continue except socket.error as e: self.disconnect()