本文整理汇总了Python中Function.success方法的典型用法代码示例。如果您正苦于以下问题:Python Function.success方法的具体用法?Python Function.success怎么用?Python Function.success使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Function
的用法示例。
在下文中一共展示了Function.success方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: search
# 需要导入模块: import Function [as 别名]
# 或者: from Function import success [as 别名]
def search(sessionID, query, SN, SN_host, host, listPkt):
ricevutoByteRam = b''
ricevutoByte = b''
pk = pack.request_search(sessionID, query)
s = func.create_socket_client(func.roll_the_dice(SN_host[0]), SN_host[1]);
if s is None:
func.error("Super nodo non attivo.")
update_network(host, SN, listPkt)
else:
s.sendall(pk)
ricevutoByte = s.recv(4 * const.LENGTH_PACK)
if str(ricevutoByte[0:4],"ascii") == const.CODE_ANSWER_SEARCH:
print(ricevutoByte)
nIdmd5 = int(ricevutoByte[4:7])
if(nIdmd5 != 0):
func.success("Ricerca completata.")
pointer = 7
id = 0
listFile = []
for j in range(0, nIdmd5):
md5 = ricevutoByte[pointer:pointer + 32]
nomeFile = ricevutoByte[pointer + 32:pointer + 132]
nCopy = int(ricevutoByte[pointer + 132:pointer + 135])
pointer = pointer + 135
for i in range(0, nCopy):
ip = ricevutoByte[pointer:pointer + 55]
port = ricevutoByte[pointer + 55:pointer + 60]
id = id + 1
pointer = pointer + 60
fixList = [id, md5, nomeFile, ip, port]
listFile.append(fixList)
print("\nScegli file da quelli disponibili (0 per uscire): \n")
print("FILE \t\tID\tIP\n")
lastFileName = b''
for row in listFile:
if lastFileName != row[2]:
nomeFile = func.reverse_format_string((str(row[2], "ascii").strip() + ":"), const.LENGTH_FORMAT, " ")
print(nomeFile + str(row[0]) + "\t" + str(row[3], "ascii"))
else:
print("\t\t\t" + str(row[0]) + "\t" + str(row[3], "ascii"))
lastFileName = row[2]
selectId = input("\nInserire il numero di file che vuoi scaricare (0 per uscire): ")
if(selectId != "0"):
for i in range (0, id):
if listFile[i][0] == int(selectId):
selectFile = listFile[i]
break
func.download(selectFile)
else:
func.error("Non sono presenti file con questa query nel nome: " + query)
s.close()
示例2: logout
# 需要导入模块: import Function [as 别名]
# 或者: from Function import success [as 别名]
def logout(ip, sessionID, SN, SN_host):
print ("\n>>> LOGOUT")
pk = pack.request_logout(sessionID)
s = func.create_socket_client(func.roll_the_dice(SN_host[0]), SN_host[1]);
if s is None:
func.error("Errore nel logout dal super nodo, vabbè")
else:
s.sendall(pk)
ricevutoByte = s.recv(const.LENGTH_PACK)
nDelete = ricevutoByte[4:]
func.success("Logout eseguito con successo dal super nodo, eliminati " + str(nDelete, "ascii") + " elementi")
s.close()
pk = pack.close()
s = func.create_socket_client(func.roll_the_dice(ip), const.PORT);
if s is None:
func.error("Errore nella chiusura del demone")
else:
s.sendall(pk)
s.close()
print ("Chiusura del peer eseguito con successo, arrivederci.\n\n")
if SN:
s = func.create_socket_client(func.roll_the_dice(ip), const.PORT_SN);
if s is None:
func.error("Errore nella chiusura del demone super nodo")
else:
s.sendall(pk)
s.close()
print ("Chiusura del supernodo eseguita con successo, arrivederci.\n\n")
示例3: update_network
# 需要导入模块: import Function [as 别名]
# 或者: from Function import success [as 别名]
def update_network(host, SN, listPkt):
func.warning("\nP2P >> CREATION NETWORK")
while True:
nGroup = input("Inserire il numero del gruppo: ")
nElement = input("Inserire il numero dell'elemento del gruppo: ")
nPort = input("Inserire il numero della porta: ")
Fhost = [("172.030." + func.format_string(nGroup, const.LENGTH_SECTION_IPV4, "0") +
"." + func.format_string(nElement, const.LENGTH_SECTION_IPV4, "0") +
"|fc00:0000:0000:0000:0000:0000:" + func.format_string(nGroup, const.LENGTH_SECTION_IPV6, "0") +
":" + func.format_string(nElement, const.LENGTH_SECTION_IPV6, "0")), nPort]
if SN:
pk = pack.request_sn(host, const.PORT_SN)
func.add_pktid(pk[4:20], listPkt, const.PORT_SN)
else:
pk = pack.request_sn(host, const.PORT)
func.add_pktid(pk[4:20], listPkt, const.PORT)
s = func.create_socket_client(func.roll_the_dice(Fhost[0]), Fhost[1]);
if s is None:
func.error("Errore nella scelta del primo nodo vicino, scegline un altro.")
else:
s.sendall(pk)
s.close()
break
# Caricamento
print("Loading...")
for i in range(0, int(const.MAX_TIME / 1000)):
print("|", end = "")
print("|||" * i + " " * ((int(const.MAX_TIME / 1000) * 3) - (i * 3)) + "|")
time.sleep(1)
print("|" + "|||" * int(const.MAX_TIME / 1000) + "|")
if SN:
func.success("NETWORK CREATED:")
for h in sn_network:
func.gtext(h[0] + " - " + h[1])
if SN:
SN_host = [host, const.PORT_SN]
else:
SN_host = func.choose_SN(sn_network)
return SN_host
示例4: search
# 需要导入模块: import Function [as 别名]
# 或者: from Function import success [as 别名]
def search(myHost, query, listNeighbor, listPkt):
pk = pack.query(myHost, query)
if len(listNeighbor) is 0:
func.error("Nessun vicino presente, crea prima una rete virtuale")
else:
func.add_pktid(pk[4:20], listPkt)
i = 0
for x in listNeighbor:
s = func.create_socket_client(func.roll_the_dice(x[0]), x[1]);
if s is None:
func.error("Peer non attivo: " + str(x[0], "ascii"))
else:
func.success("Peer attivo: " + str(x[0], "ascii"))
s.sendall(pk)
s.close()
i = i + 1
if i is 0:
func.error("Nessun peer vicino attivo")
else:
print("\nScegli file da quelli disponibili (0 per uscire): \n")
print("ID\tFILE\t\tIP\n")
f = False
while not f:
try:
print("\n")
choose = int(input())
if choose != 0:
if choose <= len(listResultQuery):
f = True
func.remove_pktid(pk, listPkt)
download(listResultQuery[choose - 1])
del listResultQuery[:]
else:
func.error("Spiacente, numero inserito non valido.")
else:
break
except ValueError:
func.error("Spiacente, inserisci un numero.")
func.remove_pktid(pk, listPkt)
del listResultQuery[:]