示例#1
0
 def listen_to_client(self, client, address):
     client_name = client.recv(BUFF_SIZE)
     data_base = DataBase(self.key)
     if not data_base.is_exist("Clients", client_name):
         data_base.add_row_to_table("Clients", [client_name, address[0], address[1]])
         print "Client " + client_name + " is connected"
     else:
         print "client " + client_name + " is connected again"
     while True:
         try:
             data = client.recv(BUFF_SIZE)
             print data
             if data:
                 if "#" in data:
                     data_list = self.unpack_command(data)
                     print data_list
                     answer = self.handle_command(data_list)
                     print answer
                     if type(answer) is list:
                         print "list"
                         packets = answer[1]
                         client.send(str(answer[0]))
                         for x in range(answer[0]):
                             client.send(packets[x])
                     else:
                         client.send(answer)
                 else:
                     pass
             else:
                 print 'Client disconnected'
         except:
             print "Client " + client_name + " has been disconnected"
             client.close()
             return False
示例#2
0
 def add_process(self, data):
     data_base = DataBase(self.key)
     print data[3]
     if not data_base.is_process_exist(data[3], data[1]):
         #                                                                                  client name, process name, process signature, classification
         data_base.add_row_to_table("Classification", [data_base.classification_id_counter, data[3],     data[1],      str(data[2]),      int(data[0])])
         return "Process " + data[1] + " added to client " + data[3] + " with classification " + data[0]
     return "Process already exists"