예제 #1
0
파일: service.py 프로젝트: nondejus/trinity
 def __init__(self, headerdb: BaseAsyncHeaderDB,
              peer_pool: LESPeerPool) -> None:
     PeerSubscriber.__init__(self)
     self.logger = get_logger('trinity.sync.light.LightPeerChain')
     self.headerdb = headerdb
     self.peer_pool = peer_pool
     self._pending_replies = weakref.WeakValueDictionary()
예제 #2
0
 def __init__(self,
              headerdb: BaseAsyncHeaderDB,
              peer_pool: LESPeerPool,
              token: CancelToken = None) -> None:
     PeerSubscriber.__init__(self)
     BaseService.__init__(self, token)
     self.headerdb = headerdb
     self.peer_pool = peer_pool
     self._pending_replies = weakref.WeakValueDictionary()
예제 #3
0
 def __init__(self,
              headerdb: BaseAsyncHeaderDB,
              peer_pool: LESPeerPool,
              token: CancelToken = None) -> None:
     PeerSubscriber.__init__(self)
     BaseService.__init__(self, token)
     self.headerdb = headerdb
     self.peer_pool = peer_pool
     self._pending_replies: Dict[int, Callable[[Payload], None]] = {}
예제 #4
0
 def subscribe(self, subscriber: PeerSubscriber) -> None:
     self._subscribers.append(subscriber)
     for peer in self.connected_nodes.values():
         subscriber.register_peer(peer)
         peer.add_subscriber(subscriber)