|
1 | | -use super::RpcEffectfulAction; |
| 1 | +use super::{super::rpc, RpcEffectfulAction}; |
2 | 2 | use crate::{ |
3 | 3 | block_producer::BlockProducerWonSlot, |
4 | 4 | external_snark_worker::available_job_to_snark_worker_spec, |
5 | 5 | p2p::connection::P2pConnectionResponse, |
6 | 6 | p2p_ready, |
7 | 7 | rpc::{ |
8 | 8 | AccountQuery, AccountSlim, ActionStatsQuery, ActionStatsResponse, CurrentMessageProgress, |
9 | | - LedgerSyncProgress, MessagesStats, PeerConnectionStatus, RpcAction, RpcBlockProducerStats, |
| 9 | + LedgerSyncProgress, MessagesStats, RpcAction, RpcBlockProducerStats, |
10 | 10 | RpcMessageProgressResponse, RpcNodeStatus, RpcNodeStatusTransactionPool, |
11 | 11 | RpcNodeStatusTransitionFrontier, RpcNodeStatusTransitionFrontierBlockSummary, |
12 | | - RpcNodeStatusTransitionFrontierSync, RpcPeerInfo, RpcRequestExtraData, RpcScanStateSummary, |
| 12 | + RpcNodeStatusTransitionFrontierSync, RpcRequestExtraData, RpcScanStateSummary, |
13 | 13 | RpcScanStateSummaryBlock, RpcScanStateSummaryBlockTransaction, |
14 | 14 | RpcScanStateSummaryBlockTransactionKind, RpcScanStateSummaryScanStateJob, |
15 | 15 | RpcSnarkPoolJobFull, RpcSnarkPoolJobSnarkWork, RpcSnarkPoolJobSummary, |
@@ -72,7 +72,7 @@ pub fn rpc_effects<S: Service>(store: &mut Store<S>, action: ActionWithMeta<RpcE |
72 | 72 | target: state.transition_frontier.sync.best_tip().map(block_summary), |
73 | 73 | }, |
74 | 74 | }, |
75 | | - peers: collect_rpc_peers_info(state), |
| 75 | + peers: rpc::collect_rpc_peers_info(state), |
76 | 76 | snark_pool: state.snark_pool.jobs_iter().fold( |
77 | 77 | Default::default(), |
78 | 78 | |mut acc, job| { |
@@ -709,43 +709,3 @@ pub fn rpc_effects<S: Service>(store: &mut Store<S>, action: ActionWithMeta<RpcE |
709 | 709 | } |
710 | 710 | } |
711 | 711 | } |
712 | | - |
713 | | -fn collect_rpc_peers_info(state: &crate::State) -> Vec<RpcPeerInfo> { |
714 | | - state.p2p.ready().map_or_else(Vec::new, |p2p| { |
715 | | - p2p.peers |
716 | | - .iter() |
717 | | - .map(|(peer_id, state)| { |
718 | | - let best_tip = state.status.as_ready().and_then(|r| r.best_tip.as_ref()); |
719 | | - let (connection_status, time) = match &state.status { |
720 | | - p2p::P2pPeerStatus::Connecting(c) => match c { |
721 | | - p2p::connection::P2pConnectionState::Outgoing(o) => { |
722 | | - (PeerConnectionStatus::Connecting, o.time().into()) |
723 | | - } |
724 | | - p2p::connection::P2pConnectionState::Incoming(i) => { |
725 | | - (PeerConnectionStatus::Connecting, i.time().into()) |
726 | | - } |
727 | | - }, |
728 | | - p2p::P2pPeerStatus::Disconnecting { time } => { |
729 | | - (PeerConnectionStatus::Disconnected, (*time).into()) |
730 | | - } |
731 | | - p2p::P2pPeerStatus::Disconnected { time } => { |
732 | | - (PeerConnectionStatus::Disconnected, (*time).into()) |
733 | | - } |
734 | | - p2p::P2pPeerStatus::Ready(r) => { |
735 | | - (PeerConnectionStatus::Connected, r.connected_since.into()) |
736 | | - } |
737 | | - }; |
738 | | - RpcPeerInfo { |
739 | | - peer_id: *peer_id, |
740 | | - connection_status, |
741 | | - address: state.dial_opts.as_ref().map(|opts| opts.to_string()), |
742 | | - best_tip: best_tip.map(|bt| bt.hash.clone()), |
743 | | - best_tip_height: best_tip.map(|bt| bt.height()), |
744 | | - best_tip_global_slot: best_tip.map(|bt| bt.global_slot_since_genesis()), |
745 | | - best_tip_timestamp: best_tip.map(|bt| bt.timestamp().into()), |
746 | | - time, |
747 | | - } |
748 | | - }) |
749 | | - .collect() |
750 | | - }) |
751 | | -} |
0 commit comments