mirror of
https://github.com/tendermint/tendermint.git
synced 2026-01-07 13:55:17 +00:00
p2p: transport should be captive resposibility of router (#7160)
The main (and minor) win of this PR is that the transport is fully the responsibility of the router and the node doesn't need to be responsible for its lifecylce.
This commit is contained in:
@@ -486,23 +486,32 @@ func createPeerManager(
|
||||
}
|
||||
|
||||
func createRouter(
|
||||
p2pLogger log.Logger,
|
||||
logger log.Logger,
|
||||
p2pMetrics *p2p.Metrics,
|
||||
nodeInfo types.NodeInfo,
|
||||
privKey crypto.PrivKey,
|
||||
nodeKey types.NodeKey,
|
||||
peerManager *p2p.PeerManager,
|
||||
transport p2p.Transport,
|
||||
options p2p.RouterOptions,
|
||||
conf *config.Config,
|
||||
proxyApp proxy.AppConns,
|
||||
) (*p2p.Router, error) {
|
||||
|
||||
p2pLogger := logger.With("module", "p2p")
|
||||
transport := createTransport(p2pLogger, conf)
|
||||
|
||||
ep, err := p2p.NewEndpoint(nodeKey.ID.AddressString(conf.P2P.ListenAddress))
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return p2p.NewRouter(
|
||||
p2pLogger,
|
||||
p2pMetrics,
|
||||
nodeInfo,
|
||||
privKey,
|
||||
nodeKey.PrivKey,
|
||||
peerManager,
|
||||
[]p2p.Transport{transport},
|
||||
options,
|
||||
[]p2p.Endpoint{ep},
|
||||
getRouterConfig(conf, proxyApp),
|
||||
)
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user