mirror of
https://github.com/yzernik/squeaknode.git
synced 2026-08-15 12:50:47 +02:00
Removed peer connection class (#641)
This commit is contained in:
parent
6bef275057
commit
c73b681422
3 changed files with 23 additions and 48 deletions
|
|
@ -39,17 +39,11 @@ class NetworkSync(ABC):
|
|||
# TODO: sleep for timeout and then call self._stop()
|
||||
|
||||
def _sync_peer(self, peer):
|
||||
# with PeerConnection(peer) as peer_connection:
|
||||
# self.sync_peer(peer_connection)
|
||||
with PeerSyncTask(
|
||||
self.squeak_controller,
|
||||
peer,
|
||||
self.stopped,
|
||||
).open_peer_sync_task() as peer_sync_task:
|
||||
# if peer.uploading:
|
||||
# peer_sync_task.upload(min_block, max_block)
|
||||
# if peer.downloading:
|
||||
# peer_sync_task.download(min_block, max_block)
|
||||
).open_connection() as peer_sync_task:
|
||||
self.sync_peer(peer_sync_task)
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,28 +0,0 @@
|
|||
import logging
|
||||
import threading
|
||||
from contextlib import contextmanager
|
||||
|
||||
from squeaknode.network.peer_client import PeerClient
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
class PeerConnection:
|
||||
def __init__(self, peer):
|
||||
self.peer = peer
|
||||
self.peer_client = PeerClient(
|
||||
self.peer.host,
|
||||
self.peer.port,
|
||||
)
|
||||
self._stop_event = threading.Event()
|
||||
|
||||
@contextmanager
|
||||
def open_connection(self):
|
||||
with self.peer_client.open_stub():
|
||||
yield self
|
||||
|
||||
def stop(self):
|
||||
self._stop_event.set()
|
||||
|
||||
def stopped(self):
|
||||
return self._stop_event.is_set()
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
import logging
|
||||
from contextlib import contextmanager
|
||||
|
||||
from squeaknode.sync.peer_connection import PeerConnection
|
||||
from squeaknode.network.peer_client import PeerClient
|
||||
from squeaknode.sync.util import parse_buy_offer
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
|
@ -17,21 +17,30 @@ class PeerSyncTask:
|
|||
):
|
||||
self.squeak_controller = squeak_controller
|
||||
self.peer = peer
|
||||
self.peer_connection = None
|
||||
# self.peer_connection = None
|
||||
self.peer_client = PeerClient(
|
||||
self.peer.host,
|
||||
self.peer.port,
|
||||
)
|
||||
self.stopped = stopped
|
||||
|
||||
@contextmanager
|
||||
def open_peer_sync_task(self):
|
||||
with PeerConnection(self.peer).open_connection() as peer_connection:
|
||||
self.peer_connection = peer_connection
|
||||
yield self
|
||||
self.peer_connection = None
|
||||
# @contextmanager
|
||||
# def open_peer_sync_task(self):
|
||||
# with PeerConnection(self.peer).open_connection() as peer_connection:
|
||||
# self.peer_connection = peer_connection
|
||||
# yield self
|
||||
# self.peer_connection = None
|
||||
|
||||
@property
|
||||
def peer_client(self):
|
||||
if self.peer_connection is None:
|
||||
return None
|
||||
return self.peer_connection.peer_client
|
||||
@contextmanager
|
||||
def open_connection(self):
|
||||
with self.peer_client.open_stub():
|
||||
yield self
|
||||
|
||||
# @property
|
||||
# def peer_client(self):
|
||||
# if self.peer_connection is None:
|
||||
# return None
|
||||
# return self.peer_connection.peer_client
|
||||
|
||||
def download(
|
||||
self,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue