added transaction validation, close connection, and beautified inc msgs

This commit is contained in:
Spekulaas 2024-01-05 10:26:22 +01:00
parent 3804a7448b
commit 3b2d4f7fbf

View File

@ -10,6 +10,10 @@ import socket
import pickle import pickle
import select import select
import os
from dotenv import load_dotenv
load_dotenv()
BUFFER_SIZE = 1024 BUFFER_SIZE = 1024
def newServerSocket(ip_addr, port): def newServerSocket(ip_addr, port):
@ -54,12 +58,21 @@ def connection(ip, port, db):
continue continue
if type(item) == Tx: if type(item) == Tx:
print()
print(f"{utilityHelper.blinkMessage('Received transaction from peer')}") print(f"{utilityHelper.blinkMessage('Received transaction from peer')}")
print(">>: ")
if item.is_valid():
utilityHelper.addFile("../data/transaction_pool.dat", item) utilityHelper.addFile("../data/transaction_pool.dat", item)
continue continue
print(f"{utilityHelper.errorMessage('Received transaction is not valid')}")
if type(item) == TxBlock: if type(item) == TxBlock:
print()
print(f"{utilityHelper.blinkMessage('Received block from peer')}") print(f"{utilityHelper.blinkMessage('Received block from peer')}")
print(">>: ")
valid, exit = blockHelper.socketBlock(item) valid, exit = blockHelper.socketBlock(item)
if not valid: if not valid:
@ -67,8 +80,8 @@ def connection(ip, port, db):
continue continue
if exit: if exit:
print(f"{utilityHelper.errorMessage('Closing connection and application')}") print()
exit() utilityHelper.closeConnection(os.getenv("PEER_IP"), int(os.getenv("PEER_PORT")))
continue continue
continue continue
@ -77,12 +90,16 @@ def connection(ip, port, db):
match item[0]: match item[0]:
case "USER CREATE": case "USER CREATE":
print()
print(f"{utilityHelper.blinkMessage('Received user from peer')}") print(f"{utilityHelper.blinkMessage('Received user from peer')}")
print(">>: ")
db.createUser(item[1], item[2], item[3], item[4]) db.createUser(item[1], item[2], item[3], item[4])
continue continue
case "USER DELETE": case "USER DELETE":
print()
print(f"{utilityHelper.blinkMessage('Peer deleted user')}") print(f"{utilityHelper.blinkMessage('Peer deleted user')}")
print(">>: ")
db.deleteUser(item[1]) db.deleteUser(item[1])
continue continue
@ -105,5 +122,5 @@ def connection(ip, port, db):
if type(item) == str: if type(item) == str:
match item: match item:
case "EXIT": case "EXIT":
exit() utilityHelper.close()
continue continue