Example #1
0
 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
Example #2
0
 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
Example #3
0
 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")
Example #4
0
 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
Example #5
0
    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()