mina_node_testing/service/
rpc_service.rs1use mina_core::requests::RpcId;
2use mina_node::{
3 p2p::connection::P2pConnectionResponse, rpc::RpcMessageProgressResponse,
4 rpc_effectful::RespondError, service::RpcService, State,
5};
6
7macro_rules! to_real {
8 ($name:ident, $response:ty $(,)?) => {
9 fn $name(&mut self, rpc_id: RpcId, response: $response) -> Result<(), RespondError> {
10 self.real.$name(rpc_id, response)
11 }
12 };
13}
14
15impl RpcService for super::NodeTestingService {
16 to_real!(respond_state_get, (&State, Option<&str>));
17 to_real!(respond_status_get, mina_node::rpc::RpcStatusGetResponse);
18 to_real!(
19 respond_heartbeat_get,
20 mina_node::rpc::RpcHeartbeatGetResponse
21 );
22 to_real!(
23 respond_sync_stats_get,
24 mina_node::rpc::RpcSyncStatsGetResponse
25 );
26 to_real!(
27 respond_block_producer_stats_get,
28 mina_node::rpc::RpcBlockProducerStatsGetResponse
29 );
30
31 to_real!(
32 respond_action_stats_get,
33 mina_node::rpc::RpcActionStatsGetResponse,
34 );
35 to_real!(
36 respond_message_progress_stats_get,
37 RpcMessageProgressResponse
38 );
39 to_real!(respond_peers_get, mina_node::rpc::RpcPeersGetResponse,);
40 to_real!(
41 respond_p2p_connection_outgoing,
42 mina_node::rpc::RpcP2pConnectionOutgoingResponse,
43 );
44 to_real!(
45 respond_p2p_connection_incoming_answer,
46 P2pConnectionResponse,
47 );
48
49 to_real!(respond_p2p_connection_incoming, Result<(), String>,);
50 to_real!(
51 respond_scan_state_summary_get,
52 mina_node::rpc::RpcScanStateSummaryGetResponse,
53 );
54 to_real!(
55 respond_snark_pool_get,
56 mina_node::rpc::RpcSnarkPoolGetResponse,
57 );
58 to_real!(
59 respond_snark_pool_job_get,
60 mina_node::rpc::RpcSnarkPoolJobGetResponse,
61 );
62 to_real!(
63 respond_snark_pool_completed_jobs_get,
64 mina_node::rpc::RpcSnarkPoolCompletedJobsResponse,
65 );
66 to_real!(
67 respond_snark_pool_pending_jobs_get,
68 mina_node::rpc::RpcSnarkPoolPendingJobsGetResponse
69 );
70 to_real!(
71 respond_snarker_job_commit,
72 mina_node::rpc::RpcSnarkerJobCommitResponse,
73 );
74 to_real!(
75 respond_snarker_job_spec,
76 mina_node::rpc::RpcSnarkerJobSpecResponse,
77 );
78 to_real!(
79 respond_snarker_workers,
80 mina_node::rpc::RpcSnarkerWorkersResponse,
81 );
82 to_real!(
83 respond_snarker_config_get,
84 mina_node::rpc::RpcSnarkerConfigGetResponse,
85 );
86 to_real!(respond_health_check, mina_node::rpc::RpcHealthCheckResponse,);
87 to_real!(
88 respond_readiness_check,
89 mina_node::rpc::RpcReadinessCheckResponse,
90 );
91 to_real!(
92 respond_discovery_routing_table,
93 mina_node::rpc::RpcDiscoveryRoutingTableResponse
94 );
95 to_real!(
96 respond_discovery_bootstrap_stats,
97 mina_node::rpc::RpcDiscoveryBoostrapStatsResponse
98 );
99 to_real!(
100 respond_transaction_pool,
101 mina_node::rpc::RpcTransactionPoolResponse
102 );
103 to_real!(
104 respond_ledger_slim_accounts,
105 mina_node::rpc::RpcLedgerSlimAccountsResponse
106 );
107 to_real!(
108 respond_ledger_accounts,
109 mina_node::rpc::RpcLedgerAccountsResponse
110 );
111 to_real!(
112 respond_transaction_inject,
113 mina_node::rpc::RpcTransactionInjectResponse
114 );
115 to_real!(
116 respond_transition_frontier_commands,
117 mina_node::rpc::RpcTransitionFrontierUserCommandsResponse,
118 );
119 to_real!(respond_best_chain, mina_node::rpc::RpcBestChainResponse,);
120 to_real!(
121 respond_consensus_constants,
122 mina_node::rpc::RpcConsensusConstantsGetResponse,
123 );
124 to_real!(
125 respond_transaction_status,
126 mina_node::rpc::RpcTransactionStatusGetResponse,
127 );
128 to_real!(respond_block_get, mina_node::rpc::RpcGetBlockResponse,);
129 to_real!(
130 respond_pooled_user_commands,
131 mina_node::rpc::RpcPooledUserCommandsResponse,
132 );
133 to_real!(
134 respond_pooled_zkapp_commands,
135 mina_node::rpc::RpcPooledZkappCommandsResponse,
136 );
137 to_real!(
138 respond_genesis_block,
139 mina_node::rpc::RpcGenesisBlockResponse,
140 );
141 to_real!(
142 respond_consensus_time_get,
143 mina_node::rpc::RpcConsensusTimeGetResponse,
144 );
145 to_real!(
146 respond_ledger_status_get,
147 mina_node::rpc::RpcLedgerStatusGetResponse,
148 );
149 to_real!(
150 respond_ledger_account_delegators_get,
151 mina_node::rpc::RpcLedgerAccountDelegatorsGetResponse,
152 );
153}