|
14 | 14 | limitations under the License.
|
15 | 15 | */
|
16 | 16 |
|
17 |
| -#include "backend_kv_server.hpp" |
| 17 | +#include "backend_server.hpp" |
18 | 18 |
|
19 | 19 | #include <silkworm/infra/concurrency/task.hpp>
|
20 | 20 |
|
21 | 21 | #include <silkworm/infra/common/log.hpp>
|
22 | 22 | #include <silkworm/node/remote/ethbackend/grpc/server/backend_calls.hpp>
|
23 |
| -#include <silkworm/node/remote/kv/grpc/server/kv_calls.hpp> |
24 | 23 |
|
25 | 24 | namespace silkworm::rpc {
|
26 | 25 |
|
27 |
| -BackEndKvServer::BackEndKvServer(const ServerSettings& settings, const EthereumBackEnd& backend) |
| 26 | +BackEndServer::BackEndServer(const ServerSettings& settings, const EthereumBackEnd& backend) |
28 | 27 | : Server(settings), backend_(backend) {
|
29 | 28 | setup_backend_calls(backend);
|
30 |
| - setup_kv_calls(); |
31 |
| - SILK_INFO << "BackEndKvServer created listening on: " << settings.address_uri; |
| 29 | + SILK_INFO << "BackEndServer created listening on: " << settings.address_uri; |
32 | 30 | }
|
33 | 31 |
|
34 | 32 | // Register the gRPC services: they must exist for the lifetime of the server built by builder.
|
35 |
| -void BackEndKvServer::register_async_services(grpc::ServerBuilder& builder) { |
| 33 | +void BackEndServer::register_async_services(grpc::ServerBuilder& builder) { |
36 | 34 | builder.RegisterService(&backend_async_service_);
|
37 |
| - builder.RegisterService(&kv_async_service_); |
38 | 35 | }
|
39 | 36 |
|
40 |
| -void BackEndKvServer::setup_backend_calls(const EthereumBackEnd& backend) { |
| 37 | +void BackEndServer::setup_backend_calls(const EthereumBackEnd& backend) { |
41 | 38 | EtherbaseCall::fill_predefined_reply(backend);
|
42 | 39 | NetVersionCall::fill_predefined_reply(backend);
|
43 | 40 | BackEndVersionCall::fill_predefined_reply();
|
44 | 41 | ProtocolVersionCall::fill_predefined_reply();
|
45 | 42 | ClientVersionCall::fill_predefined_reply(backend);
|
46 | 43 | }
|
47 | 44 |
|
48 |
| -void BackEndKvServer::register_backend_request_calls(agrpc::GrpcContext* grpc_context) { |
| 45 | +void BackEndServer::register_backend_request_calls(agrpc::GrpcContext* grpc_context) { |
49 | 46 | SILK_TRACE << "BackEndService::register_backend_request_calls START";
|
50 | 47 | auto service = &backend_async_service_;
|
51 | 48 | auto& backend = backend_;
|
@@ -86,65 +83,15 @@ void BackEndKvServer::register_backend_request_calls(agrpc::GrpcContext* grpc_co
|
86 | 83 | SILK_TRACE << "BackEndService::register_backend_request_calls END";
|
87 | 84 | }
|
88 | 85 |
|
89 |
| -void BackEndKvServer::setup_kv_calls() { |
90 |
| - KvVersionCall::fill_predefined_reply(); |
91 |
| -} |
92 |
| - |
93 |
| -void BackEndKvServer::register_kv_request_calls(agrpc::GrpcContext* grpc_context) { |
94 |
| - SILK_TRACE << "BackEndKvServer::register_kv_request_calls START"; |
95 |
| - auto service = &kv_async_service_; |
96 |
| - auto& backend = backend_; |
97 |
| - |
98 |
| - // Register one requested call repeatedly for each RPC: asio-grpc will take care of re-registration on any incoming call |
99 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestVersion, |
100 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
101 |
| - co_await KvVersionCall{std::forward<decltype(args)>(args)...}(backend); |
102 |
| - }); |
103 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestTx, |
104 |
| - [&backend, grpc_context](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
105 |
| - co_await TxCall{*grpc_context, std::forward<decltype(args)>(args)...}(backend); |
106 |
| - }); |
107 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestStateChanges, |
108 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
109 |
| - co_await StateChangesCall{std::forward<decltype(args)>(args)...}(backend); |
110 |
| - }); |
111 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestSnapshots, |
112 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
113 |
| - co_await SnapshotsCall{std::forward<decltype(args)>(args)...}(backend); |
114 |
| - }); |
115 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestDomainGet, |
116 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
117 |
| - co_await DomainGetCall{std::forward<decltype(args)>(args)...}(backend); |
118 |
| - }); |
119 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestHistoryGet, |
120 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
121 |
| - co_await HistoryGetCall{std::forward<decltype(args)>(args)...}(backend); |
122 |
| - }); |
123 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestIndexRange, |
124 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
125 |
| - co_await IndexRangeCall{std::forward<decltype(args)>(args)...}(backend); |
126 |
| - }); |
127 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestHistoryRange, |
128 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
129 |
| - co_await HistoryRangeCall{std::forward<decltype(args)>(args)...}(backend); |
130 |
| - }); |
131 |
| - request_repeatedly(*grpc_context, service, &remote::KV::AsyncService::RequestDomainRange, |
132 |
| - [&backend](auto&&... args) -> Task<void> { // NOLINT(cppcoreguidelines-avoid-capturing-lambda-coroutines) |
133 |
| - co_await DomainRangeCall{std::forward<decltype(args)>(args)...}(backend); |
134 |
| - }); |
135 |
| - SILK_TRACE << "BackEndKvServer::register_kv_request_calls END"; |
136 |
| -} |
137 |
| - |
138 | 86 | //! Start server-side RPC requests as required by gRPC async model: one RPC per type is requested in advance.
|
139 |
| -void BackEndKvServer::register_request_calls() { |
| 87 | +void BackEndServer::register_request_calls() { |
140 | 88 | // Start all server-side RPC requests for each available server context
|
141 | 89 | for (std::size_t i = 0; i < num_contexts(); i++) {
|
142 | 90 | const auto& context = next_context();
|
143 | 91 | auto grpc_context = context.server_grpc_context();
|
144 | 92 |
|
145 | 93 | // Register initial requested calls for ETHBACKEND and KV services
|
146 | 94 | register_backend_request_calls(grpc_context);
|
147 |
| - register_kv_request_calls(grpc_context); |
148 | 95 | }
|
149 | 96 | }
|
150 | 97 |
|
|
0 commit comments