Externalized all peers selection and handling (#468)

Moved handling to the peer map out of the p2p server and into
its own struct. Allowed factoring code from the net adapter and
simplification of some interactions. Also removes the need for
the adapter to reference the p2p server or peers.

Fixes #430, #453 and #456
This commit is contained in:
Ignotus Peverell
2017-12-12 16:40:26 +00:00
committed by Simon B
parent 4a03b90190
commit e50703d79e
12 changed files with 573 additions and 500 deletions
+3 -3
View File
@@ -486,13 +486,13 @@ let _ = thread::Builder::new()
tx_pool: tx_pool.clone(),
};
let peers_all_handler = PeersAllHandler {
p2p_server: p2p_server.clone(),
peers: peers.clone(),
};
let peers_connected_handler = PeersConnectedHandler {
p2p_server: p2p_server.clone(),
peers: peers.clone(),
};
let peer_handler = PeerHandler {
p2p_server: p2p_server.clone(),
peers: peers.clone(),
};
let route_list = vec!(