本文整理汇总了Python中Search.find_hitpeer方法的典型用法代码示例。如果您正苦于以下问题:Python Search.find_hitpeer方法的具体用法?Python Search.find_hitpeer怎么用?Python Search.find_hitpeer使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Search
的用法示例。
在下文中一共展示了Search.find_hitpeer方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: run
# 需要导入模块: import Search [as 别名]
# 或者: from Search import find_hitpeer [as 别名]
def run(self):
# Creazione socket
s = sfunc.create_socket_server(func.roll_the_dice(self.host), self.port)
if s is None:
tfunc.write_daemon_text(self.name, self.host, 'Error: Daemon could not open socket in upload.')
else:
while 1:
conn, addr = s.accept()
ricevutoByte = conn.recv(const.LENGTH_PACK)
if not ricevutoByte:
tfunc.write_daemon_error(self.name, addr[0], "Pacchetto errato")
# Chiusura del demone
elif (str(ricevutoByte[0:4], "ascii") == pack.CODE_CLOSE):
try:
tfunc.write_daemon_success(self.name, addr[0], "Chiusura del demone Tracker")
except:
continue
finally:
break
# Test corretto avvio demone
elif (str(ricevutoByte[0:4], "ascii") == pack.CODE_CONFIRM):
tfunc.write_daemon_success(self.name, addr[0], "Avvio demone Tracker")
# Reale funzionamento
else:
if str(ricevutoByte[0:4], "ascii") == pack.CODE_LOGIN: ### LOGIN OK
pk = logi.reconnect_user(ricevutoByte[4:59], ricevutoByte[59:], self.listUsers, self.name, addr)
conn.sendall(pk)
elif str(ricevutoByte[0:4], "ascii") == pack.CODE_ADDFILE: ### ADD FILE OK
# Controllo presenza user
if ricevutoByte[4:20] in self.listUsers:
pk = add.add_file_to_list(ricevutoByte[36:136], ricevutoByte[20:30], ricevutoByte[30:36], ricevutoByte[4:20], ricevutoByte[-32:], self.listFile, self.name, addr)
conn.sendall(pk)
else:
tfunc.write_daemon_error(self.name, addr[0], "ADD FILE - User not logged")
elif(str(ricevutoByte[0:4], "ascii") == pack.CODE_LOOK): ### LOOK
# Controllo presenza user
if ricevutoByte[4:20] in self.listUsers:
pk = src.search_in_list_file(self.listFile, ricevutoByte[4:20], ricevutoByte[20:], self.name, addr)
conn.sendall(pk)
else:
tfunc.write_daemon_error(self.name, addr[0], "SEARCH FILE - User not logged")
elif(str(ricevutoByte[0:4], "ascii") == pack.CODE_FIND_PART): ### SEARCH PART
# Controllo presenza user
if ricevutoByte[4:20] in self.listUsers:
pk = src.find_hitpeer(self.listFile, self.listUsers, ricevutoByte[4:20], ricevutoByte[20:], self.name, addr)
conn.sendall(pk)
else:
tfunc.write_daemon_error(self.name, addr[0], "REQUEST FILEPART - User not logged")
elif str(ricevutoByte[0:4], "ascii") == pack.CODE_UPDATE_PART: ### UPDATE MEMORY OK
# Controllo presenza user
if ricevutoByte[4:20] in self.listUsers:
pk = fs.update_memory(ricevutoByte[4:20], ricevutoByte[20:52], ricevutoByte[52:], self.listFile, self.name, addr)
conn.sendall(pk)
else:
tfunc.write_daemon_error(self.name, addr[0], "ADD FILE - User not logged")
elif str(ricevutoByte[0:4], "ascii") == pack.CODE_LOGOUT: ### LOGOUT OK
if ricevutoByte[4:20] in self.listUsers:
pk = logo.try_logout(ricevutoByte[4:], self.listFile, self.listUsers, self.name, addr)
conn.sendall(pk)
else:
tfunc.write_daemon_error(self.name, addr[0], "User not logged")
else:
tfunc.write_daemon_error(self.name, addr[0], "Ricevuto pacchetto sbagliato: " + str(ricevutoByte, "ascii"))
s.close()