1#[cfg(feature = "grpc")]
4pub mod service_client {
5 #![allow(
6 unused_variables,
7 dead_code,
8 missing_docs,
9 clippy::wildcard_imports,
10 clippy::let_unit_value
11 )]
12 use tonic::codegen::http::Uri;
13 use tonic::codegen::*;
14 #[derive(Debug, Clone)]
15 pub struct ServiceClient<T> {
16 inner: tonic::client::Grpc<T>,
17 }
18 #[cfg(feature = "grpc-transport")]
19 impl ServiceClient<tonic::transport::Channel> {
20 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
22 where
23 D: TryInto<tonic::transport::Endpoint>,
24 D::Error: Into<StdError>,
25 {
26 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
27 Ok(Self::new(conn))
28 }
29 }
30 impl<T> ServiceClient<T>
31 where
32 T: tonic::client::GrpcService<tonic::body::Body>,
33 T::Error: Into<StdError>,
34 T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
35 <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
36 {
37 pub fn new(inner: T) -> Self {
38 let inner = tonic::client::Grpc::new(inner);
39 Self { inner }
40 }
41 pub fn with_origin(inner: T, origin: Uri) -> Self {
42 let inner = tonic::client::Grpc::with_origin(inner, origin);
43 Self { inner }
44 }
45 pub fn with_interceptor<F>(
46 inner: T,
47 interceptor: F,
48 ) -> ServiceClient<InterceptedService<T, F>>
49 where
50 F: tonic::service::Interceptor,
51 T::ResponseBody: Default,
52 T: tonic::codegen::Service<
53 http::Request<tonic::body::Body>,
54 Response = http::Response<
55 <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
56 >,
57 >,
58 <T as tonic::codegen::Service<http::Request<tonic::body::Body>>>::Error:
59 Into<StdError> + std::marker::Send + std::marker::Sync,
60 {
61 ServiceClient::new(InterceptedService::new(inner, interceptor))
62 }
63 #[must_use]
68 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
69 self.inner = self.inner.send_compressed(encoding);
70 self
71 }
72 #[must_use]
74 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
75 self.inner = self.inner.accept_compressed(encoding);
76 self
77 }
78 #[must_use]
82 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
83 self.inner = self.inner.max_decoding_message_size(limit);
84 self
85 }
86 #[must_use]
90 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
91 self.inner = self.inner.max_encoding_message_size(limit);
92 self
93 }
94 pub async fn simulate(
95 &mut self,
96 request: impl tonic::IntoRequest<super::SimulateRequest>,
97 ) -> core::result::Result<tonic::Response<super::SimulateResponse>, tonic::Status> {
98 self.inner.ready().await.map_err(|e| {
99 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
100 })?;
101 let codec = tonic::codec::ProstCodec::default();
102 let path = http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/Simulate");
103 let mut req = request.into_request();
104 req.extensions_mut()
105 .insert(GrpcMethod::new("cosmos.tx.v1beta1.Service", "Simulate"));
106 self.inner.unary(req, path, codec).await
107 }
108 pub async fn get_tx(
109 &mut self,
110 request: impl tonic::IntoRequest<super::GetTxRequest>,
111 ) -> core::result::Result<tonic::Response<super::GetTxResponse>, tonic::Status> {
112 self.inner.ready().await.map_err(|e| {
113 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
114 })?;
115 let codec = tonic::codec::ProstCodec::default();
116 let path = http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/GetTx");
117 let mut req = request.into_request();
118 req.extensions_mut()
119 .insert(GrpcMethod::new("cosmos.tx.v1beta1.Service", "GetTx"));
120 self.inner.unary(req, path, codec).await
121 }
122 pub async fn broadcast_tx(
123 &mut self,
124 request: impl tonic::IntoRequest<super::BroadcastTxRequest>,
125 ) -> core::result::Result<tonic::Response<super::BroadcastTxResponse>, tonic::Status>
126 {
127 self.inner.ready().await.map_err(|e| {
128 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
129 })?;
130 let codec = tonic::codec::ProstCodec::default();
131 let path =
132 http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/BroadcastTx");
133 let mut req = request.into_request();
134 req.extensions_mut()
135 .insert(GrpcMethod::new("cosmos.tx.v1beta1.Service", "BroadcastTx"));
136 self.inner.unary(req, path, codec).await
137 }
138 pub async fn get_txs_event(
139 &mut self,
140 request: impl tonic::IntoRequest<super::GetTxsEventRequest>,
141 ) -> core::result::Result<tonic::Response<super::GetTxsEventResponse>, tonic::Status>
142 {
143 self.inner.ready().await.map_err(|e| {
144 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
145 })?;
146 let codec = tonic::codec::ProstCodec::default();
147 let path =
148 http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/GetTxsEvent");
149 let mut req = request.into_request();
150 req.extensions_mut()
151 .insert(GrpcMethod::new("cosmos.tx.v1beta1.Service", "GetTxsEvent"));
152 self.inner.unary(req, path, codec).await
153 }
154 pub async fn get_block_with_txs(
155 &mut self,
156 request: impl tonic::IntoRequest<super::GetBlockWithTxsRequest>,
157 ) -> core::result::Result<tonic::Response<super::GetBlockWithTxsResponse>, tonic::Status>
158 {
159 self.inner.ready().await.map_err(|e| {
160 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
161 })?;
162 let codec = tonic::codec::ProstCodec::default();
163 let path =
164 http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/GetBlockWithTxs");
165 let mut req = request.into_request();
166 req.extensions_mut().insert(GrpcMethod::new(
167 "cosmos.tx.v1beta1.Service",
168 "GetBlockWithTxs",
169 ));
170 self.inner.unary(req, path, codec).await
171 }
172 pub async fn tx_decode(
173 &mut self,
174 request: impl tonic::IntoRequest<super::TxDecodeRequest>,
175 ) -> core::result::Result<tonic::Response<super::TxDecodeResponse>, tonic::Status> {
176 self.inner.ready().await.map_err(|e| {
177 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
178 })?;
179 let codec = tonic::codec::ProstCodec::default();
180 let path = http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/TxDecode");
181 let mut req = request.into_request();
182 req.extensions_mut()
183 .insert(GrpcMethod::new("cosmos.tx.v1beta1.Service", "TxDecode"));
184 self.inner.unary(req, path, codec).await
185 }
186 pub async fn tx_encode(
187 &mut self,
188 request: impl tonic::IntoRequest<super::TxEncodeRequest>,
189 ) -> core::result::Result<tonic::Response<super::TxEncodeResponse>, tonic::Status> {
190 self.inner.ready().await.map_err(|e| {
191 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
192 })?;
193 let codec = tonic::codec::ProstCodec::default();
194 let path = http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/TxEncode");
195 let mut req = request.into_request();
196 req.extensions_mut()
197 .insert(GrpcMethod::new("cosmos.tx.v1beta1.Service", "TxEncode"));
198 self.inner.unary(req, path, codec).await
199 }
200 pub async fn tx_encode_amino(
201 &mut self,
202 request: impl tonic::IntoRequest<super::TxEncodeAminoRequest>,
203 ) -> core::result::Result<tonic::Response<super::TxEncodeAminoResponse>, tonic::Status>
204 {
205 self.inner.ready().await.map_err(|e| {
206 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
207 })?;
208 let codec = tonic::codec::ProstCodec::default();
209 let path =
210 http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/TxEncodeAmino");
211 let mut req = request.into_request();
212 req.extensions_mut().insert(GrpcMethod::new(
213 "cosmos.tx.v1beta1.Service",
214 "TxEncodeAmino",
215 ));
216 self.inner.unary(req, path, codec).await
217 }
218 pub async fn tx_decode_amino(
219 &mut self,
220 request: impl tonic::IntoRequest<super::TxDecodeAminoRequest>,
221 ) -> core::result::Result<tonic::Response<super::TxDecodeAminoResponse>, tonic::Status>
222 {
223 self.inner.ready().await.map_err(|e| {
224 tonic::Status::unknown(alloc::format!("Service was not ready: {}", e.into()))
225 })?;
226 let codec = tonic::codec::ProstCodec::default();
227 let path =
228 http::uri::PathAndQuery::from_static("/cosmos.tx.v1beta1.Service/TxDecodeAmino");
229 let mut req = request.into_request();
230 req.extensions_mut().insert(GrpcMethod::new(
231 "cosmos.tx.v1beta1.Service",
232 "TxDecodeAmino",
233 ));
234 self.inner.unary(req, path, codec).await
235 }
236 }
237}
238#[cfg(feature = "grpc")]
240pub mod service_server {
241 #![allow(
242 unused_variables,
243 dead_code,
244 missing_docs,
245 clippy::wildcard_imports,
246 clippy::let_unit_value
247 )]
248 use tonic::codegen::*;
249 #[async_trait]
251 pub trait Service: std::marker::Send + std::marker::Sync + 'static {
252 async fn simulate(
253 &self,
254 request: tonic::Request<super::SimulateRequest>,
255 ) -> core::result::Result<tonic::Response<super::SimulateResponse>, tonic::Status>;
256 async fn get_tx(
257 &self,
258 request: tonic::Request<super::GetTxRequest>,
259 ) -> core::result::Result<tonic::Response<super::GetTxResponse>, tonic::Status>;
260 async fn broadcast_tx(
261 &self,
262 request: tonic::Request<super::BroadcastTxRequest>,
263 ) -> core::result::Result<tonic::Response<super::BroadcastTxResponse>, tonic::Status>;
264 async fn get_txs_event(
265 &self,
266 request: tonic::Request<super::GetTxsEventRequest>,
267 ) -> core::result::Result<tonic::Response<super::GetTxsEventResponse>, tonic::Status>;
268 async fn get_block_with_txs(
269 &self,
270 request: tonic::Request<super::GetBlockWithTxsRequest>,
271 ) -> core::result::Result<tonic::Response<super::GetBlockWithTxsResponse>, tonic::Status>;
272 async fn tx_decode(
273 &self,
274 request: tonic::Request<super::TxDecodeRequest>,
275 ) -> core::result::Result<tonic::Response<super::TxDecodeResponse>, tonic::Status>;
276 async fn tx_encode(
277 &self,
278 request: tonic::Request<super::TxEncodeRequest>,
279 ) -> core::result::Result<tonic::Response<super::TxEncodeResponse>, tonic::Status>;
280 async fn tx_encode_amino(
281 &self,
282 request: tonic::Request<super::TxEncodeAminoRequest>,
283 ) -> core::result::Result<tonic::Response<super::TxEncodeAminoResponse>, tonic::Status>;
284 async fn tx_decode_amino(
285 &self,
286 request: tonic::Request<super::TxDecodeAminoRequest>,
287 ) -> core::result::Result<tonic::Response<super::TxDecodeAminoResponse>, tonic::Status>;
288 }
289 #[derive(Debug)]
290 pub struct ServiceServer<T> {
291 inner: Arc<T>,
292 accept_compression_encodings: EnabledCompressionEncodings,
293 send_compression_encodings: EnabledCompressionEncodings,
294 max_decoding_message_size: Option<usize>,
295 max_encoding_message_size: Option<usize>,
296 }
297 impl<T> ServiceServer<T> {
298 pub fn new(inner: T) -> Self {
299 Self::from_arc(Arc::new(inner))
300 }
301 pub fn from_arc(inner: Arc<T>) -> Self {
302 Self {
303 inner,
304 accept_compression_encodings: Default::default(),
305 send_compression_encodings: Default::default(),
306 max_decoding_message_size: None,
307 max_encoding_message_size: None,
308 }
309 }
310 pub fn with_interceptor<F>(inner: T, interceptor: F) -> InterceptedService<Self, F>
311 where
312 F: tonic::service::Interceptor,
313 {
314 InterceptedService::new(Self::new(inner), interceptor)
315 }
316 #[must_use]
318 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
319 self.accept_compression_encodings.enable(encoding);
320 self
321 }
322 #[must_use]
324 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
325 self.send_compression_encodings.enable(encoding);
326 self
327 }
328 #[must_use]
332 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
333 self.max_decoding_message_size = Some(limit);
334 self
335 }
336 #[must_use]
340 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
341 self.max_encoding_message_size = Some(limit);
342 self
343 }
344 }
345 impl<T, B> tonic::codegen::Service<http::Request<B>> for ServiceServer<T>
346 where
347 T: Service,
348 B: Body + std::marker::Send + 'static,
349 B::Error: Into<StdError> + std::marker::Send + 'static,
350 {
351 type Response = http::Response<tonic::body::Body>;
352 type Error = std::convert::Infallible;
353 type Future = BoxFuture<Self::Response, Self::Error>;
354 fn poll_ready(
355 &mut self,
356 _cx: &mut Context<'_>,
357 ) -> Poll<core::result::Result<(), Self::Error>> {
358 Poll::Ready(Ok(()))
359 }
360 fn call(&mut self, req: http::Request<B>) -> Self::Future {
361 match req.uri().path() {
362 "/cosmos.tx.v1beta1.Service/Simulate" => {
363 #[allow(non_camel_case_types)]
364 struct SimulateSvc<T: Service>(pub Arc<T>);
365 impl<T: Service> tonic::server::UnaryService<super::SimulateRequest> for SimulateSvc<T> {
366 type Response = super::SimulateResponse;
367 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
368 fn call(
369 &mut self,
370 request: tonic::Request<super::SimulateRequest>,
371 ) -> Self::Future {
372 let inner = Arc::clone(&self.0);
373 let fut =
374 async move { <T as Service>::simulate(&inner, request).await };
375 Box::pin(fut)
376 }
377 }
378 let accept_compression_encodings = self.accept_compression_encodings;
379 let send_compression_encodings = self.send_compression_encodings;
380 let max_decoding_message_size = self.max_decoding_message_size;
381 let max_encoding_message_size = self.max_encoding_message_size;
382 let inner = self.inner.clone();
383 let fut = async move {
384 let method = SimulateSvc(inner);
385 let codec = tonic::codec::ProstCodec::default();
386 let mut grpc = tonic::server::Grpc::new(codec)
387 .apply_compression_config(
388 accept_compression_encodings,
389 send_compression_encodings,
390 )
391 .apply_max_message_size_config(
392 max_decoding_message_size,
393 max_encoding_message_size,
394 );
395 let res = grpc.unary(method, req).await;
396 Ok(res)
397 };
398 Box::pin(fut)
399 }
400 "/cosmos.tx.v1beta1.Service/GetTx" => {
401 #[allow(non_camel_case_types)]
402 struct GetTxSvc<T: Service>(pub Arc<T>);
403 impl<T: Service> tonic::server::UnaryService<super::GetTxRequest> for GetTxSvc<T> {
404 type Response = super::GetTxResponse;
405 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
406 fn call(
407 &mut self,
408 request: tonic::Request<super::GetTxRequest>,
409 ) -> Self::Future {
410 let inner = Arc::clone(&self.0);
411 let fut = async move { <T as Service>::get_tx(&inner, request).await };
412 Box::pin(fut)
413 }
414 }
415 let accept_compression_encodings = self.accept_compression_encodings;
416 let send_compression_encodings = self.send_compression_encodings;
417 let max_decoding_message_size = self.max_decoding_message_size;
418 let max_encoding_message_size = self.max_encoding_message_size;
419 let inner = self.inner.clone();
420 let fut = async move {
421 let method = GetTxSvc(inner);
422 let codec = tonic::codec::ProstCodec::default();
423 let mut grpc = tonic::server::Grpc::new(codec)
424 .apply_compression_config(
425 accept_compression_encodings,
426 send_compression_encodings,
427 )
428 .apply_max_message_size_config(
429 max_decoding_message_size,
430 max_encoding_message_size,
431 );
432 let res = grpc.unary(method, req).await;
433 Ok(res)
434 };
435 Box::pin(fut)
436 }
437 "/cosmos.tx.v1beta1.Service/BroadcastTx" => {
438 #[allow(non_camel_case_types)]
439 struct BroadcastTxSvc<T: Service>(pub Arc<T>);
440 impl<T: Service> tonic::server::UnaryService<super::BroadcastTxRequest> for BroadcastTxSvc<T> {
441 type Response = super::BroadcastTxResponse;
442 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
443 fn call(
444 &mut self,
445 request: tonic::Request<super::BroadcastTxRequest>,
446 ) -> Self::Future {
447 let inner = Arc::clone(&self.0);
448 let fut =
449 async move { <T as Service>::broadcast_tx(&inner, request).await };
450 Box::pin(fut)
451 }
452 }
453 let accept_compression_encodings = self.accept_compression_encodings;
454 let send_compression_encodings = self.send_compression_encodings;
455 let max_decoding_message_size = self.max_decoding_message_size;
456 let max_encoding_message_size = self.max_encoding_message_size;
457 let inner = self.inner.clone();
458 let fut = async move {
459 let method = BroadcastTxSvc(inner);
460 let codec = tonic::codec::ProstCodec::default();
461 let mut grpc = tonic::server::Grpc::new(codec)
462 .apply_compression_config(
463 accept_compression_encodings,
464 send_compression_encodings,
465 )
466 .apply_max_message_size_config(
467 max_decoding_message_size,
468 max_encoding_message_size,
469 );
470 let res = grpc.unary(method, req).await;
471 Ok(res)
472 };
473 Box::pin(fut)
474 }
475 "/cosmos.tx.v1beta1.Service/GetTxsEvent" => {
476 #[allow(non_camel_case_types)]
477 struct GetTxsEventSvc<T: Service>(pub Arc<T>);
478 impl<T: Service> tonic::server::UnaryService<super::GetTxsEventRequest> for GetTxsEventSvc<T> {
479 type Response = super::GetTxsEventResponse;
480 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
481 fn call(
482 &mut self,
483 request: tonic::Request<super::GetTxsEventRequest>,
484 ) -> Self::Future {
485 let inner = Arc::clone(&self.0);
486 let fut =
487 async move { <T as Service>::get_txs_event(&inner, request).await };
488 Box::pin(fut)
489 }
490 }
491 let accept_compression_encodings = self.accept_compression_encodings;
492 let send_compression_encodings = self.send_compression_encodings;
493 let max_decoding_message_size = self.max_decoding_message_size;
494 let max_encoding_message_size = self.max_encoding_message_size;
495 let inner = self.inner.clone();
496 let fut = async move {
497 let method = GetTxsEventSvc(inner);
498 let codec = tonic::codec::ProstCodec::default();
499 let mut grpc = tonic::server::Grpc::new(codec)
500 .apply_compression_config(
501 accept_compression_encodings,
502 send_compression_encodings,
503 )
504 .apply_max_message_size_config(
505 max_decoding_message_size,
506 max_encoding_message_size,
507 );
508 let res = grpc.unary(method, req).await;
509 Ok(res)
510 };
511 Box::pin(fut)
512 }
513 "/cosmos.tx.v1beta1.Service/GetBlockWithTxs" => {
514 #[allow(non_camel_case_types)]
515 struct GetBlockWithTxsSvc<T: Service>(pub Arc<T>);
516 impl<T: Service> tonic::server::UnaryService<super::GetBlockWithTxsRequest>
517 for GetBlockWithTxsSvc<T>
518 {
519 type Response = super::GetBlockWithTxsResponse;
520 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
521 fn call(
522 &mut self,
523 request: tonic::Request<super::GetBlockWithTxsRequest>,
524 ) -> Self::Future {
525 let inner = Arc::clone(&self.0);
526 let fut = async move {
527 <T as Service>::get_block_with_txs(&inner, request).await
528 };
529 Box::pin(fut)
530 }
531 }
532 let accept_compression_encodings = self.accept_compression_encodings;
533 let send_compression_encodings = self.send_compression_encodings;
534 let max_decoding_message_size = self.max_decoding_message_size;
535 let max_encoding_message_size = self.max_encoding_message_size;
536 let inner = self.inner.clone();
537 let fut = async move {
538 let method = GetBlockWithTxsSvc(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 "/cosmos.tx.v1beta1.Service/TxDecode" => {
555 #[allow(non_camel_case_types)]
556 struct TxDecodeSvc<T: Service>(pub Arc<T>);
557 impl<T: Service> tonic::server::UnaryService<super::TxDecodeRequest> for TxDecodeSvc<T> {
558 type Response = super::TxDecodeResponse;
559 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
560 fn call(
561 &mut self,
562 request: tonic::Request<super::TxDecodeRequest>,
563 ) -> Self::Future {
564 let inner = Arc::clone(&self.0);
565 let fut =
566 async move { <T as Service>::tx_decode(&inner, request).await };
567 Box::pin(fut)
568 }
569 }
570 let accept_compression_encodings = self.accept_compression_encodings;
571 let send_compression_encodings = self.send_compression_encodings;
572 let max_decoding_message_size = self.max_decoding_message_size;
573 let max_encoding_message_size = self.max_encoding_message_size;
574 let inner = self.inner.clone();
575 let fut = async move {
576 let method = TxDecodeSvc(inner);
577 let codec = tonic::codec::ProstCodec::default();
578 let mut grpc = tonic::server::Grpc::new(codec)
579 .apply_compression_config(
580 accept_compression_encodings,
581 send_compression_encodings,
582 )
583 .apply_max_message_size_config(
584 max_decoding_message_size,
585 max_encoding_message_size,
586 );
587 let res = grpc.unary(method, req).await;
588 Ok(res)
589 };
590 Box::pin(fut)
591 }
592 "/cosmos.tx.v1beta1.Service/TxEncode" => {
593 #[allow(non_camel_case_types)]
594 struct TxEncodeSvc<T: Service>(pub Arc<T>);
595 impl<T: Service> tonic::server::UnaryService<super::TxEncodeRequest> for TxEncodeSvc<T> {
596 type Response = super::TxEncodeResponse;
597 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
598 fn call(
599 &mut self,
600 request: tonic::Request<super::TxEncodeRequest>,
601 ) -> Self::Future {
602 let inner = Arc::clone(&self.0);
603 let fut =
604 async move { <T as Service>::tx_encode(&inner, request).await };
605 Box::pin(fut)
606 }
607 }
608 let accept_compression_encodings = self.accept_compression_encodings;
609 let send_compression_encodings = self.send_compression_encodings;
610 let max_decoding_message_size = self.max_decoding_message_size;
611 let max_encoding_message_size = self.max_encoding_message_size;
612 let inner = self.inner.clone();
613 let fut = async move {
614 let method = TxEncodeSvc(inner);
615 let codec = tonic::codec::ProstCodec::default();
616 let mut grpc = tonic::server::Grpc::new(codec)
617 .apply_compression_config(
618 accept_compression_encodings,
619 send_compression_encodings,
620 )
621 .apply_max_message_size_config(
622 max_decoding_message_size,
623 max_encoding_message_size,
624 );
625 let res = grpc.unary(method, req).await;
626 Ok(res)
627 };
628 Box::pin(fut)
629 }
630 "/cosmos.tx.v1beta1.Service/TxEncodeAmino" => {
631 #[allow(non_camel_case_types)]
632 struct TxEncodeAminoSvc<T: Service>(pub Arc<T>);
633 impl<T: Service> tonic::server::UnaryService<super::TxEncodeAminoRequest> for TxEncodeAminoSvc<T> {
634 type Response = super::TxEncodeAminoResponse;
635 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
636 fn call(
637 &mut self,
638 request: tonic::Request<super::TxEncodeAminoRequest>,
639 ) -> Self::Future {
640 let inner = Arc::clone(&self.0);
641 let fut = async move {
642 <T as Service>::tx_encode_amino(&inner, request).await
643 };
644 Box::pin(fut)
645 }
646 }
647 let accept_compression_encodings = self.accept_compression_encodings;
648 let send_compression_encodings = self.send_compression_encodings;
649 let max_decoding_message_size = self.max_decoding_message_size;
650 let max_encoding_message_size = self.max_encoding_message_size;
651 let inner = self.inner.clone();
652 let fut = async move {
653 let method = TxEncodeAminoSvc(inner);
654 let codec = tonic::codec::ProstCodec::default();
655 let mut grpc = tonic::server::Grpc::new(codec)
656 .apply_compression_config(
657 accept_compression_encodings,
658 send_compression_encodings,
659 )
660 .apply_max_message_size_config(
661 max_decoding_message_size,
662 max_encoding_message_size,
663 );
664 let res = grpc.unary(method, req).await;
665 Ok(res)
666 };
667 Box::pin(fut)
668 }
669 "/cosmos.tx.v1beta1.Service/TxDecodeAmino" => {
670 #[allow(non_camel_case_types)]
671 struct TxDecodeAminoSvc<T: Service>(pub Arc<T>);
672 impl<T: Service> tonic::server::UnaryService<super::TxDecodeAminoRequest> for TxDecodeAminoSvc<T> {
673 type Response = super::TxDecodeAminoResponse;
674 type Future = BoxFuture<tonic::Response<Self::Response>, tonic::Status>;
675 fn call(
676 &mut self,
677 request: tonic::Request<super::TxDecodeAminoRequest>,
678 ) -> Self::Future {
679 let inner = Arc::clone(&self.0);
680 let fut = async move {
681 <T as Service>::tx_decode_amino(&inner, request).await
682 };
683 Box::pin(fut)
684 }
685 }
686 let accept_compression_encodings = self.accept_compression_encodings;
687 let send_compression_encodings = self.send_compression_encodings;
688 let max_decoding_message_size = self.max_decoding_message_size;
689 let max_encoding_message_size = self.max_encoding_message_size;
690 let inner = self.inner.clone();
691 let fut = async move {
692 let method = TxDecodeAminoSvc(inner);
693 let codec = tonic::codec::ProstCodec::default();
694 let mut grpc = tonic::server::Grpc::new(codec)
695 .apply_compression_config(
696 accept_compression_encodings,
697 send_compression_encodings,
698 )
699 .apply_max_message_size_config(
700 max_decoding_message_size,
701 max_encoding_message_size,
702 );
703 let res = grpc.unary(method, req).await;
704 Ok(res)
705 };
706 Box::pin(fut)
707 }
708 _ => Box::pin(async move {
709 let mut response = http::Response::new(tonic::body::Body::default());
710 let headers = response.headers_mut();
711 headers.insert(
712 tonic::Status::GRPC_STATUS,
713 (tonic::Code::Unimplemented as i32).into(),
714 );
715 headers.insert(
716 http::header::CONTENT_TYPE,
717 tonic::metadata::GRPC_CONTENT_TYPE,
718 );
719 Ok(response)
720 }),
721 }
722 }
723 }
724 impl<T> Clone for ServiceServer<T> {
725 fn clone(&self) -> Self {
726 let inner = self.inner.clone();
727 Self {
728 inner,
729 accept_compression_encodings: self.accept_compression_encodings,
730 send_compression_encodings: self.send_compression_encodings,
731 max_decoding_message_size: self.max_decoding_message_size,
732 max_encoding_message_size: self.max_encoding_message_size,
733 }
734 }
735 }
736 pub const SERVICE_NAME: &str = "cosmos.tx.v1beta1.Service";
738 impl<T> tonic::server::NamedService for ServiceServer<T> {
739 const NAME: &'static str = SERVICE_NAME;
740 }
741}