1pub mod query_service_client {
4 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
5 use tonic::codegen::*;
6 use tonic::codegen::http::Uri;
7 #[derive(Debug, Clone)]
10 pub struct QueryServiceClient<T> {
11 inner: tonic::client::Grpc<T>,
12 }
13 impl<T> QueryServiceClient<T>
14 where
15 T: tonic::client::GrpcService<tonic::body::BoxBody>,
16 T::Error: Into<StdError>,
17 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
18 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
19 {
20 pub fn new(inner: T) -> Self {
21 let inner = tonic::client::Grpc::new(inner);
22 Self { inner }
23 }
24 pub fn with_origin(inner: T, origin: Uri) -> Self {
25 let inner = tonic::client::Grpc::with_origin(inner, origin);
26 Self { inner }
27 }
28 pub fn with_interceptor<F>(
29 inner: T,
30 interceptor: F,
31 ) -> QueryServiceClient<InterceptedService<T, F>>
32 where
33 F: tonic::service::Interceptor,
34 T::ResponseBody: Default,
35 T: tonic::codegen::Service<
36 http::Request<tonic::body::BoxBody>,
37 Response = http::Response<
38 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
39 >,
40 >,
41 <T as tonic::codegen::Service<
42 http::Request<tonic::body::BoxBody>,
43 >>::Error: Into<StdError> + Send + Sync,
44 {
45 QueryServiceClient::new(InterceptedService::new(inner, interceptor))
46 }
47 #[must_use]
52 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
53 self.inner = self.inner.send_compressed(encoding);
54 self
55 }
56 #[must_use]
58 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
59 self.inner = self.inner.accept_compressed(encoding);
60 self
61 }
62 #[must_use]
66 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
67 self.inner = self.inner.max_decoding_message_size(limit);
68 self
69 }
70 #[must_use]
74 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
75 self.inner = self.inner.max_encoding_message_size(limit);
76 self
77 }
78 pub async fn read_params(
80 &mut self,
81 request: impl tonic::IntoRequest<super::ReadParamsRequest>,
82 ) -> std::result::Result<
83 tonic::Response<super::ReadParamsResponse>,
84 tonic::Status,
85 > {
86 self.inner
87 .ready()
88 .await
89 .map_err(|e| {
90 tonic::Status::new(
91 tonic::Code::Unknown,
92 format!("Service was not ready: {}", e.into()),
93 )
94 })?;
95 let codec = tonic::codec::ProstCodec::default();
96 let path = http::uri::PathAndQuery::from_static(
97 "/utxorpc.v1alpha.query.QueryService/ReadParams",
98 );
99 let mut req = request.into_request();
100 req.extensions_mut()
101 .insert(
102 GrpcMethod::new("utxorpc.v1alpha.query.QueryService", "ReadParams"),
103 );
104 self.inner.unary(req, path, codec).await
105 }
106 pub async fn read_utxos(
108 &mut self,
109 request: impl tonic::IntoRequest<super::ReadUtxosRequest>,
110 ) -> std::result::Result<
111 tonic::Response<super::ReadUtxosResponse>,
112 tonic::Status,
113 > {
114 self.inner
115 .ready()
116 .await
117 .map_err(|e| {
118 tonic::Status::new(
119 tonic::Code::Unknown,
120 format!("Service was not ready: {}", e.into()),
121 )
122 })?;
123 let codec = tonic::codec::ProstCodec::default();
124 let path = http::uri::PathAndQuery::from_static(
125 "/utxorpc.v1alpha.query.QueryService/ReadUtxos",
126 );
127 let mut req = request.into_request();
128 req.extensions_mut()
129 .insert(
130 GrpcMethod::new("utxorpc.v1alpha.query.QueryService", "ReadUtxos"),
131 );
132 self.inner.unary(req, path, codec).await
133 }
134 pub async fn search_utxos(
136 &mut self,
137 request: impl tonic::IntoRequest<super::SearchUtxosRequest>,
138 ) -> std::result::Result<
139 tonic::Response<super::SearchUtxosResponse>,
140 tonic::Status,
141 > {
142 self.inner
143 .ready()
144 .await
145 .map_err(|e| {
146 tonic::Status::new(
147 tonic::Code::Unknown,
148 format!("Service was not ready: {}", e.into()),
149 )
150 })?;
151 let codec = tonic::codec::ProstCodec::default();
152 let path = http::uri::PathAndQuery::from_static(
153 "/utxorpc.v1alpha.query.QueryService/SearchUtxos",
154 );
155 let mut req = request.into_request();
156 req.extensions_mut()
157 .insert(
158 GrpcMethod::new("utxorpc.v1alpha.query.QueryService", "SearchUtxos"),
159 );
160 self.inner.unary(req, path, codec).await
161 }
162 pub async fn read_data(
164 &mut self,
165 request: impl tonic::IntoRequest<super::ReadDataRequest>,
166 ) -> std::result::Result<
167 tonic::Response<super::ReadDataResponse>,
168 tonic::Status,
169 > {
170 self.inner
171 .ready()
172 .await
173 .map_err(|e| {
174 tonic::Status::new(
175 tonic::Code::Unknown,
176 format!("Service was not ready: {}", e.into()),
177 )
178 })?;
179 let codec = tonic::codec::ProstCodec::default();
180 let path = http::uri::PathAndQuery::from_static(
181 "/utxorpc.v1alpha.query.QueryService/ReadData",
182 );
183 let mut req = request.into_request();
184 req.extensions_mut()
185 .insert(
186 GrpcMethod::new("utxorpc.v1alpha.query.QueryService", "ReadData"),
187 );
188 self.inner.unary(req, path, codec).await
189 }
190 pub async fn read_tx(
192 &mut self,
193 request: impl tonic::IntoRequest<super::ReadTxRequest>,
194 ) -> std::result::Result<tonic::Response<super::ReadTxResponse>, tonic::Status> {
195 self.inner
196 .ready()
197 .await
198 .map_err(|e| {
199 tonic::Status::new(
200 tonic::Code::Unknown,
201 format!("Service was not ready: {}", e.into()),
202 )
203 })?;
204 let codec = tonic::codec::ProstCodec::default();
205 let path = http::uri::PathAndQuery::from_static(
206 "/utxorpc.v1alpha.query.QueryService/ReadTx",
207 );
208 let mut req = request.into_request();
209 req.extensions_mut()
210 .insert(GrpcMethod::new("utxorpc.v1alpha.query.QueryService", "ReadTx"));
211 self.inner.unary(req, path, codec).await
212 }
213 pub async fn read_genesis(
215 &mut self,
216 request: impl tonic::IntoRequest<super::ReadGenesisRequest>,
217 ) -> std::result::Result<
218 tonic::Response<super::ReadGenesisResponse>,
219 tonic::Status,
220 > {
221 self.inner
222 .ready()
223 .await
224 .map_err(|e| {
225 tonic::Status::new(
226 tonic::Code::Unknown,
227 format!("Service was not ready: {}", e.into()),
228 )
229 })?;
230 let codec = tonic::codec::ProstCodec::default();
231 let path = http::uri::PathAndQuery::from_static(
232 "/utxorpc.v1alpha.query.QueryService/ReadGenesis",
233 );
234 let mut req = request.into_request();
235 req.extensions_mut()
236 .insert(
237 GrpcMethod::new("utxorpc.v1alpha.query.QueryService", "ReadGenesis"),
238 );
239 self.inner.unary(req, path, codec).await
240 }
241 pub async fn read_era_summary(
243 &mut self,
244 request: impl tonic::IntoRequest<super::ReadEraSummaryRequest>,
245 ) -> std::result::Result<
246 tonic::Response<super::ReadEraSummaryResponse>,
247 tonic::Status,
248 > {
249 self.inner
250 .ready()
251 .await
252 .map_err(|e| {
253 tonic::Status::new(
254 tonic::Code::Unknown,
255 format!("Service was not ready: {}", e.into()),
256 )
257 })?;
258 let codec = tonic::codec::ProstCodec::default();
259 let path = http::uri::PathAndQuery::from_static(
260 "/utxorpc.v1alpha.query.QueryService/ReadEraSummary",
261 );
262 let mut req = request.into_request();
263 req.extensions_mut()
264 .insert(
265 GrpcMethod::new(
266 "utxorpc.v1alpha.query.QueryService",
267 "ReadEraSummary",
268 ),
269 );
270 self.inner.unary(req, path, codec).await
271 }
272 }
273}
274pub mod query_service_server {
276 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
277 use tonic::codegen::*;
278 #[async_trait]
280 pub trait QueryService: Send + Sync + 'static {
281 async fn read_params(
283 &self,
284 request: tonic::Request<super::ReadParamsRequest>,
285 ) -> std::result::Result<
286 tonic::Response<super::ReadParamsResponse>,
287 tonic::Status,
288 >;
289 async fn read_utxos(
291 &self,
292 request: tonic::Request<super::ReadUtxosRequest>,
293 ) -> std::result::Result<
294 tonic::Response<super::ReadUtxosResponse>,
295 tonic::Status,
296 >;
297 async fn search_utxos(
299 &self,
300 request: tonic::Request<super::SearchUtxosRequest>,
301 ) -> std::result::Result<
302 tonic::Response<super::SearchUtxosResponse>,
303 tonic::Status,
304 >;
305 async fn read_data(
307 &self,
308 request: tonic::Request<super::ReadDataRequest>,
309 ) -> std::result::Result<
310 tonic::Response<super::ReadDataResponse>,
311 tonic::Status,
312 >;
313 async fn read_tx(
315 &self,
316 request: tonic::Request<super::ReadTxRequest>,
317 ) -> std::result::Result<tonic::Response<super::ReadTxResponse>, tonic::Status>;
318 async fn read_genesis(
320 &self,
321 request: tonic::Request<super::ReadGenesisRequest>,
322 ) -> std::result::Result<
323 tonic::Response<super::ReadGenesisResponse>,
324 tonic::Status,
325 >;
326 async fn read_era_summary(
328 &self,
329 request: tonic::Request<super::ReadEraSummaryRequest>,
330 ) -> std::result::Result<
331 tonic::Response<super::ReadEraSummaryResponse>,
332 tonic::Status,
333 >;
334 }
335 #[derive(Debug)]
338 pub struct QueryServiceServer<T: QueryService> {
339 inner: _Inner<T>,
340 accept_compression_encodings: EnabledCompressionEncodings,
341 send_compression_encodings: EnabledCompressionEncodings,
342 max_decoding_message_size: Option<usize>,
343 max_encoding_message_size: Option<usize>,
344 }
345 struct _Inner<T>(Arc<T>);
346 impl<T: QueryService> QueryServiceServer<T> {
347 pub fn new(inner: T) -> Self {
348 Self::from_arc(Arc::new(inner))
349 }
350 pub fn from_arc(inner: Arc<T>) -> Self {
351 let inner = _Inner(inner);
352 Self {
353 inner,
354 accept_compression_encodings: Default::default(),
355 send_compression_encodings: Default::default(),
356 max_decoding_message_size: None,
357 max_encoding_message_size: None,
358 }
359 }
360 pub fn with_interceptor<F>(
361 inner: T,
362 interceptor: F,
363 ) -> InterceptedService<Self, F>
364 where
365 F: tonic::service::Interceptor,
366 {
367 InterceptedService::new(Self::new(inner), interceptor)
368 }
369 #[must_use]
371 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
372 self.accept_compression_encodings.enable(encoding);
373 self
374 }
375 #[must_use]
377 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
378 self.send_compression_encodings.enable(encoding);
379 self
380 }
381 #[must_use]
385 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
386 self.max_decoding_message_size = Some(limit);
387 self
388 }
389 #[must_use]
393 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
394 self.max_encoding_message_size = Some(limit);
395 self
396 }
397 }
398 impl<T, B> tonic::codegen::Service<http::Request<B>> for QueryServiceServer<T>
399 where
400 T: QueryService,
401 B: Body + Send + 'static,
402 B::Error: Into<StdError> + Send + 'static,
403 {
404 type Response = http::Response<tonic::body::BoxBody>;
405 type Error = std::convert::Infallible;
406 type Future = BoxFuture<Self::Response, Self::Error>;
407 fn poll_ready(
408 &mut self,
409 _cx: &mut Context<'_>,
410 ) -> Poll<std::result::Result<(), Self::Error>> {
411 Poll::Ready(Ok(()))
412 }
413 fn call(&mut self, req: http::Request<B>) -> Self::Future {
414 let inner = self.inner.clone();
415 match req.uri().path() {
416 "/utxorpc.v1alpha.query.QueryService/ReadParams" => {
417 #[allow(non_camel_case_types)]
418 struct ReadParamsSvc<T: QueryService>(pub Arc<T>);
419 impl<
420 T: QueryService,
421 > tonic::server::UnaryService<super::ReadParamsRequest>
422 for ReadParamsSvc<T> {
423 type Response = super::ReadParamsResponse;
424 type Future = BoxFuture<
425 tonic::Response<Self::Response>,
426 tonic::Status,
427 >;
428 fn call(
429 &mut self,
430 request: tonic::Request<super::ReadParamsRequest>,
431 ) -> Self::Future {
432 let inner = Arc::clone(&self.0);
433 let fut = async move {
434 <T as QueryService>::read_params(&inner, request).await
435 };
436 Box::pin(fut)
437 }
438 }
439 let accept_compression_encodings = self.accept_compression_encodings;
440 let send_compression_encodings = self.send_compression_encodings;
441 let max_decoding_message_size = self.max_decoding_message_size;
442 let max_encoding_message_size = self.max_encoding_message_size;
443 let inner = self.inner.clone();
444 let fut = async move {
445 let inner = inner.0;
446 let method = ReadParamsSvc(inner);
447 let codec = tonic::codec::ProstCodec::default();
448 let mut grpc = tonic::server::Grpc::new(codec)
449 .apply_compression_config(
450 accept_compression_encodings,
451 send_compression_encodings,
452 )
453 .apply_max_message_size_config(
454 max_decoding_message_size,
455 max_encoding_message_size,
456 );
457 let res = grpc.unary(method, req).await;
458 Ok(res)
459 };
460 Box::pin(fut)
461 }
462 "/utxorpc.v1alpha.query.QueryService/ReadUtxos" => {
463 #[allow(non_camel_case_types)]
464 struct ReadUtxosSvc<T: QueryService>(pub Arc<T>);
465 impl<
466 T: QueryService,
467 > tonic::server::UnaryService<super::ReadUtxosRequest>
468 for ReadUtxosSvc<T> {
469 type Response = super::ReadUtxosResponse;
470 type Future = BoxFuture<
471 tonic::Response<Self::Response>,
472 tonic::Status,
473 >;
474 fn call(
475 &mut self,
476 request: tonic::Request<super::ReadUtxosRequest>,
477 ) -> Self::Future {
478 let inner = Arc::clone(&self.0);
479 let fut = async move {
480 <T as QueryService>::read_utxos(&inner, request).await
481 };
482 Box::pin(fut)
483 }
484 }
485 let accept_compression_encodings = self.accept_compression_encodings;
486 let send_compression_encodings = self.send_compression_encodings;
487 let max_decoding_message_size = self.max_decoding_message_size;
488 let max_encoding_message_size = self.max_encoding_message_size;
489 let inner = self.inner.clone();
490 let fut = async move {
491 let inner = inner.0;
492 let method = ReadUtxosSvc(inner);
493 let codec = tonic::codec::ProstCodec::default();
494 let mut grpc = tonic::server::Grpc::new(codec)
495 .apply_compression_config(
496 accept_compression_encodings,
497 send_compression_encodings,
498 )
499 .apply_max_message_size_config(
500 max_decoding_message_size,
501 max_encoding_message_size,
502 );
503 let res = grpc.unary(method, req).await;
504 Ok(res)
505 };
506 Box::pin(fut)
507 }
508 "/utxorpc.v1alpha.query.QueryService/SearchUtxos" => {
509 #[allow(non_camel_case_types)]
510 struct SearchUtxosSvc<T: QueryService>(pub Arc<T>);
511 impl<
512 T: QueryService,
513 > tonic::server::UnaryService<super::SearchUtxosRequest>
514 for SearchUtxosSvc<T> {
515 type Response = super::SearchUtxosResponse;
516 type Future = BoxFuture<
517 tonic::Response<Self::Response>,
518 tonic::Status,
519 >;
520 fn call(
521 &mut self,
522 request: tonic::Request<super::SearchUtxosRequest>,
523 ) -> Self::Future {
524 let inner = Arc::clone(&self.0);
525 let fut = async move {
526 <T as QueryService>::search_utxos(&inner, request).await
527 };
528 Box::pin(fut)
529 }
530 }
531 let accept_compression_encodings = self.accept_compression_encodings;
532 let send_compression_encodings = self.send_compression_encodings;
533 let max_decoding_message_size = self.max_decoding_message_size;
534 let max_encoding_message_size = self.max_encoding_message_size;
535 let inner = self.inner.clone();
536 let fut = async move {
537 let inner = inner.0;
538 let method = SearchUtxosSvc(inner);
539 let codec = tonic::codec::ProstCodec::default();
540 let mut grpc = tonic::server::Grpc::new(codec)
541 .apply_compression_config(
542 accept_compression_encodings,
543 send_compression_encodings,
544 )
545 .apply_max_message_size_config(
546 max_decoding_message_size,
547 max_encoding_message_size,
548 );
549 let res = grpc.unary(method, req).await;
550 Ok(res)
551 };
552 Box::pin(fut)
553 }
554 "/utxorpc.v1alpha.query.QueryService/ReadData" => {
555 #[allow(non_camel_case_types)]
556 struct ReadDataSvc<T: QueryService>(pub Arc<T>);
557 impl<
558 T: QueryService,
559 > tonic::server::UnaryService<super::ReadDataRequest>
560 for ReadDataSvc<T> {
561 type Response = super::ReadDataResponse;
562 type Future = BoxFuture<
563 tonic::Response<Self::Response>,
564 tonic::Status,
565 >;
566 fn call(
567 &mut self,
568 request: tonic::Request<super::ReadDataRequest>,
569 ) -> Self::Future {
570 let inner = Arc::clone(&self.0);
571 let fut = async move {
572 <T as QueryService>::read_data(&inner, request).await
573 };
574 Box::pin(fut)
575 }
576 }
577 let accept_compression_encodings = self.accept_compression_encodings;
578 let send_compression_encodings = self.send_compression_encodings;
579 let max_decoding_message_size = self.max_decoding_message_size;
580 let max_encoding_message_size = self.max_encoding_message_size;
581 let inner = self.inner.clone();
582 let fut = async move {
583 let inner = inner.0;
584 let method = ReadDataSvc(inner);
585 let codec = tonic::codec::ProstCodec::default();
586 let mut grpc = tonic::server::Grpc::new(codec)
587 .apply_compression_config(
588 accept_compression_encodings,
589 send_compression_encodings,
590 )
591 .apply_max_message_size_config(
592 max_decoding_message_size,
593 max_encoding_message_size,
594 );
595 let res = grpc.unary(method, req).await;
596 Ok(res)
597 };
598 Box::pin(fut)
599 }
600 "/utxorpc.v1alpha.query.QueryService/ReadTx" => {
601 #[allow(non_camel_case_types)]
602 struct ReadTxSvc<T: QueryService>(pub Arc<T>);
603 impl<
604 T: QueryService,
605 > tonic::server::UnaryService<super::ReadTxRequest>
606 for ReadTxSvc<T> {
607 type Response = super::ReadTxResponse;
608 type Future = BoxFuture<
609 tonic::Response<Self::Response>,
610 tonic::Status,
611 >;
612 fn call(
613 &mut self,
614 request: tonic::Request<super::ReadTxRequest>,
615 ) -> Self::Future {
616 let inner = Arc::clone(&self.0);
617 let fut = async move {
618 <T as QueryService>::read_tx(&inner, request).await
619 };
620 Box::pin(fut)
621 }
622 }
623 let accept_compression_encodings = self.accept_compression_encodings;
624 let send_compression_encodings = self.send_compression_encodings;
625 let max_decoding_message_size = self.max_decoding_message_size;
626 let max_encoding_message_size = self.max_encoding_message_size;
627 let inner = self.inner.clone();
628 let fut = async move {
629 let inner = inner.0;
630 let method = ReadTxSvc(inner);
631 let codec = tonic::codec::ProstCodec::default();
632 let mut grpc = tonic::server::Grpc::new(codec)
633 .apply_compression_config(
634 accept_compression_encodings,
635 send_compression_encodings,
636 )
637 .apply_max_message_size_config(
638 max_decoding_message_size,
639 max_encoding_message_size,
640 );
641 let res = grpc.unary(method, req).await;
642 Ok(res)
643 };
644 Box::pin(fut)
645 }
646 "/utxorpc.v1alpha.query.QueryService/ReadGenesis" => {
647 #[allow(non_camel_case_types)]
648 struct ReadGenesisSvc<T: QueryService>(pub Arc<T>);
649 impl<
650 T: QueryService,
651 > tonic::server::UnaryService<super::ReadGenesisRequest>
652 for ReadGenesisSvc<T> {
653 type Response = super::ReadGenesisResponse;
654 type Future = BoxFuture<
655 tonic::Response<Self::Response>,
656 tonic::Status,
657 >;
658 fn call(
659 &mut self,
660 request: tonic::Request<super::ReadGenesisRequest>,
661 ) -> Self::Future {
662 let inner = Arc::clone(&self.0);
663 let fut = async move {
664 <T as QueryService>::read_genesis(&inner, request).await
665 };
666 Box::pin(fut)
667 }
668 }
669 let accept_compression_encodings = self.accept_compression_encodings;
670 let send_compression_encodings = self.send_compression_encodings;
671 let max_decoding_message_size = self.max_decoding_message_size;
672 let max_encoding_message_size = self.max_encoding_message_size;
673 let inner = self.inner.clone();
674 let fut = async move {
675 let inner = inner.0;
676 let method = ReadGenesisSvc(inner);
677 let codec = tonic::codec::ProstCodec::default();
678 let mut grpc = tonic::server::Grpc::new(codec)
679 .apply_compression_config(
680 accept_compression_encodings,
681 send_compression_encodings,
682 )
683 .apply_max_message_size_config(
684 max_decoding_message_size,
685 max_encoding_message_size,
686 );
687 let res = grpc.unary(method, req).await;
688 Ok(res)
689 };
690 Box::pin(fut)
691 }
692 "/utxorpc.v1alpha.query.QueryService/ReadEraSummary" => {
693 #[allow(non_camel_case_types)]
694 struct ReadEraSummarySvc<T: QueryService>(pub Arc<T>);
695 impl<
696 T: QueryService,
697 > tonic::server::UnaryService<super::ReadEraSummaryRequest>
698 for ReadEraSummarySvc<T> {
699 type Response = super::ReadEraSummaryResponse;
700 type Future = BoxFuture<
701 tonic::Response<Self::Response>,
702 tonic::Status,
703 >;
704 fn call(
705 &mut self,
706 request: tonic::Request<super::ReadEraSummaryRequest>,
707 ) -> Self::Future {
708 let inner = Arc::clone(&self.0);
709 let fut = async move {
710 <T as QueryService>::read_era_summary(&inner, request).await
711 };
712 Box::pin(fut)
713 }
714 }
715 let accept_compression_encodings = self.accept_compression_encodings;
716 let send_compression_encodings = self.send_compression_encodings;
717 let max_decoding_message_size = self.max_decoding_message_size;
718 let max_encoding_message_size = self.max_encoding_message_size;
719 let inner = self.inner.clone();
720 let fut = async move {
721 let inner = inner.0;
722 let method = ReadEraSummarySvc(inner);
723 let codec = tonic::codec::ProstCodec::default();
724 let mut grpc = tonic::server::Grpc::new(codec)
725 .apply_compression_config(
726 accept_compression_encodings,
727 send_compression_encodings,
728 )
729 .apply_max_message_size_config(
730 max_decoding_message_size,
731 max_encoding_message_size,
732 );
733 let res = grpc.unary(method, req).await;
734 Ok(res)
735 };
736 Box::pin(fut)
737 }
738 _ => {
739 Box::pin(async move {
740 Ok(
741 http::Response::builder()
742 .status(200)
743 .header("grpc-status", "12")
744 .header("content-type", "application/grpc")
745 .body(empty_body())
746 .unwrap(),
747 )
748 })
749 }
750 }
751 }
752 }
753 impl<T: QueryService> Clone for QueryServiceServer<T> {
754 fn clone(&self) -> Self {
755 let inner = self.inner.clone();
756 Self {
757 inner,
758 accept_compression_encodings: self.accept_compression_encodings,
759 send_compression_encodings: self.send_compression_encodings,
760 max_decoding_message_size: self.max_decoding_message_size,
761 max_encoding_message_size: self.max_encoding_message_size,
762 }
763 }
764 }
765 impl<T: QueryService> Clone for _Inner<T> {
766 fn clone(&self) -> Self {
767 Self(Arc::clone(&self.0))
768 }
769 }
770 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
771 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
772 write!(f, "{:?}", self.0)
773 }
774 }
775 impl<T: QueryService> tonic::server::NamedService for QueryServiceServer<T> {
776 const NAME: &'static str = "utxorpc.v1alpha.query.QueryService";
777 }
778}