diff --git a/src/cutecoin/core/net/node.py b/src/cutecoin/core/net/node.py index 3c7ef40afe9b429d60937c15e4d41df55032e291..60cb7235b88edd6f4a674f8c85120d3ed9e75949 100644 --- a/src/cutecoin/core/net/node.py +++ b/src/cutecoin/core/net/node.py @@ -16,9 +16,9 @@ from PyQt5.QtCore import QObject, pyqtSignal class Node(QObject): - ''' + """ classdocs - ''' + """ ONLINE = 1 OFFLINE = 2 @@ -27,10 +27,17 @@ class Node(QObject): changed = pyqtSignal() - def __init__(self, currency, endpoints, pubkey, block, state): - ''' + def __init__(self, currency: str, endpoints: list, pubkey: str, block: int, state: int): + """ Constructor - ''' + :param str currency: Name of the currency + :param list endpoints: List of BMAEndpoint + :param str pubkey: Public key of the node owner + :param int block: Last block number + :param int state: State of the node + :return: + """ + super().__init__() self._endpoints = endpoints self._pubkey = pubkey @@ -91,7 +98,7 @@ class Node(QObject): return self._pubkey @property - def endpoint(self): + def endpoint(self) -> BMAEndpoint: return next((e for e in self._endpoints if type(e) is BMAEndpoint)) @property @@ -193,3 +200,7 @@ class Node(QObject): time.sleep(interval) except RequestException as e: self._state = Node.OFFLINE + + def __str__(self): + return ','.join([str(self.pubkey), str(self.endpoint.server), str(self.endpoint.port), str(self.block), + str(self.currency), str(self.state), str(self.neighbours)]) diff --git a/src/cutecoin/models/network.py b/src/cutecoin/models/network.py index 946d1302e3f58d789a446f23f3ff117d11164f33..63d725fa89131a2f451f2a1e23f4169889a6988e 100644 --- a/src/cutecoin/models/network.py +++ b/src/cutecoin/models/network.py @@ -94,7 +94,12 @@ class NetworkTableModel(QAbstractTableModel): return self.column_types[section] - def data_node(self, node): + def data_node(self, node: Node) -> tuple: + """ + Return node data tuple + :param ..core.net.node.Node node: Network node + :return: + """ try: person = Person.lookup(node.pubkey, self.community) uid = person.name @@ -112,7 +117,7 @@ class NetworkTableModel(QAbstractTableModel): address = node.endpoint.ipv6 port = node.endpoint.port - return (node.pubkey, is_member, uid, address, port, node.block) + return node.pubkey, is_member, uid, address, port, node.block def data(self, index, role): row = index.row()