refactor add_router in swarm

This commit is contained in:
zixuanzh 2019-04-28 15:00:43 -04:00
parent 21a99287b1
commit 8ab387ac05
2 changed files with 8 additions and 7 deletions

View File

@ -52,8 +52,8 @@ def initialize_default_kademlia_router(
def initialize_default_swarm(
id_opt=None, transport_opt=None,
muxer_opt=None, sec_opt=None, peerstore_opt=None):
id_opt=None, transport_opt=None, muxer_opt=None,
sec_opt=None, peerstore_opt=None, disc_opt=None):
"""
initialize swarm when no swarm is passed in
:param id_opt: optional id for host
@ -79,7 +79,8 @@ def initialize_default_swarm(
upgrader = TransportUpgrader(sec, muxer)
peerstore = peerstore_opt or PeerStore()
swarm_opt = Swarm(id_opt, peerstore, upgrader, transport)
swarm_opt = Swarm(id_opt, peerstore,\
upgrader, transport, disc_opt)
return swarm_opt
@ -106,7 +107,7 @@ async def new_node(
swarm_opt = initialize_default_swarm(
id_opt=id_opt, transport_opt=transport_opt,
muxer_opt=muxer_opt, sec_opt=sec_opt,
peerstore_opt=peerstore_opt)
peerstore_opt=peerstore_opt, disc_opt=disc_opt)
swarm_opt.add_router(disc_opt)

View File

@ -10,17 +10,17 @@ from .stream.net_stream import NetStream
from .connection.raw_connection import RawConnection
class Swarm(INetwork):
# pylint: disable=too-many-instance-attributes, cell-var-from-loop
# pylint: disable=too-many-instance-attributes,cell-var-from-loop,too-many-arguments
def __init__(self, peer_id, peerstore, upgrader, transport):
def __init__(self, peer_id, peerstore, upgrader, transport, router):
self.self_id = peer_id
self.peerstore = peerstore
self.upgrader = upgrader
self.transport = transport
self.router = router
self.connections = dict()
self.listeners = dict()
self.stream_handlers = dict()
self.router = None
# Protocol muxing
self.multiselect = Multiselect()