def __readLMCPDataFromSocket(self): data = bytearray(self.__socket.recv(LMCPFactory.HEADER_SIZE)) if (len(data) >= LMCPFactory.HEADER_SIZE): size = LMCPFactory.getSize(data) data.extend(bytearray( self.__socket.recv(size + 4))) # compensate for checksum recv_obj = self.__factory.getObject(data) if recv_obj != None: return recv_obj else: raise ValueError("Invalid object received.") if (len(data) == 0): return raise ValueError("Data read not enough for an LMCP header")
def handle(self): self.factory = LMCPFactory.LMCPFactory() print("Client address: %s" % (self.client_address,)) while True: try: data = bytearray(self.request.recv(LMCPFactory.HEADER_SIZE)) if(len(data) >= LMCPFactory.HEADER_SIZE): print("header size: %d" % (len(data),) ) size = LMCPFactory.getSize(data) print("object size: %d" % (size,)) data.extend(bytearray(self.request.recv(size+4))) # compensate for checksum print("%d bytes received" % (len(data),)) recv_obj = self.factory.getObject(data) print("%s received" % recv_obj.__class__) if recv_obj != None: print("Printing object XML...") print(recv_obj.toXMLStr("")) else: print("Invalid object received.") except socket.error: self.stop = True self.request.close()
def handle(self): self.factory = LMCPFactory.LMCPFactory() print "Client address: %s" % (self.client_address, ) while True: try: data = [self.request.recv(LMCPFactory.HEADER_SIZE)] print "header size: %d" % (len(data[0]), ) size = LMCPFactory.getSize(data[0]) print "object size: %d" % (size, ) data.append(self.request.recv(size + 4)) # compensate for checksum data_str = "".join(data) print "%d bytes received" % (len(data_str), ) recv_obj = self.factory.getObject(data_str) print "%s received" % recv_obj.__class__ if recv_obj != None: print "Printing object XML..." print recv_obj.toXMLStr("") else: print "Invalid object received." except socket.error, msg: print msg self.stop = True
def handle(self): self.factory = LMCPFactory.LMCPFactory() print("Client address: %s" % (self.client_address, )) while True: try: data = bytearray(self.request.recv(LMCPFactory.HEADER_SIZE)) if (len(data) >= LMCPFactory.HEADER_SIZE): print("header size: %d" % (len(data), )) size = LMCPFactory.getSize(data) print("object size: %d" % (size, )) data.extend(bytearray( self.request.recv(size + 4))) # compensate for checksum print("%d bytes received" % (len(data), )) recv_obj = self.factory.getObject(data) print("%s received" % recv_obj.__class__) if recv_obj != None: print("Printing object XML...") print(recv_obj.toXMLStr("")) else: print("Invalid object received.") except socket.error: self.stop = True self.request.close()