1#[derive(serde::Deserialize, serde::Serialize)]
3#[allow(clippy::derive_partial_eq_without_eq)]
4#[derive(Clone, PartialEq, ::prost::Message)]
5pub struct CreateEndpointRequest {
6 #[prost(string, tag = "1")]
8 pub name: ::prost::alloc::string::String,
9 #[prost(enumeration = "super::super::models::v2::EndpointVariant", tag = "2")]
11 pub ep_variant: i32,
12 #[prost(bool, tag = "3")]
14 pub is_public: bool,
15 #[prost(string, tag = "4")]
17 pub pubkey: ::prost::alloc::string::String,
18 #[prost(message, repeated, tag = "5")]
20 pub host_configs: ::prost::alloc::vec::Vec<
21 super::super::models::v2::EndpointHostConfig,
22 >,
23}
24#[derive(serde::Deserialize, serde::Serialize)]
25#[allow(clippy::derive_partial_eq_without_eq)]
26#[derive(Clone, PartialEq, ::prost::Message)]
27pub struct CreateEndpointResponse {
28 #[prost(message, optional, tag = "1")]
30 pub endpoint: ::core::option::Option<super::super::models::v2::Endpoint>,
31}
32#[derive(serde::Deserialize, serde::Serialize)]
33#[allow(clippy::derive_partial_eq_without_eq)]
34#[derive(Clone, PartialEq, ::prost::Message)]
35pub struct FullSyncEndpointRequest {}
36#[derive(serde::Deserialize, serde::Serialize)]
37#[allow(clippy::derive_partial_eq_without_eq)]
38#[derive(Clone, PartialEq, ::prost::Message)]
39pub struct FullSyncEndpointResponse {
40 #[prost(oneof = "full_sync_endpoint_response::Target", tags = "1, 2, 3")]
41 pub target: ::core::option::Option<full_sync_endpoint_response::Target>,
42}
43pub mod full_sync_endpoint_response {
45 #[derive(serde::Deserialize, serde::Serialize)]
46 #[allow(clippy::derive_partial_eq_without_eq)]
47 #[derive(Clone, PartialEq, ::prost::Oneof)]
48 pub enum Target {
49 #[prost(message, tag = "1")]
50 GenericResource(super::super::super::models::v2::GenericResource),
51 #[prost(message, tag = "2")]
52 User(super::super::super::models::v2::User),
53 #[prost(message, tag = "3")]
54 Pubkey(super::super::super::models::v2::Pubkey),
55 }
56}
57#[derive(serde::Deserialize, serde::Serialize)]
58#[allow(clippy::derive_partial_eq_without_eq)]
59#[derive(Clone, PartialEq, ::prost::Message)]
60pub struct GetEndpointRequest {
61 #[prost(oneof = "get_endpoint_request::Endpoint", tags = "1, 2")]
63 pub endpoint: ::core::option::Option<get_endpoint_request::Endpoint>,
64}
65pub mod get_endpoint_request {
67 #[derive(serde::Deserialize, serde::Serialize)]
69 #[allow(clippy::derive_partial_eq_without_eq)]
70 #[derive(Clone, PartialEq, ::prost::Oneof)]
71 pub enum Endpoint {
72 #[prost(string, tag = "1")]
74 EndpointName(::prost::alloc::string::String),
75 #[prost(string, tag = "2")]
77 EndpointId(::prost::alloc::string::String),
78 }
79}
80#[derive(serde::Deserialize, serde::Serialize)]
81#[allow(clippy::derive_partial_eq_without_eq)]
82#[derive(Clone, PartialEq, ::prost::Message)]
83pub struct GetEndpointResponse {
84 #[prost(message, optional, tag = "1")]
86 pub endpoint: ::core::option::Option<super::super::models::v2::Endpoint>,
87}
88#[derive(serde::Deserialize, serde::Serialize)]
90#[allow(clippy::derive_partial_eq_without_eq)]
91#[derive(Clone, PartialEq, ::prost::Message)]
92pub struct GetEndpointsRequest {}
93#[derive(serde::Deserialize, serde::Serialize)]
94#[allow(clippy::derive_partial_eq_without_eq)]
95#[derive(Clone, PartialEq, ::prost::Message)]
96pub struct GetEndpointsResponse {
97 #[prost(message, repeated, tag = "1")]
99 pub endpoints: ::prost::alloc::vec::Vec<super::super::models::v2::Endpoint>,
100}
101#[derive(serde::Deserialize, serde::Serialize)]
102#[allow(clippy::derive_partial_eq_without_eq)]
103#[derive(Clone, PartialEq, ::prost::Message)]
104pub struct DeleteEndpointRequest {
105 #[prost(string, tag = "1")]
107 pub endpoint_id: ::prost::alloc::string::String,
108}
109#[derive(serde::Deserialize, serde::Serialize)]
110#[allow(clippy::derive_partial_eq_without_eq)]
111#[derive(Clone, PartialEq, ::prost::Message)]
112pub struct DeleteEndpointResponse {}
113#[derive(serde::Deserialize, serde::Serialize)]
114#[allow(clippy::derive_partial_eq_without_eq)]
115#[derive(Clone, PartialEq, ::prost::Message)]
116pub struct GetDefaultEndpointRequest {}
117#[derive(serde::Deserialize, serde::Serialize)]
118#[allow(clippy::derive_partial_eq_without_eq)]
119#[derive(Clone, PartialEq, ::prost::Message)]
120pub struct GetDefaultEndpointResponse {
121 #[prost(message, optional, tag = "1")]
123 pub endpoint: ::core::option::Option<super::super::models::v2::Endpoint>,
124}
125#[derive(serde::Deserialize, serde::Serialize)]
126#[allow(clippy::derive_partial_eq_without_eq)]
127#[derive(Clone, PartialEq, ::prost::Message)]
128pub struct SetEndpointStatusRequest {
129 #[prost(string, tag = "1")]
130 pub endpoint_id: ::prost::alloc::string::String,
131 #[prost(enumeration = "super::super::models::v2::ComponentStatus", tag = "2")]
132 pub status: i32,
133}
134#[derive(serde::Deserialize, serde::Serialize)]
135#[allow(clippy::derive_partial_eq_without_eq)]
136#[derive(Clone, PartialEq, ::prost::Message)]
137pub struct SetEndpointStatusResponse {
138 #[prost(message, optional, tag = "1")]
139 pub endpoint: ::core::option::Option<super::super::models::v2::Endpoint>,
140}
141pub mod endpoint_service_client {
143 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
144 use tonic::codegen::*;
145 use tonic::codegen::http::Uri;
146 #[derive(Debug, Clone)]
152 pub struct EndpointServiceClient<T> {
153 inner: tonic::client::Grpc<T>,
154 }
155 impl EndpointServiceClient<tonic::transport::Channel> {
156 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
158 where
159 D: TryInto<tonic::transport::Endpoint>,
160 D::Error: Into<StdError>,
161 {
162 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
163 Ok(Self::new(conn))
164 }
165 }
166 impl<T> EndpointServiceClient<T>
167 where
168 T: tonic::client::GrpcService<tonic::body::BoxBody>,
169 T::Error: Into<StdError>,
170 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
171 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
172 {
173 pub fn new(inner: T) -> Self {
174 let inner = tonic::client::Grpc::new(inner);
175 Self { inner }
176 }
177 pub fn with_origin(inner: T, origin: Uri) -> Self {
178 let inner = tonic::client::Grpc::with_origin(inner, origin);
179 Self { inner }
180 }
181 pub fn with_interceptor<F>(
182 inner: T,
183 interceptor: F,
184 ) -> EndpointServiceClient<InterceptedService<T, F>>
185 where
186 F: tonic::service::Interceptor,
187 T::ResponseBody: Default,
188 T: tonic::codegen::Service<
189 http::Request<tonic::body::BoxBody>,
190 Response = http::Response<
191 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
192 >,
193 >,
194 <T as tonic::codegen::Service<
195 http::Request<tonic::body::BoxBody>,
196 >>::Error: Into<StdError> + Send + Sync,
197 {
198 EndpointServiceClient::new(InterceptedService::new(inner, interceptor))
199 }
200 #[must_use]
205 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
206 self.inner = self.inner.send_compressed(encoding);
207 self
208 }
209 #[must_use]
211 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
212 self.inner = self.inner.accept_compressed(encoding);
213 self
214 }
215 #[must_use]
219 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
220 self.inner = self.inner.max_decoding_message_size(limit);
221 self
222 }
223 #[must_use]
227 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
228 self.inner = self.inner.max_encoding_message_size(limit);
229 self
230 }
231 pub async fn create_endpoint(
238 &mut self,
239 request: impl tonic::IntoRequest<super::CreateEndpointRequest>,
240 ) -> std::result::Result<
241 tonic::Response<super::CreateEndpointResponse>,
242 tonic::Status,
243 > {
244 self.inner
245 .ready()
246 .await
247 .map_err(|e| {
248 tonic::Status::new(
249 tonic::Code::Unknown,
250 format!("Service was not ready: {}", e.into()),
251 )
252 })?;
253 let codec = tonic::codec::ProstCodec::default();
254 let path = http::uri::PathAndQuery::from_static(
255 "/aruna.api.storage.services.v2.EndpointService/CreateEndpoint",
256 );
257 let mut req = request.into_request();
258 req.extensions_mut()
259 .insert(
260 GrpcMethod::new(
261 "aruna.api.storage.services.v2.EndpointService",
262 "CreateEndpoint",
263 ),
264 );
265 self.inner.unary(req, path, codec).await
266 }
267 pub async fn full_sync_endpoint(
273 &mut self,
274 request: impl tonic::IntoRequest<super::FullSyncEndpointRequest>,
275 ) -> std::result::Result<
276 tonic::Response<tonic::codec::Streaming<super::FullSyncEndpointResponse>>,
277 tonic::Status,
278 > {
279 self.inner
280 .ready()
281 .await
282 .map_err(|e| {
283 tonic::Status::new(
284 tonic::Code::Unknown,
285 format!("Service was not ready: {}", e.into()),
286 )
287 })?;
288 let codec = tonic::codec::ProstCodec::default();
289 let path = http::uri::PathAndQuery::from_static(
290 "/aruna.api.storage.services.v2.EndpointService/FullSyncEndpoint",
291 );
292 let mut req = request.into_request();
293 req.extensions_mut()
294 .insert(
295 GrpcMethod::new(
296 "aruna.api.storage.services.v2.EndpointService",
297 "FullSyncEndpoint",
298 ),
299 );
300 self.inner.server_streaming(req, path, codec).await
301 }
302 pub async fn set_endpoint_status(
308 &mut self,
309 request: impl tonic::IntoRequest<super::SetEndpointStatusRequest>,
310 ) -> std::result::Result<
311 tonic::Response<super::SetEndpointStatusResponse>,
312 tonic::Status,
313 > {
314 self.inner
315 .ready()
316 .await
317 .map_err(|e| {
318 tonic::Status::new(
319 tonic::Code::Unknown,
320 format!("Service was not ready: {}", e.into()),
321 )
322 })?;
323 let codec = tonic::codec::ProstCodec::default();
324 let path = http::uri::PathAndQuery::from_static(
325 "/aruna.api.storage.services.v2.EndpointService/SetEndpointStatus",
326 );
327 let mut req = request.into_request();
328 req.extensions_mut()
329 .insert(
330 GrpcMethod::new(
331 "aruna.api.storage.services.v2.EndpointService",
332 "SetEndpointStatus",
333 ),
334 );
335 self.inner.unary(req, path, codec).await
336 }
337 pub async fn get_endpoint(
343 &mut self,
344 request: impl tonic::IntoRequest<super::GetEndpointRequest>,
345 ) -> std::result::Result<
346 tonic::Response<super::GetEndpointResponse>,
347 tonic::Status,
348 > {
349 self.inner
350 .ready()
351 .await
352 .map_err(|e| {
353 tonic::Status::new(
354 tonic::Code::Unknown,
355 format!("Service was not ready: {}", e.into()),
356 )
357 })?;
358 let codec = tonic::codec::ProstCodec::default();
359 let path = http::uri::PathAndQuery::from_static(
360 "/aruna.api.storage.services.v2.EndpointService/GetEndpoint",
361 );
362 let mut req = request.into_request();
363 req.extensions_mut()
364 .insert(
365 GrpcMethod::new(
366 "aruna.api.storage.services.v2.EndpointService",
367 "GetEndpoint",
368 ),
369 );
370 self.inner.unary(req, path, codec).await
371 }
372 pub async fn get_endpoints(
378 &mut self,
379 request: impl tonic::IntoRequest<super::GetEndpointsRequest>,
380 ) -> std::result::Result<
381 tonic::Response<super::GetEndpointsResponse>,
382 tonic::Status,
383 > {
384 self.inner
385 .ready()
386 .await
387 .map_err(|e| {
388 tonic::Status::new(
389 tonic::Code::Unknown,
390 format!("Service was not ready: {}", e.into()),
391 )
392 })?;
393 let codec = tonic::codec::ProstCodec::default();
394 let path = http::uri::PathAndQuery::from_static(
395 "/aruna.api.storage.services.v2.EndpointService/GetEndpoints",
396 );
397 let mut req = request.into_request();
398 req.extensions_mut()
399 .insert(
400 GrpcMethod::new(
401 "aruna.api.storage.services.v2.EndpointService",
402 "GetEndpoints",
403 ),
404 );
405 self.inner.unary(req, path, codec).await
406 }
407 pub async fn delete_endpoint(
414 &mut self,
415 request: impl tonic::IntoRequest<super::DeleteEndpointRequest>,
416 ) -> std::result::Result<
417 tonic::Response<super::DeleteEndpointResponse>,
418 tonic::Status,
419 > {
420 self.inner
421 .ready()
422 .await
423 .map_err(|e| {
424 tonic::Status::new(
425 tonic::Code::Unknown,
426 format!("Service was not ready: {}", e.into()),
427 )
428 })?;
429 let codec = tonic::codec::ProstCodec::default();
430 let path = http::uri::PathAndQuery::from_static(
431 "/aruna.api.storage.services.v2.EndpointService/DeleteEndpoint",
432 );
433 let mut req = request.into_request();
434 req.extensions_mut()
435 .insert(
436 GrpcMethod::new(
437 "aruna.api.storage.services.v2.EndpointService",
438 "DeleteEndpoint",
439 ),
440 );
441 self.inner.unary(req, path, codec).await
442 }
443 pub async fn get_default_endpoint(
450 &mut self,
451 request: impl tonic::IntoRequest<super::GetDefaultEndpointRequest>,
452 ) -> std::result::Result<
453 tonic::Response<super::GetDefaultEndpointResponse>,
454 tonic::Status,
455 > {
456 self.inner
457 .ready()
458 .await
459 .map_err(|e| {
460 tonic::Status::new(
461 tonic::Code::Unknown,
462 format!("Service was not ready: {}", e.into()),
463 )
464 })?;
465 let codec = tonic::codec::ProstCodec::default();
466 let path = http::uri::PathAndQuery::from_static(
467 "/aruna.api.storage.services.v2.EndpointService/GetDefaultEndpoint",
468 );
469 let mut req = request.into_request();
470 req.extensions_mut()
471 .insert(
472 GrpcMethod::new(
473 "aruna.api.storage.services.v2.EndpointService",
474 "GetDefaultEndpoint",
475 ),
476 );
477 self.inner.unary(req, path, codec).await
478 }
479 }
480}
481pub mod endpoint_service_server {
483 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
484 use tonic::codegen::*;
485 #[async_trait]
487 pub trait EndpointService: Send + Sync + 'static {
488 async fn create_endpoint(
495 &self,
496 request: tonic::Request<super::CreateEndpointRequest>,
497 ) -> std::result::Result<
498 tonic::Response<super::CreateEndpointResponse>,
499 tonic::Status,
500 >;
501 type FullSyncEndpointStream: tonic::codegen::tokio_stream::Stream<
503 Item = std::result::Result<
504 super::FullSyncEndpointResponse,
505 tonic::Status,
506 >,
507 >
508 + Send
509 + 'static;
510 async fn full_sync_endpoint(
516 &self,
517 request: tonic::Request<super::FullSyncEndpointRequest>,
518 ) -> std::result::Result<
519 tonic::Response<Self::FullSyncEndpointStream>,
520 tonic::Status,
521 >;
522 async fn set_endpoint_status(
528 &self,
529 request: tonic::Request<super::SetEndpointStatusRequest>,
530 ) -> std::result::Result<
531 tonic::Response<super::SetEndpointStatusResponse>,
532 tonic::Status,
533 >;
534 async fn get_endpoint(
540 &self,
541 request: tonic::Request<super::GetEndpointRequest>,
542 ) -> std::result::Result<
543 tonic::Response<super::GetEndpointResponse>,
544 tonic::Status,
545 >;
546 async fn get_endpoints(
552 &self,
553 request: tonic::Request<super::GetEndpointsRequest>,
554 ) -> std::result::Result<
555 tonic::Response<super::GetEndpointsResponse>,
556 tonic::Status,
557 >;
558 async fn delete_endpoint(
565 &self,
566 request: tonic::Request<super::DeleteEndpointRequest>,
567 ) -> std::result::Result<
568 tonic::Response<super::DeleteEndpointResponse>,
569 tonic::Status,
570 >;
571 async fn get_default_endpoint(
578 &self,
579 request: tonic::Request<super::GetDefaultEndpointRequest>,
580 ) -> std::result::Result<
581 tonic::Response<super::GetDefaultEndpointResponse>,
582 tonic::Status,
583 >;
584 }
585 #[derive(Debug)]
591 pub struct EndpointServiceServer<T: EndpointService> {
592 inner: _Inner<T>,
593 accept_compression_encodings: EnabledCompressionEncodings,
594 send_compression_encodings: EnabledCompressionEncodings,
595 max_decoding_message_size: Option<usize>,
596 max_encoding_message_size: Option<usize>,
597 }
598 struct _Inner<T>(Arc<T>);
599 impl<T: EndpointService> EndpointServiceServer<T> {
600 pub fn new(inner: T) -> Self {
601 Self::from_arc(Arc::new(inner))
602 }
603 pub fn from_arc(inner: Arc<T>) -> Self {
604 let inner = _Inner(inner);
605 Self {
606 inner,
607 accept_compression_encodings: Default::default(),
608 send_compression_encodings: Default::default(),
609 max_decoding_message_size: None,
610 max_encoding_message_size: None,
611 }
612 }
613 pub fn with_interceptor<F>(
614 inner: T,
615 interceptor: F,
616 ) -> InterceptedService<Self, F>
617 where
618 F: tonic::service::Interceptor,
619 {
620 InterceptedService::new(Self::new(inner), interceptor)
621 }
622 #[must_use]
624 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
625 self.accept_compression_encodings.enable(encoding);
626 self
627 }
628 #[must_use]
630 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
631 self.send_compression_encodings.enable(encoding);
632 self
633 }
634 #[must_use]
638 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
639 self.max_decoding_message_size = Some(limit);
640 self
641 }
642 #[must_use]
646 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
647 self.max_encoding_message_size = Some(limit);
648 self
649 }
650 }
651 impl<T, B> tonic::codegen::Service<http::Request<B>> for EndpointServiceServer<T>
652 where
653 T: EndpointService,
654 B: Body + Send + 'static,
655 B::Error: Into<StdError> + Send + 'static,
656 {
657 type Response = http::Response<tonic::body::BoxBody>;
658 type Error = std::convert::Infallible;
659 type Future = BoxFuture<Self::Response, Self::Error>;
660 fn poll_ready(
661 &mut self,
662 _cx: &mut Context<'_>,
663 ) -> Poll<std::result::Result<(), Self::Error>> {
664 Poll::Ready(Ok(()))
665 }
666 fn call(&mut self, req: http::Request<B>) -> Self::Future {
667 let inner = self.inner.clone();
668 match req.uri().path() {
669 "/aruna.api.storage.services.v2.EndpointService/CreateEndpoint" => {
670 #[allow(non_camel_case_types)]
671 struct CreateEndpointSvc<T: EndpointService>(pub Arc<T>);
672 impl<
673 T: EndpointService,
674 > tonic::server::UnaryService<super::CreateEndpointRequest>
675 for CreateEndpointSvc<T> {
676 type Response = super::CreateEndpointResponse;
677 type Future = BoxFuture<
678 tonic::Response<Self::Response>,
679 tonic::Status,
680 >;
681 fn call(
682 &mut self,
683 request: tonic::Request<super::CreateEndpointRequest>,
684 ) -> Self::Future {
685 let inner = Arc::clone(&self.0);
686 let fut = async move {
687 <T as EndpointService>::create_endpoint(&inner, request)
688 .await
689 };
690 Box::pin(fut)
691 }
692 }
693 let accept_compression_encodings = self.accept_compression_encodings;
694 let send_compression_encodings = self.send_compression_encodings;
695 let max_decoding_message_size = self.max_decoding_message_size;
696 let max_encoding_message_size = self.max_encoding_message_size;
697 let inner = self.inner.clone();
698 let fut = async move {
699 let inner = inner.0;
700 let method = CreateEndpointSvc(inner);
701 let codec = tonic::codec::ProstCodec::default();
702 let mut grpc = tonic::server::Grpc::new(codec)
703 .apply_compression_config(
704 accept_compression_encodings,
705 send_compression_encodings,
706 )
707 .apply_max_message_size_config(
708 max_decoding_message_size,
709 max_encoding_message_size,
710 );
711 let res = grpc.unary(method, req).await;
712 Ok(res)
713 };
714 Box::pin(fut)
715 }
716 "/aruna.api.storage.services.v2.EndpointService/FullSyncEndpoint" => {
717 #[allow(non_camel_case_types)]
718 struct FullSyncEndpointSvc<T: EndpointService>(pub Arc<T>);
719 impl<
720 T: EndpointService,
721 > tonic::server::ServerStreamingService<
722 super::FullSyncEndpointRequest,
723 > for FullSyncEndpointSvc<T> {
724 type Response = super::FullSyncEndpointResponse;
725 type ResponseStream = T::FullSyncEndpointStream;
726 type Future = BoxFuture<
727 tonic::Response<Self::ResponseStream>,
728 tonic::Status,
729 >;
730 fn call(
731 &mut self,
732 request: tonic::Request<super::FullSyncEndpointRequest>,
733 ) -> Self::Future {
734 let inner = Arc::clone(&self.0);
735 let fut = async move {
736 <T as EndpointService>::full_sync_endpoint(&inner, request)
737 .await
738 };
739 Box::pin(fut)
740 }
741 }
742 let accept_compression_encodings = self.accept_compression_encodings;
743 let send_compression_encodings = self.send_compression_encodings;
744 let max_decoding_message_size = self.max_decoding_message_size;
745 let max_encoding_message_size = self.max_encoding_message_size;
746 let inner = self.inner.clone();
747 let fut = async move {
748 let inner = inner.0;
749 let method = FullSyncEndpointSvc(inner);
750 let codec = tonic::codec::ProstCodec::default();
751 let mut grpc = tonic::server::Grpc::new(codec)
752 .apply_compression_config(
753 accept_compression_encodings,
754 send_compression_encodings,
755 )
756 .apply_max_message_size_config(
757 max_decoding_message_size,
758 max_encoding_message_size,
759 );
760 let res = grpc.server_streaming(method, req).await;
761 Ok(res)
762 };
763 Box::pin(fut)
764 }
765 "/aruna.api.storage.services.v2.EndpointService/SetEndpointStatus" => {
766 #[allow(non_camel_case_types)]
767 struct SetEndpointStatusSvc<T: EndpointService>(pub Arc<T>);
768 impl<
769 T: EndpointService,
770 > tonic::server::UnaryService<super::SetEndpointStatusRequest>
771 for SetEndpointStatusSvc<T> {
772 type Response = super::SetEndpointStatusResponse;
773 type Future = BoxFuture<
774 tonic::Response<Self::Response>,
775 tonic::Status,
776 >;
777 fn call(
778 &mut self,
779 request: tonic::Request<super::SetEndpointStatusRequest>,
780 ) -> Self::Future {
781 let inner = Arc::clone(&self.0);
782 let fut = async move {
783 <T as EndpointService>::set_endpoint_status(&inner, request)
784 .await
785 };
786 Box::pin(fut)
787 }
788 }
789 let accept_compression_encodings = self.accept_compression_encodings;
790 let send_compression_encodings = self.send_compression_encodings;
791 let max_decoding_message_size = self.max_decoding_message_size;
792 let max_encoding_message_size = self.max_encoding_message_size;
793 let inner = self.inner.clone();
794 let fut = async move {
795 let inner = inner.0;
796 let method = SetEndpointStatusSvc(inner);
797 let codec = tonic::codec::ProstCodec::default();
798 let mut grpc = tonic::server::Grpc::new(codec)
799 .apply_compression_config(
800 accept_compression_encodings,
801 send_compression_encodings,
802 )
803 .apply_max_message_size_config(
804 max_decoding_message_size,
805 max_encoding_message_size,
806 );
807 let res = grpc.unary(method, req).await;
808 Ok(res)
809 };
810 Box::pin(fut)
811 }
812 "/aruna.api.storage.services.v2.EndpointService/GetEndpoint" => {
813 #[allow(non_camel_case_types)]
814 struct GetEndpointSvc<T: EndpointService>(pub Arc<T>);
815 impl<
816 T: EndpointService,
817 > tonic::server::UnaryService<super::GetEndpointRequest>
818 for GetEndpointSvc<T> {
819 type Response = super::GetEndpointResponse;
820 type Future = BoxFuture<
821 tonic::Response<Self::Response>,
822 tonic::Status,
823 >;
824 fn call(
825 &mut self,
826 request: tonic::Request<super::GetEndpointRequest>,
827 ) -> Self::Future {
828 let inner = Arc::clone(&self.0);
829 let fut = async move {
830 <T as EndpointService>::get_endpoint(&inner, request).await
831 };
832 Box::pin(fut)
833 }
834 }
835 let accept_compression_encodings = self.accept_compression_encodings;
836 let send_compression_encodings = self.send_compression_encodings;
837 let max_decoding_message_size = self.max_decoding_message_size;
838 let max_encoding_message_size = self.max_encoding_message_size;
839 let inner = self.inner.clone();
840 let fut = async move {
841 let inner = inner.0;
842 let method = GetEndpointSvc(inner);
843 let codec = tonic::codec::ProstCodec::default();
844 let mut grpc = tonic::server::Grpc::new(codec)
845 .apply_compression_config(
846 accept_compression_encodings,
847 send_compression_encodings,
848 )
849 .apply_max_message_size_config(
850 max_decoding_message_size,
851 max_encoding_message_size,
852 );
853 let res = grpc.unary(method, req).await;
854 Ok(res)
855 };
856 Box::pin(fut)
857 }
858 "/aruna.api.storage.services.v2.EndpointService/GetEndpoints" => {
859 #[allow(non_camel_case_types)]
860 struct GetEndpointsSvc<T: EndpointService>(pub Arc<T>);
861 impl<
862 T: EndpointService,
863 > tonic::server::UnaryService<super::GetEndpointsRequest>
864 for GetEndpointsSvc<T> {
865 type Response = super::GetEndpointsResponse;
866 type Future = BoxFuture<
867 tonic::Response<Self::Response>,
868 tonic::Status,
869 >;
870 fn call(
871 &mut self,
872 request: tonic::Request<super::GetEndpointsRequest>,
873 ) -> Self::Future {
874 let inner = Arc::clone(&self.0);
875 let fut = async move {
876 <T as EndpointService>::get_endpoints(&inner, request).await
877 };
878 Box::pin(fut)
879 }
880 }
881 let accept_compression_encodings = self.accept_compression_encodings;
882 let send_compression_encodings = self.send_compression_encodings;
883 let max_decoding_message_size = self.max_decoding_message_size;
884 let max_encoding_message_size = self.max_encoding_message_size;
885 let inner = self.inner.clone();
886 let fut = async move {
887 let inner = inner.0;
888 let method = GetEndpointsSvc(inner);
889 let codec = tonic::codec::ProstCodec::default();
890 let mut grpc = tonic::server::Grpc::new(codec)
891 .apply_compression_config(
892 accept_compression_encodings,
893 send_compression_encodings,
894 )
895 .apply_max_message_size_config(
896 max_decoding_message_size,
897 max_encoding_message_size,
898 );
899 let res = grpc.unary(method, req).await;
900 Ok(res)
901 };
902 Box::pin(fut)
903 }
904 "/aruna.api.storage.services.v2.EndpointService/DeleteEndpoint" => {
905 #[allow(non_camel_case_types)]
906 struct DeleteEndpointSvc<T: EndpointService>(pub Arc<T>);
907 impl<
908 T: EndpointService,
909 > tonic::server::UnaryService<super::DeleteEndpointRequest>
910 for DeleteEndpointSvc<T> {
911 type Response = super::DeleteEndpointResponse;
912 type Future = BoxFuture<
913 tonic::Response<Self::Response>,
914 tonic::Status,
915 >;
916 fn call(
917 &mut self,
918 request: tonic::Request<super::DeleteEndpointRequest>,
919 ) -> Self::Future {
920 let inner = Arc::clone(&self.0);
921 let fut = async move {
922 <T as EndpointService>::delete_endpoint(&inner, request)
923 .await
924 };
925 Box::pin(fut)
926 }
927 }
928 let accept_compression_encodings = self.accept_compression_encodings;
929 let send_compression_encodings = self.send_compression_encodings;
930 let max_decoding_message_size = self.max_decoding_message_size;
931 let max_encoding_message_size = self.max_encoding_message_size;
932 let inner = self.inner.clone();
933 let fut = async move {
934 let inner = inner.0;
935 let method = DeleteEndpointSvc(inner);
936 let codec = tonic::codec::ProstCodec::default();
937 let mut grpc = tonic::server::Grpc::new(codec)
938 .apply_compression_config(
939 accept_compression_encodings,
940 send_compression_encodings,
941 )
942 .apply_max_message_size_config(
943 max_decoding_message_size,
944 max_encoding_message_size,
945 );
946 let res = grpc.unary(method, req).await;
947 Ok(res)
948 };
949 Box::pin(fut)
950 }
951 "/aruna.api.storage.services.v2.EndpointService/GetDefaultEndpoint" => {
952 #[allow(non_camel_case_types)]
953 struct GetDefaultEndpointSvc<T: EndpointService>(pub Arc<T>);
954 impl<
955 T: EndpointService,
956 > tonic::server::UnaryService<super::GetDefaultEndpointRequest>
957 for GetDefaultEndpointSvc<T> {
958 type Response = super::GetDefaultEndpointResponse;
959 type Future = BoxFuture<
960 tonic::Response<Self::Response>,
961 tonic::Status,
962 >;
963 fn call(
964 &mut self,
965 request: tonic::Request<super::GetDefaultEndpointRequest>,
966 ) -> Self::Future {
967 let inner = Arc::clone(&self.0);
968 let fut = async move {
969 <T as EndpointService>::get_default_endpoint(
970 &inner,
971 request,
972 )
973 .await
974 };
975 Box::pin(fut)
976 }
977 }
978 let accept_compression_encodings = self.accept_compression_encodings;
979 let send_compression_encodings = self.send_compression_encodings;
980 let max_decoding_message_size = self.max_decoding_message_size;
981 let max_encoding_message_size = self.max_encoding_message_size;
982 let inner = self.inner.clone();
983 let fut = async move {
984 let inner = inner.0;
985 let method = GetDefaultEndpointSvc(inner);
986 let codec = tonic::codec::ProstCodec::default();
987 let mut grpc = tonic::server::Grpc::new(codec)
988 .apply_compression_config(
989 accept_compression_encodings,
990 send_compression_encodings,
991 )
992 .apply_max_message_size_config(
993 max_decoding_message_size,
994 max_encoding_message_size,
995 );
996 let res = grpc.unary(method, req).await;
997 Ok(res)
998 };
999 Box::pin(fut)
1000 }
1001 _ => {
1002 Box::pin(async move {
1003 Ok(
1004 http::Response::builder()
1005 .status(200)
1006 .header("grpc-status", "12")
1007 .header("content-type", "application/grpc")
1008 .body(empty_body())
1009 .unwrap(),
1010 )
1011 })
1012 }
1013 }
1014 }
1015 }
1016 impl<T: EndpointService> Clone for EndpointServiceServer<T> {
1017 fn clone(&self) -> Self {
1018 let inner = self.inner.clone();
1019 Self {
1020 inner,
1021 accept_compression_encodings: self.accept_compression_encodings,
1022 send_compression_encodings: self.send_compression_encodings,
1023 max_decoding_message_size: self.max_decoding_message_size,
1024 max_encoding_message_size: self.max_encoding_message_size,
1025 }
1026 }
1027 }
1028 impl<T: EndpointService> Clone for _Inner<T> {
1029 fn clone(&self) -> Self {
1030 Self(Arc::clone(&self.0))
1031 }
1032 }
1033 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
1034 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
1035 write!(f, "{:?}", self.0)
1036 }
1037 }
1038 impl<T: EndpointService> tonic::server::NamedService for EndpointServiceServer<T> {
1039 const NAME: &'static str = "aruna.api.storage.services.v2.EndpointService";
1040 }
1041}
1042#[derive(serde::Deserialize, serde::Serialize)]
1043#[allow(clippy::derive_partial_eq_without_eq)]
1044#[derive(Clone, PartialEq, ::prost::Message)]
1045pub struct CreateServiceAccountRequest {
1046 #[prost(string, tag = "1")]
1047 pub name: ::prost::alloc::string::String,
1048 #[prost(string, tag = "2")]
1049 pub project_id: ::prost::alloc::string::String,
1050 #[prost(enumeration = "super::super::models::v2::PermissionLevel", tag = "3")]
1051 pub permission_level: i32,
1052}
1053#[derive(serde::Deserialize, serde::Serialize)]
1054#[allow(clippy::derive_partial_eq_without_eq)]
1055#[derive(Clone, PartialEq, ::prost::Message)]
1056pub struct ServiceAccount {
1057 #[prost(string, tag = "1")]
1058 pub svc_account_id: ::prost::alloc::string::String,
1059 #[prost(string, tag = "2")]
1060 pub name: ::prost::alloc::string::String,
1061 #[prost(message, optional, tag = "3")]
1062 pub permission: ::core::option::Option<super::super::models::v2::Permission>,
1063}
1064#[derive(serde::Deserialize, serde::Serialize)]
1065#[allow(clippy::derive_partial_eq_without_eq)]
1066#[derive(Clone, PartialEq, ::prost::Message)]
1067pub struct CreateServiceAccountResponse {
1068 #[prost(message, optional, tag = "1")]
1069 pub service_account: ::core::option::Option<ServiceAccount>,
1070}
1071#[derive(serde::Deserialize, serde::Serialize)]
1072#[allow(clippy::derive_partial_eq_without_eq)]
1073#[derive(Clone, PartialEq, ::prost::Message)]
1074pub struct CreateServiceAccountTokenRequest {
1075 #[prost(string, tag = "1")]
1076 pub svc_account_id: ::prost::alloc::string::String,
1077 #[prost(message, optional, tag = "2")]
1079 pub permission: ::core::option::Option<super::super::models::v2::Permission>,
1080 #[prost(string, tag = "3")]
1082 pub name: ::prost::alloc::string::String,
1083 #[prost(message, optional, tag = "4")]
1085 pub expires_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
1086}
1087#[derive(serde::Deserialize, serde::Serialize)]
1088#[allow(clippy::derive_partial_eq_without_eq)]
1089#[derive(Clone, PartialEq, ::prost::Message)]
1090pub struct CreateServiceAccountTokenResponse {
1091 #[prost(message, optional, tag = "1")]
1093 pub token: ::core::option::Option<super::super::models::v2::Token>,
1094 #[prost(string, tag = "2")]
1096 pub token_secret: ::prost::alloc::string::String,
1097}
1098#[derive(serde::Deserialize, serde::Serialize)]
1099#[allow(clippy::derive_partial_eq_without_eq)]
1100#[derive(Clone, PartialEq, ::prost::Message)]
1101pub struct GetServiceAccountTokenRequest {
1102 #[prost(string, tag = "1")]
1103 pub svc_account_id: ::prost::alloc::string::String,
1104 #[prost(string, tag = "2")]
1105 pub token_id: ::prost::alloc::string::String,
1106}
1107#[derive(serde::Deserialize, serde::Serialize)]
1108#[allow(clippy::derive_partial_eq_without_eq)]
1109#[derive(Clone, PartialEq, ::prost::Message)]
1110pub struct GetServiceAccountTokenResponse {
1111 #[prost(message, optional, tag = "1")]
1113 pub token: ::core::option::Option<super::super::models::v2::Token>,
1114}
1115#[derive(serde::Deserialize, serde::Serialize)]
1116#[allow(clippy::derive_partial_eq_without_eq)]
1117#[derive(Clone, PartialEq, ::prost::Message)]
1118pub struct GetServiceAccountTokensRequest {
1119 #[prost(string, tag = "1")]
1120 pub svc_account_id: ::prost::alloc::string::String,
1121}
1122#[derive(serde::Deserialize, serde::Serialize)]
1123#[allow(clippy::derive_partial_eq_without_eq)]
1124#[derive(Clone, PartialEq, ::prost::Message)]
1125pub struct GetServiceAccountTokensResponse {
1126 #[prost(message, repeated, tag = "1")]
1128 pub tokens: ::prost::alloc::vec::Vec<super::super::models::v2::Token>,
1129}
1130#[derive(serde::Deserialize, serde::Serialize)]
1131#[allow(clippy::derive_partial_eq_without_eq)]
1132#[derive(Clone, PartialEq, ::prost::Message)]
1133pub struct DeleteServiceAccountTokenRequest {
1134 #[prost(string, tag = "1")]
1135 pub svc_account_id: ::prost::alloc::string::String,
1136 #[prost(string, tag = "2")]
1137 pub token_id: ::prost::alloc::string::String,
1138}
1139#[derive(serde::Deserialize, serde::Serialize)]
1140#[allow(clippy::derive_partial_eq_without_eq)]
1141#[derive(Clone, PartialEq, ::prost::Message)]
1142pub struct DeleteServiceAccountTokenResponse {}
1143#[derive(serde::Deserialize, serde::Serialize)]
1144#[allow(clippy::derive_partial_eq_without_eq)]
1145#[derive(Clone, PartialEq, ::prost::Message)]
1146pub struct DeleteServiceAccountTokensRequest {
1147 #[prost(string, tag = "1")]
1148 pub svc_account_id: ::prost::alloc::string::String,
1149}
1150#[derive(serde::Deserialize, serde::Serialize)]
1151#[allow(clippy::derive_partial_eq_without_eq)]
1152#[derive(Clone, PartialEq, ::prost::Message)]
1153pub struct DeleteServiceAccountTokensResponse {}
1154#[derive(serde::Deserialize, serde::Serialize)]
1155#[allow(clippy::derive_partial_eq_without_eq)]
1156#[derive(Clone, PartialEq, ::prost::Message)]
1157pub struct DeleteServiceAccountRequest {
1158 #[prost(string, tag = "1")]
1159 pub svc_account_id: ::prost::alloc::string::String,
1160}
1161#[derive(serde::Deserialize, serde::Serialize)]
1162#[allow(clippy::derive_partial_eq_without_eq)]
1163#[derive(Clone, PartialEq, ::prost::Message)]
1164pub struct DeleteServiceAccountResponse {}
1165#[derive(serde::Deserialize, serde::Serialize)]
1166#[allow(clippy::derive_partial_eq_without_eq)]
1167#[derive(Clone, PartialEq, ::prost::Message)]
1168pub struct CreateS3CredentialsSvcAccountRequest {
1169 #[prost(string, tag = "1")]
1170 pub svc_account_id: ::prost::alloc::string::String,
1171 #[prost(string, tag = "2")]
1172 pub endpoint_id: ::prost::alloc::string::String,
1173}
1174#[derive(serde::Deserialize, serde::Serialize)]
1175#[allow(clippy::derive_partial_eq_without_eq)]
1176#[derive(Clone, PartialEq, ::prost::Message)]
1177pub struct CreateS3CredentialsSvcAccountResponse {
1178 #[prost(string, tag = "1")]
1179 pub s3_access_key: ::prost::alloc::string::String,
1180 #[prost(string, tag = "2")]
1181 pub s3_secret_key: ::prost::alloc::string::String,
1182 #[prost(string, tag = "3")]
1183 pub s3_endpoint_url: ::prost::alloc::string::String,
1184}
1185#[derive(serde::Deserialize, serde::Serialize)]
1186#[allow(clippy::derive_partial_eq_without_eq)]
1187#[derive(Clone, PartialEq, ::prost::Message)]
1188pub struct GetS3CredentialsSvcAccountRequest {
1189 #[prost(string, tag = "1")]
1191 pub svc_account_id: ::prost::alloc::string::String,
1192 #[prost(string, tag = "2")]
1193 pub endpoint_id: ::prost::alloc::string::String,
1194}
1195#[derive(serde::Deserialize, serde::Serialize)]
1196#[allow(clippy::derive_partial_eq_without_eq)]
1197#[derive(Clone, PartialEq, ::prost::Message)]
1198pub struct GetS3CredentialsSvcAccountResponse {
1199 #[prost(string, tag = "1")]
1200 pub s3_access_key: ::prost::alloc::string::String,
1201 #[prost(string, tag = "2")]
1202 pub s3_secret_key: ::prost::alloc::string::String,
1203 #[prost(string, tag = "3")]
1204 pub s3_endpoint_url: ::prost::alloc::string::String,
1205}
1206#[derive(serde::Deserialize, serde::Serialize)]
1207#[allow(clippy::derive_partial_eq_without_eq)]
1208#[derive(Clone, PartialEq, ::prost::Message)]
1209pub struct DeleteS3CredentialsSvcAccountRequest {
1210 #[prost(string, tag = "1")]
1211 pub svc_account_id: ::prost::alloc::string::String,
1212 #[prost(string, tag = "2")]
1213 pub endpoint_id: ::prost::alloc::string::String,
1214}
1215#[derive(serde::Deserialize, serde::Serialize)]
1216#[allow(clippy::derive_partial_eq_without_eq)]
1217#[derive(Clone, PartialEq, ::prost::Message)]
1218pub struct DeleteS3CredentialsSvcAccountResponse {}
1219#[derive(serde::Deserialize, serde::Serialize)]
1220#[allow(clippy::derive_partial_eq_without_eq)]
1221#[derive(Clone, PartialEq, ::prost::Message)]
1222pub struct CreateDataproxyTokenSvcAccountRequest {
1223 #[prost(string, tag = "1")]
1225 pub svc_account_id: ::prost::alloc::string::String,
1226 #[prost(message, optional, tag = "3")]
1228 pub context: ::core::option::Option<super::super::models::v2::Context>,
1229 #[prost(string, tag = "2")]
1230 pub endpoint_id: ::prost::alloc::string::String,
1231}
1232#[derive(serde::Deserialize, serde::Serialize)]
1233#[allow(clippy::derive_partial_eq_without_eq)]
1234#[derive(Clone, PartialEq, ::prost::Message)]
1235pub struct CreateDataproxyTokenSvcAccountResponse {
1236 #[prost(string, tag = "1")]
1237 pub token: ::prost::alloc::string::String,
1238}
1239#[derive(serde::Deserialize, serde::Serialize)]
1240#[allow(clippy::derive_partial_eq_without_eq)]
1241#[derive(Clone, PartialEq, ::prost::Message)]
1242pub struct AddPubkeySvcAccountRequest {
1243 #[prost(string, tag = "1")]
1244 pub svc_account_id: ::prost::alloc::string::String,
1245 #[prost(string, tag = "2")]
1246 pub public_key: ::prost::alloc::string::String,
1247}
1248#[derive(serde::Deserialize, serde::Serialize)]
1249#[allow(clippy::derive_partial_eq_without_eq)]
1250#[derive(Clone, PartialEq, ::prost::Message)]
1251pub struct AddPubkeySvcAccountResponse {}
1252#[derive(serde::Deserialize, serde::Serialize)]
1253#[allow(clippy::derive_partial_eq_without_eq)]
1254#[derive(Clone, PartialEq, ::prost::Message)]
1255pub struct AddTrustedEndpointsSvcAccountRequest {
1256 #[prost(string, tag = "1")]
1257 pub svc_account_id: ::prost::alloc::string::String,
1258 #[prost(string, tag = "2")]
1259 pub endpoint_id: ::prost::alloc::string::String,
1260}
1261#[derive(serde::Deserialize, serde::Serialize)]
1262#[allow(clippy::derive_partial_eq_without_eq)]
1263#[derive(Clone, PartialEq, ::prost::Message)]
1264pub struct AddTrustedEndpointsSvcAccountResponse {}
1265#[derive(serde::Deserialize, serde::Serialize)]
1266#[allow(clippy::derive_partial_eq_without_eq)]
1267#[derive(Clone, PartialEq, ::prost::Message)]
1268pub struct RemoveTrustedEndpointsSvcAccountRequest {
1269 #[prost(string, tag = "1")]
1270 pub svc_account_id: ::prost::alloc::string::String,
1271 #[prost(string, tag = "2")]
1272 pub endpoint_id: ::prost::alloc::string::String,
1273}
1274#[derive(serde::Deserialize, serde::Serialize)]
1275#[allow(clippy::derive_partial_eq_without_eq)]
1276#[derive(Clone, PartialEq, ::prost::Message)]
1277pub struct RemoveTrustedEndpointsSvcAccountResponse {}
1278#[derive(serde::Deserialize, serde::Serialize)]
1279#[allow(clippy::derive_partial_eq_without_eq)]
1280#[derive(Clone, PartialEq, ::prost::Message)]
1281pub struct AddDataProxyAttributeSvcAccountRequest {
1282 #[prost(string, tag = "1")]
1283 pub svc_account_id: ::prost::alloc::string::String,
1284 #[prost(message, optional, tag = "2")]
1285 pub attribute: ::core::option::Option<super::super::models::v2::DataProxyAttribute>,
1286}
1287#[derive(serde::Deserialize, serde::Serialize)]
1288#[allow(clippy::derive_partial_eq_without_eq)]
1289#[derive(Clone, PartialEq, ::prost::Message)]
1290pub struct AddDataProxyAttributeSvcAccountResponse {}
1291#[derive(serde::Deserialize, serde::Serialize)]
1292#[allow(clippy::derive_partial_eq_without_eq)]
1293#[derive(Clone, PartialEq, ::prost::Message)]
1294pub struct RemoveDataProxyAttributeSvcAccountRequest {
1295 #[prost(string, tag = "1")]
1296 pub svc_account_id: ::prost::alloc::string::String,
1297 #[prost(string, tag = "2")]
1298 pub dataproxy_id: ::prost::alloc::string::String,
1299 #[prost(string, tag = "3")]
1300 pub attribute_name: ::prost::alloc::string::String,
1301}
1302#[derive(serde::Deserialize, serde::Serialize)]
1303#[allow(clippy::derive_partial_eq_without_eq)]
1304#[derive(Clone, PartialEq, ::prost::Message)]
1305pub struct RemoveDataProxyAttributeSvcAccountResponse {}
1306pub mod service_account_service_client {
1308 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
1309 use tonic::codegen::*;
1310 use tonic::codegen::http::Uri;
1311 #[derive(Debug, Clone)]
1318 pub struct ServiceAccountServiceClient<T> {
1319 inner: tonic::client::Grpc<T>,
1320 }
1321 impl ServiceAccountServiceClient<tonic::transport::Channel> {
1322 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
1324 where
1325 D: TryInto<tonic::transport::Endpoint>,
1326 D::Error: Into<StdError>,
1327 {
1328 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
1329 Ok(Self::new(conn))
1330 }
1331 }
1332 impl<T> ServiceAccountServiceClient<T>
1333 where
1334 T: tonic::client::GrpcService<tonic::body::BoxBody>,
1335 T::Error: Into<StdError>,
1336 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
1337 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
1338 {
1339 pub fn new(inner: T) -> Self {
1340 let inner = tonic::client::Grpc::new(inner);
1341 Self { inner }
1342 }
1343 pub fn with_origin(inner: T, origin: Uri) -> Self {
1344 let inner = tonic::client::Grpc::with_origin(inner, origin);
1345 Self { inner }
1346 }
1347 pub fn with_interceptor<F>(
1348 inner: T,
1349 interceptor: F,
1350 ) -> ServiceAccountServiceClient<InterceptedService<T, F>>
1351 where
1352 F: tonic::service::Interceptor,
1353 T::ResponseBody: Default,
1354 T: tonic::codegen::Service<
1355 http::Request<tonic::body::BoxBody>,
1356 Response = http::Response<
1357 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
1358 >,
1359 >,
1360 <T as tonic::codegen::Service<
1361 http::Request<tonic::body::BoxBody>,
1362 >>::Error: Into<StdError> + Send + Sync,
1363 {
1364 ServiceAccountServiceClient::new(InterceptedService::new(inner, interceptor))
1365 }
1366 #[must_use]
1371 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
1372 self.inner = self.inner.send_compressed(encoding);
1373 self
1374 }
1375 #[must_use]
1377 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
1378 self.inner = self.inner.accept_compressed(encoding);
1379 self
1380 }
1381 #[must_use]
1385 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
1386 self.inner = self.inner.max_decoding_message_size(limit);
1387 self
1388 }
1389 #[must_use]
1393 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
1394 self.inner = self.inner.max_encoding_message_size(limit);
1395 self
1396 }
1397 pub async fn create_service_account(
1405 &mut self,
1406 request: impl tonic::IntoRequest<super::CreateServiceAccountRequest>,
1407 ) -> std::result::Result<
1408 tonic::Response<super::CreateServiceAccountResponse>,
1409 tonic::Status,
1410 > {
1411 self.inner
1412 .ready()
1413 .await
1414 .map_err(|e| {
1415 tonic::Status::new(
1416 tonic::Code::Unknown,
1417 format!("Service was not ready: {}", e.into()),
1418 )
1419 })?;
1420 let codec = tonic::codec::ProstCodec::default();
1421 let path = http::uri::PathAndQuery::from_static(
1422 "/aruna.api.storage.services.v2.ServiceAccountService/CreateServiceAccount",
1423 );
1424 let mut req = request.into_request();
1425 req.extensions_mut()
1426 .insert(
1427 GrpcMethod::new(
1428 "aruna.api.storage.services.v2.ServiceAccountService",
1429 "CreateServiceAccount",
1430 ),
1431 );
1432 self.inner.unary(req, path, codec).await
1433 }
1434 pub async fn create_service_account_token(
1442 &mut self,
1443 request: impl tonic::IntoRequest<super::CreateServiceAccountTokenRequest>,
1444 ) -> std::result::Result<
1445 tonic::Response<super::CreateServiceAccountTokenResponse>,
1446 tonic::Status,
1447 > {
1448 self.inner
1449 .ready()
1450 .await
1451 .map_err(|e| {
1452 tonic::Status::new(
1453 tonic::Code::Unknown,
1454 format!("Service was not ready: {}", e.into()),
1455 )
1456 })?;
1457 let codec = tonic::codec::ProstCodec::default();
1458 let path = http::uri::PathAndQuery::from_static(
1459 "/aruna.api.storage.services.v2.ServiceAccountService/CreateServiceAccountToken",
1460 );
1461 let mut req = request.into_request();
1462 req.extensions_mut()
1463 .insert(
1464 GrpcMethod::new(
1465 "aruna.api.storage.services.v2.ServiceAccountService",
1466 "CreateServiceAccountToken",
1467 ),
1468 );
1469 self.inner.unary(req, path, codec).await
1470 }
1471 pub async fn get_service_account_token(
1478 &mut self,
1479 request: impl tonic::IntoRequest<super::GetServiceAccountTokenRequest>,
1480 ) -> std::result::Result<
1481 tonic::Response<super::GetServiceAccountTokenResponse>,
1482 tonic::Status,
1483 > {
1484 self.inner
1485 .ready()
1486 .await
1487 .map_err(|e| {
1488 tonic::Status::new(
1489 tonic::Code::Unknown,
1490 format!("Service was not ready: {}", e.into()),
1491 )
1492 })?;
1493 let codec = tonic::codec::ProstCodec::default();
1494 let path = http::uri::PathAndQuery::from_static(
1495 "/aruna.api.storage.services.v2.ServiceAccountService/GetServiceAccountToken",
1496 );
1497 let mut req = request.into_request();
1498 req.extensions_mut()
1499 .insert(
1500 GrpcMethod::new(
1501 "aruna.api.storage.services.v2.ServiceAccountService",
1502 "GetServiceAccountToken",
1503 ),
1504 );
1505 self.inner.unary(req, path, codec).await
1506 }
1507 pub async fn get_service_account_tokens(
1514 &mut self,
1515 request: impl tonic::IntoRequest<super::GetServiceAccountTokensRequest>,
1516 ) -> std::result::Result<
1517 tonic::Response<super::GetServiceAccountTokensResponse>,
1518 tonic::Status,
1519 > {
1520 self.inner
1521 .ready()
1522 .await
1523 .map_err(|e| {
1524 tonic::Status::new(
1525 tonic::Code::Unknown,
1526 format!("Service was not ready: {}", e.into()),
1527 )
1528 })?;
1529 let codec = tonic::codec::ProstCodec::default();
1530 let path = http::uri::PathAndQuery::from_static(
1531 "/aruna.api.storage.services.v2.ServiceAccountService/GetServiceAccountTokens",
1532 );
1533 let mut req = request.into_request();
1534 req.extensions_mut()
1535 .insert(
1536 GrpcMethod::new(
1537 "aruna.api.storage.services.v2.ServiceAccountService",
1538 "GetServiceAccountTokens",
1539 ),
1540 );
1541 self.inner.unary(req, path, codec).await
1542 }
1543 pub async fn delete_service_account_token(
1549 &mut self,
1550 request: impl tonic::IntoRequest<super::DeleteServiceAccountTokenRequest>,
1551 ) -> std::result::Result<
1552 tonic::Response<super::DeleteServiceAccountTokenResponse>,
1553 tonic::Status,
1554 > {
1555 self.inner
1556 .ready()
1557 .await
1558 .map_err(|e| {
1559 tonic::Status::new(
1560 tonic::Code::Unknown,
1561 format!("Service was not ready: {}", e.into()),
1562 )
1563 })?;
1564 let codec = tonic::codec::ProstCodec::default();
1565 let path = http::uri::PathAndQuery::from_static(
1566 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteServiceAccountToken",
1567 );
1568 let mut req = request.into_request();
1569 req.extensions_mut()
1570 .insert(
1571 GrpcMethod::new(
1572 "aruna.api.storage.services.v2.ServiceAccountService",
1573 "DeleteServiceAccountToken",
1574 ),
1575 );
1576 self.inner.unary(req, path, codec).await
1577 }
1578 pub async fn delete_service_account_tokens(
1584 &mut self,
1585 request: impl tonic::IntoRequest<super::DeleteServiceAccountTokensRequest>,
1586 ) -> std::result::Result<
1587 tonic::Response<super::DeleteServiceAccountTokensResponse>,
1588 tonic::Status,
1589 > {
1590 self.inner
1591 .ready()
1592 .await
1593 .map_err(|e| {
1594 tonic::Status::new(
1595 tonic::Code::Unknown,
1596 format!("Service was not ready: {}", e.into()),
1597 )
1598 })?;
1599 let codec = tonic::codec::ProstCodec::default();
1600 let path = http::uri::PathAndQuery::from_static(
1601 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteServiceAccountTokens",
1602 );
1603 let mut req = request.into_request();
1604 req.extensions_mut()
1605 .insert(
1606 GrpcMethod::new(
1607 "aruna.api.storage.services.v2.ServiceAccountService",
1608 "DeleteServiceAccountTokens",
1609 ),
1610 );
1611 self.inner.unary(req, path, codec).await
1612 }
1613 pub async fn delete_service_account(
1619 &mut self,
1620 request: impl tonic::IntoRequest<super::DeleteServiceAccountRequest>,
1621 ) -> std::result::Result<
1622 tonic::Response<super::DeleteServiceAccountResponse>,
1623 tonic::Status,
1624 > {
1625 self.inner
1626 .ready()
1627 .await
1628 .map_err(|e| {
1629 tonic::Status::new(
1630 tonic::Code::Unknown,
1631 format!("Service was not ready: {}", e.into()),
1632 )
1633 })?;
1634 let codec = tonic::codec::ProstCodec::default();
1635 let path = http::uri::PathAndQuery::from_static(
1636 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteServiceAccount",
1637 );
1638 let mut req = request.into_request();
1639 req.extensions_mut()
1640 .insert(
1641 GrpcMethod::new(
1642 "aruna.api.storage.services.v2.ServiceAccountService",
1643 "DeleteServiceAccount",
1644 ),
1645 );
1646 self.inner.unary(req, path, codec).await
1647 }
1648 pub async fn create_s3_credentials_svc_account(
1654 &mut self,
1655 request: impl tonic::IntoRequest<super::CreateS3CredentialsSvcAccountRequest>,
1656 ) -> std::result::Result<
1657 tonic::Response<super::CreateS3CredentialsSvcAccountResponse>,
1658 tonic::Status,
1659 > {
1660 self.inner
1661 .ready()
1662 .await
1663 .map_err(|e| {
1664 tonic::Status::new(
1665 tonic::Code::Unknown,
1666 format!("Service was not ready: {}", e.into()),
1667 )
1668 })?;
1669 let codec = tonic::codec::ProstCodec::default();
1670 let path = http::uri::PathAndQuery::from_static(
1671 "/aruna.api.storage.services.v2.ServiceAccountService/CreateS3CredentialsSvcAccount",
1672 );
1673 let mut req = request.into_request();
1674 req.extensions_mut()
1675 .insert(
1676 GrpcMethod::new(
1677 "aruna.api.storage.services.v2.ServiceAccountService",
1678 "CreateS3CredentialsSvcAccount",
1679 ),
1680 );
1681 self.inner.unary(req, path, codec).await
1682 }
1683 pub async fn get_s3_credentials_svc_account(
1689 &mut self,
1690 request: impl tonic::IntoRequest<super::GetS3CredentialsSvcAccountRequest>,
1691 ) -> std::result::Result<
1692 tonic::Response<super::GetS3CredentialsSvcAccountResponse>,
1693 tonic::Status,
1694 > {
1695 self.inner
1696 .ready()
1697 .await
1698 .map_err(|e| {
1699 tonic::Status::new(
1700 tonic::Code::Unknown,
1701 format!("Service was not ready: {}", e.into()),
1702 )
1703 })?;
1704 let codec = tonic::codec::ProstCodec::default();
1705 let path = http::uri::PathAndQuery::from_static(
1706 "/aruna.api.storage.services.v2.ServiceAccountService/GetS3CredentialsSvcAccount",
1707 );
1708 let mut req = request.into_request();
1709 req.extensions_mut()
1710 .insert(
1711 GrpcMethod::new(
1712 "aruna.api.storage.services.v2.ServiceAccountService",
1713 "GetS3CredentialsSvcAccount",
1714 ),
1715 );
1716 self.inner.unary(req, path, codec).await
1717 }
1718 pub async fn delete_s3_credentials_svc_account(
1724 &mut self,
1725 request: impl tonic::IntoRequest<super::DeleteS3CredentialsSvcAccountRequest>,
1726 ) -> std::result::Result<
1727 tonic::Response<super::DeleteS3CredentialsSvcAccountResponse>,
1728 tonic::Status,
1729 > {
1730 self.inner
1731 .ready()
1732 .await
1733 .map_err(|e| {
1734 tonic::Status::new(
1735 tonic::Code::Unknown,
1736 format!("Service was not ready: {}", e.into()),
1737 )
1738 })?;
1739 let codec = tonic::codec::ProstCodec::default();
1740 let path = http::uri::PathAndQuery::from_static(
1741 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteS3CredentialsSvcAccount",
1742 );
1743 let mut req = request.into_request();
1744 req.extensions_mut()
1745 .insert(
1746 GrpcMethod::new(
1747 "aruna.api.storage.services.v2.ServiceAccountService",
1748 "DeleteS3CredentialsSvcAccount",
1749 ),
1750 );
1751 self.inner.unary(req, path, codec).await
1752 }
1753 pub async fn create_dataproxy_token_svc_account(
1759 &mut self,
1760 request: impl tonic::IntoRequest<
1761 super::CreateDataproxyTokenSvcAccountRequest,
1762 >,
1763 ) -> std::result::Result<
1764 tonic::Response<super::CreateDataproxyTokenSvcAccountResponse>,
1765 tonic::Status,
1766 > {
1767 self.inner
1768 .ready()
1769 .await
1770 .map_err(|e| {
1771 tonic::Status::new(
1772 tonic::Code::Unknown,
1773 format!("Service was not ready: {}", e.into()),
1774 )
1775 })?;
1776 let codec = tonic::codec::ProstCodec::default();
1777 let path = http::uri::PathAndQuery::from_static(
1778 "/aruna.api.storage.services.v2.ServiceAccountService/CreateDataproxyTokenSvcAccount",
1779 );
1780 let mut req = request.into_request();
1781 req.extensions_mut()
1782 .insert(
1783 GrpcMethod::new(
1784 "aruna.api.storage.services.v2.ServiceAccountService",
1785 "CreateDataproxyTokenSvcAccount",
1786 ),
1787 );
1788 self.inner.unary(req, path, codec).await
1789 }
1790 pub async fn add_pubkey_svc_account(
1796 &mut self,
1797 request: impl tonic::IntoRequest<super::AddPubkeySvcAccountRequest>,
1798 ) -> std::result::Result<
1799 tonic::Response<super::AddPubkeySvcAccountResponse>,
1800 tonic::Status,
1801 > {
1802 self.inner
1803 .ready()
1804 .await
1805 .map_err(|e| {
1806 tonic::Status::new(
1807 tonic::Code::Unknown,
1808 format!("Service was not ready: {}", e.into()),
1809 )
1810 })?;
1811 let codec = tonic::codec::ProstCodec::default();
1812 let path = http::uri::PathAndQuery::from_static(
1813 "/aruna.api.storage.services.v2.ServiceAccountService/AddPubkeySvcAccount",
1814 );
1815 let mut req = request.into_request();
1816 req.extensions_mut()
1817 .insert(
1818 GrpcMethod::new(
1819 "aruna.api.storage.services.v2.ServiceAccountService",
1820 "AddPubkeySvcAccount",
1821 ),
1822 );
1823 self.inner.unary(req, path, codec).await
1824 }
1825 pub async fn add_trusted_endpoints_svc_account(
1831 &mut self,
1832 request: impl tonic::IntoRequest<super::AddTrustedEndpointsSvcAccountRequest>,
1833 ) -> std::result::Result<
1834 tonic::Response<super::AddTrustedEndpointsSvcAccountResponse>,
1835 tonic::Status,
1836 > {
1837 self.inner
1838 .ready()
1839 .await
1840 .map_err(|e| {
1841 tonic::Status::new(
1842 tonic::Code::Unknown,
1843 format!("Service was not ready: {}", e.into()),
1844 )
1845 })?;
1846 let codec = tonic::codec::ProstCodec::default();
1847 let path = http::uri::PathAndQuery::from_static(
1848 "/aruna.api.storage.services.v2.ServiceAccountService/AddTrustedEndpointsSvcAccount",
1849 );
1850 let mut req = request.into_request();
1851 req.extensions_mut()
1852 .insert(
1853 GrpcMethod::new(
1854 "aruna.api.storage.services.v2.ServiceAccountService",
1855 "AddTrustedEndpointsSvcAccount",
1856 ),
1857 );
1858 self.inner.unary(req, path, codec).await
1859 }
1860 pub async fn remove_trusted_endpoints_svc_account(
1866 &mut self,
1867 request: impl tonic::IntoRequest<
1868 super::RemoveTrustedEndpointsSvcAccountRequest,
1869 >,
1870 ) -> std::result::Result<
1871 tonic::Response<super::RemoveTrustedEndpointsSvcAccountResponse>,
1872 tonic::Status,
1873 > {
1874 self.inner
1875 .ready()
1876 .await
1877 .map_err(|e| {
1878 tonic::Status::new(
1879 tonic::Code::Unknown,
1880 format!("Service was not ready: {}", e.into()),
1881 )
1882 })?;
1883 let codec = tonic::codec::ProstCodec::default();
1884 let path = http::uri::PathAndQuery::from_static(
1885 "/aruna.api.storage.services.v2.ServiceAccountService/RemoveTrustedEndpointsSvcAccount",
1886 );
1887 let mut req = request.into_request();
1888 req.extensions_mut()
1889 .insert(
1890 GrpcMethod::new(
1891 "aruna.api.storage.services.v2.ServiceAccountService",
1892 "RemoveTrustedEndpointsSvcAccount",
1893 ),
1894 );
1895 self.inner.unary(req, path, codec).await
1896 }
1897 pub async fn add_data_proxy_attribute_svc_account(
1903 &mut self,
1904 request: impl tonic::IntoRequest<
1905 super::AddDataProxyAttributeSvcAccountRequest,
1906 >,
1907 ) -> std::result::Result<
1908 tonic::Response<super::AddDataProxyAttributeSvcAccountResponse>,
1909 tonic::Status,
1910 > {
1911 self.inner
1912 .ready()
1913 .await
1914 .map_err(|e| {
1915 tonic::Status::new(
1916 tonic::Code::Unknown,
1917 format!("Service was not ready: {}", e.into()),
1918 )
1919 })?;
1920 let codec = tonic::codec::ProstCodec::default();
1921 let path = http::uri::PathAndQuery::from_static(
1922 "/aruna.api.storage.services.v2.ServiceAccountService/AddDataProxyAttributeSvcAccount",
1923 );
1924 let mut req = request.into_request();
1925 req.extensions_mut()
1926 .insert(
1927 GrpcMethod::new(
1928 "aruna.api.storage.services.v2.ServiceAccountService",
1929 "AddDataProxyAttributeSvcAccount",
1930 ),
1931 );
1932 self.inner.unary(req, path, codec).await
1933 }
1934 pub async fn remove_data_proxy_attribute_svc_account(
1940 &mut self,
1941 request: impl tonic::IntoRequest<
1942 super::RemoveDataProxyAttributeSvcAccountRequest,
1943 >,
1944 ) -> std::result::Result<
1945 tonic::Response<super::RemoveDataProxyAttributeSvcAccountResponse>,
1946 tonic::Status,
1947 > {
1948 self.inner
1949 .ready()
1950 .await
1951 .map_err(|e| {
1952 tonic::Status::new(
1953 tonic::Code::Unknown,
1954 format!("Service was not ready: {}", e.into()),
1955 )
1956 })?;
1957 let codec = tonic::codec::ProstCodec::default();
1958 let path = http::uri::PathAndQuery::from_static(
1959 "/aruna.api.storage.services.v2.ServiceAccountService/RemoveDataProxyAttributeSvcAccount",
1960 );
1961 let mut req = request.into_request();
1962 req.extensions_mut()
1963 .insert(
1964 GrpcMethod::new(
1965 "aruna.api.storage.services.v2.ServiceAccountService",
1966 "RemoveDataProxyAttributeSvcAccount",
1967 ),
1968 );
1969 self.inner.unary(req, path, codec).await
1970 }
1971 }
1972}
1973pub mod service_account_service_server {
1975 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
1976 use tonic::codegen::*;
1977 #[async_trait]
1979 pub trait ServiceAccountService: Send + Sync + 'static {
1980 async fn create_service_account(
1988 &self,
1989 request: tonic::Request<super::CreateServiceAccountRequest>,
1990 ) -> std::result::Result<
1991 tonic::Response<super::CreateServiceAccountResponse>,
1992 tonic::Status,
1993 >;
1994 async fn create_service_account_token(
2002 &self,
2003 request: tonic::Request<super::CreateServiceAccountTokenRequest>,
2004 ) -> std::result::Result<
2005 tonic::Response<super::CreateServiceAccountTokenResponse>,
2006 tonic::Status,
2007 >;
2008 async fn get_service_account_token(
2015 &self,
2016 request: tonic::Request<super::GetServiceAccountTokenRequest>,
2017 ) -> std::result::Result<
2018 tonic::Response<super::GetServiceAccountTokenResponse>,
2019 tonic::Status,
2020 >;
2021 async fn get_service_account_tokens(
2028 &self,
2029 request: tonic::Request<super::GetServiceAccountTokensRequest>,
2030 ) -> std::result::Result<
2031 tonic::Response<super::GetServiceAccountTokensResponse>,
2032 tonic::Status,
2033 >;
2034 async fn delete_service_account_token(
2040 &self,
2041 request: tonic::Request<super::DeleteServiceAccountTokenRequest>,
2042 ) -> std::result::Result<
2043 tonic::Response<super::DeleteServiceAccountTokenResponse>,
2044 tonic::Status,
2045 >;
2046 async fn delete_service_account_tokens(
2052 &self,
2053 request: tonic::Request<super::DeleteServiceAccountTokensRequest>,
2054 ) -> std::result::Result<
2055 tonic::Response<super::DeleteServiceAccountTokensResponse>,
2056 tonic::Status,
2057 >;
2058 async fn delete_service_account(
2064 &self,
2065 request: tonic::Request<super::DeleteServiceAccountRequest>,
2066 ) -> std::result::Result<
2067 tonic::Response<super::DeleteServiceAccountResponse>,
2068 tonic::Status,
2069 >;
2070 async fn create_s3_credentials_svc_account(
2076 &self,
2077 request: tonic::Request<super::CreateS3CredentialsSvcAccountRequest>,
2078 ) -> std::result::Result<
2079 tonic::Response<super::CreateS3CredentialsSvcAccountResponse>,
2080 tonic::Status,
2081 >;
2082 async fn get_s3_credentials_svc_account(
2088 &self,
2089 request: tonic::Request<super::GetS3CredentialsSvcAccountRequest>,
2090 ) -> std::result::Result<
2091 tonic::Response<super::GetS3CredentialsSvcAccountResponse>,
2092 tonic::Status,
2093 >;
2094 async fn delete_s3_credentials_svc_account(
2100 &self,
2101 request: tonic::Request<super::DeleteS3CredentialsSvcAccountRequest>,
2102 ) -> std::result::Result<
2103 tonic::Response<super::DeleteS3CredentialsSvcAccountResponse>,
2104 tonic::Status,
2105 >;
2106 async fn create_dataproxy_token_svc_account(
2112 &self,
2113 request: tonic::Request<super::CreateDataproxyTokenSvcAccountRequest>,
2114 ) -> std::result::Result<
2115 tonic::Response<super::CreateDataproxyTokenSvcAccountResponse>,
2116 tonic::Status,
2117 >;
2118 async fn add_pubkey_svc_account(
2124 &self,
2125 request: tonic::Request<super::AddPubkeySvcAccountRequest>,
2126 ) -> std::result::Result<
2127 tonic::Response<super::AddPubkeySvcAccountResponse>,
2128 tonic::Status,
2129 >;
2130 async fn add_trusted_endpoints_svc_account(
2136 &self,
2137 request: tonic::Request<super::AddTrustedEndpointsSvcAccountRequest>,
2138 ) -> std::result::Result<
2139 tonic::Response<super::AddTrustedEndpointsSvcAccountResponse>,
2140 tonic::Status,
2141 >;
2142 async fn remove_trusted_endpoints_svc_account(
2148 &self,
2149 request: tonic::Request<super::RemoveTrustedEndpointsSvcAccountRequest>,
2150 ) -> std::result::Result<
2151 tonic::Response<super::RemoveTrustedEndpointsSvcAccountResponse>,
2152 tonic::Status,
2153 >;
2154 async fn add_data_proxy_attribute_svc_account(
2160 &self,
2161 request: tonic::Request<super::AddDataProxyAttributeSvcAccountRequest>,
2162 ) -> std::result::Result<
2163 tonic::Response<super::AddDataProxyAttributeSvcAccountResponse>,
2164 tonic::Status,
2165 >;
2166 async fn remove_data_proxy_attribute_svc_account(
2172 &self,
2173 request: tonic::Request<super::RemoveDataProxyAttributeSvcAccountRequest>,
2174 ) -> std::result::Result<
2175 tonic::Response<super::RemoveDataProxyAttributeSvcAccountResponse>,
2176 tonic::Status,
2177 >;
2178 }
2179 #[derive(Debug)]
2186 pub struct ServiceAccountServiceServer<T: ServiceAccountService> {
2187 inner: _Inner<T>,
2188 accept_compression_encodings: EnabledCompressionEncodings,
2189 send_compression_encodings: EnabledCompressionEncodings,
2190 max_decoding_message_size: Option<usize>,
2191 max_encoding_message_size: Option<usize>,
2192 }
2193 struct _Inner<T>(Arc<T>);
2194 impl<T: ServiceAccountService> ServiceAccountServiceServer<T> {
2195 pub fn new(inner: T) -> Self {
2196 Self::from_arc(Arc::new(inner))
2197 }
2198 pub fn from_arc(inner: Arc<T>) -> Self {
2199 let inner = _Inner(inner);
2200 Self {
2201 inner,
2202 accept_compression_encodings: Default::default(),
2203 send_compression_encodings: Default::default(),
2204 max_decoding_message_size: None,
2205 max_encoding_message_size: None,
2206 }
2207 }
2208 pub fn with_interceptor<F>(
2209 inner: T,
2210 interceptor: F,
2211 ) -> InterceptedService<Self, F>
2212 where
2213 F: tonic::service::Interceptor,
2214 {
2215 InterceptedService::new(Self::new(inner), interceptor)
2216 }
2217 #[must_use]
2219 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
2220 self.accept_compression_encodings.enable(encoding);
2221 self
2222 }
2223 #[must_use]
2225 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
2226 self.send_compression_encodings.enable(encoding);
2227 self
2228 }
2229 #[must_use]
2233 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
2234 self.max_decoding_message_size = Some(limit);
2235 self
2236 }
2237 #[must_use]
2241 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
2242 self.max_encoding_message_size = Some(limit);
2243 self
2244 }
2245 }
2246 impl<T, B> tonic::codegen::Service<http::Request<B>>
2247 for ServiceAccountServiceServer<T>
2248 where
2249 T: ServiceAccountService,
2250 B: Body + Send + 'static,
2251 B::Error: Into<StdError> + Send + 'static,
2252 {
2253 type Response = http::Response<tonic::body::BoxBody>;
2254 type Error = std::convert::Infallible;
2255 type Future = BoxFuture<Self::Response, Self::Error>;
2256 fn poll_ready(
2257 &mut self,
2258 _cx: &mut Context<'_>,
2259 ) -> Poll<std::result::Result<(), Self::Error>> {
2260 Poll::Ready(Ok(()))
2261 }
2262 fn call(&mut self, req: http::Request<B>) -> Self::Future {
2263 let inner = self.inner.clone();
2264 match req.uri().path() {
2265 "/aruna.api.storage.services.v2.ServiceAccountService/CreateServiceAccount" => {
2266 #[allow(non_camel_case_types)]
2267 struct CreateServiceAccountSvc<T: ServiceAccountService>(pub Arc<T>);
2268 impl<
2269 T: ServiceAccountService,
2270 > tonic::server::UnaryService<super::CreateServiceAccountRequest>
2271 for CreateServiceAccountSvc<T> {
2272 type Response = super::CreateServiceAccountResponse;
2273 type Future = BoxFuture<
2274 tonic::Response<Self::Response>,
2275 tonic::Status,
2276 >;
2277 fn call(
2278 &mut self,
2279 request: tonic::Request<super::CreateServiceAccountRequest>,
2280 ) -> Self::Future {
2281 let inner = Arc::clone(&self.0);
2282 let fut = async move {
2283 <T as ServiceAccountService>::create_service_account(
2284 &inner,
2285 request,
2286 )
2287 .await
2288 };
2289 Box::pin(fut)
2290 }
2291 }
2292 let accept_compression_encodings = self.accept_compression_encodings;
2293 let send_compression_encodings = self.send_compression_encodings;
2294 let max_decoding_message_size = self.max_decoding_message_size;
2295 let max_encoding_message_size = self.max_encoding_message_size;
2296 let inner = self.inner.clone();
2297 let fut = async move {
2298 let inner = inner.0;
2299 let method = CreateServiceAccountSvc(inner);
2300 let codec = tonic::codec::ProstCodec::default();
2301 let mut grpc = tonic::server::Grpc::new(codec)
2302 .apply_compression_config(
2303 accept_compression_encodings,
2304 send_compression_encodings,
2305 )
2306 .apply_max_message_size_config(
2307 max_decoding_message_size,
2308 max_encoding_message_size,
2309 );
2310 let res = grpc.unary(method, req).await;
2311 Ok(res)
2312 };
2313 Box::pin(fut)
2314 }
2315 "/aruna.api.storage.services.v2.ServiceAccountService/CreateServiceAccountToken" => {
2316 #[allow(non_camel_case_types)]
2317 struct CreateServiceAccountTokenSvc<T: ServiceAccountService>(
2318 pub Arc<T>,
2319 );
2320 impl<
2321 T: ServiceAccountService,
2322 > tonic::server::UnaryService<
2323 super::CreateServiceAccountTokenRequest,
2324 > for CreateServiceAccountTokenSvc<T> {
2325 type Response = super::CreateServiceAccountTokenResponse;
2326 type Future = BoxFuture<
2327 tonic::Response<Self::Response>,
2328 tonic::Status,
2329 >;
2330 fn call(
2331 &mut self,
2332 request: tonic::Request<
2333 super::CreateServiceAccountTokenRequest,
2334 >,
2335 ) -> Self::Future {
2336 let inner = Arc::clone(&self.0);
2337 let fut = async move {
2338 <T as ServiceAccountService>::create_service_account_token(
2339 &inner,
2340 request,
2341 )
2342 .await
2343 };
2344 Box::pin(fut)
2345 }
2346 }
2347 let accept_compression_encodings = self.accept_compression_encodings;
2348 let send_compression_encodings = self.send_compression_encodings;
2349 let max_decoding_message_size = self.max_decoding_message_size;
2350 let max_encoding_message_size = self.max_encoding_message_size;
2351 let inner = self.inner.clone();
2352 let fut = async move {
2353 let inner = inner.0;
2354 let method = CreateServiceAccountTokenSvc(inner);
2355 let codec = tonic::codec::ProstCodec::default();
2356 let mut grpc = tonic::server::Grpc::new(codec)
2357 .apply_compression_config(
2358 accept_compression_encodings,
2359 send_compression_encodings,
2360 )
2361 .apply_max_message_size_config(
2362 max_decoding_message_size,
2363 max_encoding_message_size,
2364 );
2365 let res = grpc.unary(method, req).await;
2366 Ok(res)
2367 };
2368 Box::pin(fut)
2369 }
2370 "/aruna.api.storage.services.v2.ServiceAccountService/GetServiceAccountToken" => {
2371 #[allow(non_camel_case_types)]
2372 struct GetServiceAccountTokenSvc<T: ServiceAccountService>(
2373 pub Arc<T>,
2374 );
2375 impl<
2376 T: ServiceAccountService,
2377 > tonic::server::UnaryService<super::GetServiceAccountTokenRequest>
2378 for GetServiceAccountTokenSvc<T> {
2379 type Response = super::GetServiceAccountTokenResponse;
2380 type Future = BoxFuture<
2381 tonic::Response<Self::Response>,
2382 tonic::Status,
2383 >;
2384 fn call(
2385 &mut self,
2386 request: tonic::Request<super::GetServiceAccountTokenRequest>,
2387 ) -> Self::Future {
2388 let inner = Arc::clone(&self.0);
2389 let fut = async move {
2390 <T as ServiceAccountService>::get_service_account_token(
2391 &inner,
2392 request,
2393 )
2394 .await
2395 };
2396 Box::pin(fut)
2397 }
2398 }
2399 let accept_compression_encodings = self.accept_compression_encodings;
2400 let send_compression_encodings = self.send_compression_encodings;
2401 let max_decoding_message_size = self.max_decoding_message_size;
2402 let max_encoding_message_size = self.max_encoding_message_size;
2403 let inner = self.inner.clone();
2404 let fut = async move {
2405 let inner = inner.0;
2406 let method = GetServiceAccountTokenSvc(inner);
2407 let codec = tonic::codec::ProstCodec::default();
2408 let mut grpc = tonic::server::Grpc::new(codec)
2409 .apply_compression_config(
2410 accept_compression_encodings,
2411 send_compression_encodings,
2412 )
2413 .apply_max_message_size_config(
2414 max_decoding_message_size,
2415 max_encoding_message_size,
2416 );
2417 let res = grpc.unary(method, req).await;
2418 Ok(res)
2419 };
2420 Box::pin(fut)
2421 }
2422 "/aruna.api.storage.services.v2.ServiceAccountService/GetServiceAccountTokens" => {
2423 #[allow(non_camel_case_types)]
2424 struct GetServiceAccountTokensSvc<T: ServiceAccountService>(
2425 pub Arc<T>,
2426 );
2427 impl<
2428 T: ServiceAccountService,
2429 > tonic::server::UnaryService<super::GetServiceAccountTokensRequest>
2430 for GetServiceAccountTokensSvc<T> {
2431 type Response = super::GetServiceAccountTokensResponse;
2432 type Future = BoxFuture<
2433 tonic::Response<Self::Response>,
2434 tonic::Status,
2435 >;
2436 fn call(
2437 &mut self,
2438 request: tonic::Request<
2439 super::GetServiceAccountTokensRequest,
2440 >,
2441 ) -> Self::Future {
2442 let inner = Arc::clone(&self.0);
2443 let fut = async move {
2444 <T as ServiceAccountService>::get_service_account_tokens(
2445 &inner,
2446 request,
2447 )
2448 .await
2449 };
2450 Box::pin(fut)
2451 }
2452 }
2453 let accept_compression_encodings = self.accept_compression_encodings;
2454 let send_compression_encodings = self.send_compression_encodings;
2455 let max_decoding_message_size = self.max_decoding_message_size;
2456 let max_encoding_message_size = self.max_encoding_message_size;
2457 let inner = self.inner.clone();
2458 let fut = async move {
2459 let inner = inner.0;
2460 let method = GetServiceAccountTokensSvc(inner);
2461 let codec = tonic::codec::ProstCodec::default();
2462 let mut grpc = tonic::server::Grpc::new(codec)
2463 .apply_compression_config(
2464 accept_compression_encodings,
2465 send_compression_encodings,
2466 )
2467 .apply_max_message_size_config(
2468 max_decoding_message_size,
2469 max_encoding_message_size,
2470 );
2471 let res = grpc.unary(method, req).await;
2472 Ok(res)
2473 };
2474 Box::pin(fut)
2475 }
2476 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteServiceAccountToken" => {
2477 #[allow(non_camel_case_types)]
2478 struct DeleteServiceAccountTokenSvc<T: ServiceAccountService>(
2479 pub Arc<T>,
2480 );
2481 impl<
2482 T: ServiceAccountService,
2483 > tonic::server::UnaryService<
2484 super::DeleteServiceAccountTokenRequest,
2485 > for DeleteServiceAccountTokenSvc<T> {
2486 type Response = super::DeleteServiceAccountTokenResponse;
2487 type Future = BoxFuture<
2488 tonic::Response<Self::Response>,
2489 tonic::Status,
2490 >;
2491 fn call(
2492 &mut self,
2493 request: tonic::Request<
2494 super::DeleteServiceAccountTokenRequest,
2495 >,
2496 ) -> Self::Future {
2497 let inner = Arc::clone(&self.0);
2498 let fut = async move {
2499 <T as ServiceAccountService>::delete_service_account_token(
2500 &inner,
2501 request,
2502 )
2503 .await
2504 };
2505 Box::pin(fut)
2506 }
2507 }
2508 let accept_compression_encodings = self.accept_compression_encodings;
2509 let send_compression_encodings = self.send_compression_encodings;
2510 let max_decoding_message_size = self.max_decoding_message_size;
2511 let max_encoding_message_size = self.max_encoding_message_size;
2512 let inner = self.inner.clone();
2513 let fut = async move {
2514 let inner = inner.0;
2515 let method = DeleteServiceAccountTokenSvc(inner);
2516 let codec = tonic::codec::ProstCodec::default();
2517 let mut grpc = tonic::server::Grpc::new(codec)
2518 .apply_compression_config(
2519 accept_compression_encodings,
2520 send_compression_encodings,
2521 )
2522 .apply_max_message_size_config(
2523 max_decoding_message_size,
2524 max_encoding_message_size,
2525 );
2526 let res = grpc.unary(method, req).await;
2527 Ok(res)
2528 };
2529 Box::pin(fut)
2530 }
2531 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteServiceAccountTokens" => {
2532 #[allow(non_camel_case_types)]
2533 struct DeleteServiceAccountTokensSvc<T: ServiceAccountService>(
2534 pub Arc<T>,
2535 );
2536 impl<
2537 T: ServiceAccountService,
2538 > tonic::server::UnaryService<
2539 super::DeleteServiceAccountTokensRequest,
2540 > for DeleteServiceAccountTokensSvc<T> {
2541 type Response = super::DeleteServiceAccountTokensResponse;
2542 type Future = BoxFuture<
2543 tonic::Response<Self::Response>,
2544 tonic::Status,
2545 >;
2546 fn call(
2547 &mut self,
2548 request: tonic::Request<
2549 super::DeleteServiceAccountTokensRequest,
2550 >,
2551 ) -> Self::Future {
2552 let inner = Arc::clone(&self.0);
2553 let fut = async move {
2554 <T as ServiceAccountService>::delete_service_account_tokens(
2555 &inner,
2556 request,
2557 )
2558 .await
2559 };
2560 Box::pin(fut)
2561 }
2562 }
2563 let accept_compression_encodings = self.accept_compression_encodings;
2564 let send_compression_encodings = self.send_compression_encodings;
2565 let max_decoding_message_size = self.max_decoding_message_size;
2566 let max_encoding_message_size = self.max_encoding_message_size;
2567 let inner = self.inner.clone();
2568 let fut = async move {
2569 let inner = inner.0;
2570 let method = DeleteServiceAccountTokensSvc(inner);
2571 let codec = tonic::codec::ProstCodec::default();
2572 let mut grpc = tonic::server::Grpc::new(codec)
2573 .apply_compression_config(
2574 accept_compression_encodings,
2575 send_compression_encodings,
2576 )
2577 .apply_max_message_size_config(
2578 max_decoding_message_size,
2579 max_encoding_message_size,
2580 );
2581 let res = grpc.unary(method, req).await;
2582 Ok(res)
2583 };
2584 Box::pin(fut)
2585 }
2586 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteServiceAccount" => {
2587 #[allow(non_camel_case_types)]
2588 struct DeleteServiceAccountSvc<T: ServiceAccountService>(pub Arc<T>);
2589 impl<
2590 T: ServiceAccountService,
2591 > tonic::server::UnaryService<super::DeleteServiceAccountRequest>
2592 for DeleteServiceAccountSvc<T> {
2593 type Response = super::DeleteServiceAccountResponse;
2594 type Future = BoxFuture<
2595 tonic::Response<Self::Response>,
2596 tonic::Status,
2597 >;
2598 fn call(
2599 &mut self,
2600 request: tonic::Request<super::DeleteServiceAccountRequest>,
2601 ) -> Self::Future {
2602 let inner = Arc::clone(&self.0);
2603 let fut = async move {
2604 <T as ServiceAccountService>::delete_service_account(
2605 &inner,
2606 request,
2607 )
2608 .await
2609 };
2610 Box::pin(fut)
2611 }
2612 }
2613 let accept_compression_encodings = self.accept_compression_encodings;
2614 let send_compression_encodings = self.send_compression_encodings;
2615 let max_decoding_message_size = self.max_decoding_message_size;
2616 let max_encoding_message_size = self.max_encoding_message_size;
2617 let inner = self.inner.clone();
2618 let fut = async move {
2619 let inner = inner.0;
2620 let method = DeleteServiceAccountSvc(inner);
2621 let codec = tonic::codec::ProstCodec::default();
2622 let mut grpc = tonic::server::Grpc::new(codec)
2623 .apply_compression_config(
2624 accept_compression_encodings,
2625 send_compression_encodings,
2626 )
2627 .apply_max_message_size_config(
2628 max_decoding_message_size,
2629 max_encoding_message_size,
2630 );
2631 let res = grpc.unary(method, req).await;
2632 Ok(res)
2633 };
2634 Box::pin(fut)
2635 }
2636 "/aruna.api.storage.services.v2.ServiceAccountService/CreateS3CredentialsSvcAccount" => {
2637 #[allow(non_camel_case_types)]
2638 struct CreateS3CredentialsSvcAccountSvc<T: ServiceAccountService>(
2639 pub Arc<T>,
2640 );
2641 impl<
2642 T: ServiceAccountService,
2643 > tonic::server::UnaryService<
2644 super::CreateS3CredentialsSvcAccountRequest,
2645 > for CreateS3CredentialsSvcAccountSvc<T> {
2646 type Response = super::CreateS3CredentialsSvcAccountResponse;
2647 type Future = BoxFuture<
2648 tonic::Response<Self::Response>,
2649 tonic::Status,
2650 >;
2651 fn call(
2652 &mut self,
2653 request: tonic::Request<
2654 super::CreateS3CredentialsSvcAccountRequest,
2655 >,
2656 ) -> Self::Future {
2657 let inner = Arc::clone(&self.0);
2658 let fut = async move {
2659 <T as ServiceAccountService>::create_s3_credentials_svc_account(
2660 &inner,
2661 request,
2662 )
2663 .await
2664 };
2665 Box::pin(fut)
2666 }
2667 }
2668 let accept_compression_encodings = self.accept_compression_encodings;
2669 let send_compression_encodings = self.send_compression_encodings;
2670 let max_decoding_message_size = self.max_decoding_message_size;
2671 let max_encoding_message_size = self.max_encoding_message_size;
2672 let inner = self.inner.clone();
2673 let fut = async move {
2674 let inner = inner.0;
2675 let method = CreateS3CredentialsSvcAccountSvc(inner);
2676 let codec = tonic::codec::ProstCodec::default();
2677 let mut grpc = tonic::server::Grpc::new(codec)
2678 .apply_compression_config(
2679 accept_compression_encodings,
2680 send_compression_encodings,
2681 )
2682 .apply_max_message_size_config(
2683 max_decoding_message_size,
2684 max_encoding_message_size,
2685 );
2686 let res = grpc.unary(method, req).await;
2687 Ok(res)
2688 };
2689 Box::pin(fut)
2690 }
2691 "/aruna.api.storage.services.v2.ServiceAccountService/GetS3CredentialsSvcAccount" => {
2692 #[allow(non_camel_case_types)]
2693 struct GetS3CredentialsSvcAccountSvc<T: ServiceAccountService>(
2694 pub Arc<T>,
2695 );
2696 impl<
2697 T: ServiceAccountService,
2698 > tonic::server::UnaryService<
2699 super::GetS3CredentialsSvcAccountRequest,
2700 > for GetS3CredentialsSvcAccountSvc<T> {
2701 type Response = super::GetS3CredentialsSvcAccountResponse;
2702 type Future = BoxFuture<
2703 tonic::Response<Self::Response>,
2704 tonic::Status,
2705 >;
2706 fn call(
2707 &mut self,
2708 request: tonic::Request<
2709 super::GetS3CredentialsSvcAccountRequest,
2710 >,
2711 ) -> Self::Future {
2712 let inner = Arc::clone(&self.0);
2713 let fut = async move {
2714 <T as ServiceAccountService>::get_s3_credentials_svc_account(
2715 &inner,
2716 request,
2717 )
2718 .await
2719 };
2720 Box::pin(fut)
2721 }
2722 }
2723 let accept_compression_encodings = self.accept_compression_encodings;
2724 let send_compression_encodings = self.send_compression_encodings;
2725 let max_decoding_message_size = self.max_decoding_message_size;
2726 let max_encoding_message_size = self.max_encoding_message_size;
2727 let inner = self.inner.clone();
2728 let fut = async move {
2729 let inner = inner.0;
2730 let method = GetS3CredentialsSvcAccountSvc(inner);
2731 let codec = tonic::codec::ProstCodec::default();
2732 let mut grpc = tonic::server::Grpc::new(codec)
2733 .apply_compression_config(
2734 accept_compression_encodings,
2735 send_compression_encodings,
2736 )
2737 .apply_max_message_size_config(
2738 max_decoding_message_size,
2739 max_encoding_message_size,
2740 );
2741 let res = grpc.unary(method, req).await;
2742 Ok(res)
2743 };
2744 Box::pin(fut)
2745 }
2746 "/aruna.api.storage.services.v2.ServiceAccountService/DeleteS3CredentialsSvcAccount" => {
2747 #[allow(non_camel_case_types)]
2748 struct DeleteS3CredentialsSvcAccountSvc<T: ServiceAccountService>(
2749 pub Arc<T>,
2750 );
2751 impl<
2752 T: ServiceAccountService,
2753 > tonic::server::UnaryService<
2754 super::DeleteS3CredentialsSvcAccountRequest,
2755 > for DeleteS3CredentialsSvcAccountSvc<T> {
2756 type Response = super::DeleteS3CredentialsSvcAccountResponse;
2757 type Future = BoxFuture<
2758 tonic::Response<Self::Response>,
2759 tonic::Status,
2760 >;
2761 fn call(
2762 &mut self,
2763 request: tonic::Request<
2764 super::DeleteS3CredentialsSvcAccountRequest,
2765 >,
2766 ) -> Self::Future {
2767 let inner = Arc::clone(&self.0);
2768 let fut = async move {
2769 <T as ServiceAccountService>::delete_s3_credentials_svc_account(
2770 &inner,
2771 request,
2772 )
2773 .await
2774 };
2775 Box::pin(fut)
2776 }
2777 }
2778 let accept_compression_encodings = self.accept_compression_encodings;
2779 let send_compression_encodings = self.send_compression_encodings;
2780 let max_decoding_message_size = self.max_decoding_message_size;
2781 let max_encoding_message_size = self.max_encoding_message_size;
2782 let inner = self.inner.clone();
2783 let fut = async move {
2784 let inner = inner.0;
2785 let method = DeleteS3CredentialsSvcAccountSvc(inner);
2786 let codec = tonic::codec::ProstCodec::default();
2787 let mut grpc = tonic::server::Grpc::new(codec)
2788 .apply_compression_config(
2789 accept_compression_encodings,
2790 send_compression_encodings,
2791 )
2792 .apply_max_message_size_config(
2793 max_decoding_message_size,
2794 max_encoding_message_size,
2795 );
2796 let res = grpc.unary(method, req).await;
2797 Ok(res)
2798 };
2799 Box::pin(fut)
2800 }
2801 "/aruna.api.storage.services.v2.ServiceAccountService/CreateDataproxyTokenSvcAccount" => {
2802 #[allow(non_camel_case_types)]
2803 struct CreateDataproxyTokenSvcAccountSvc<T: ServiceAccountService>(
2804 pub Arc<T>,
2805 );
2806 impl<
2807 T: ServiceAccountService,
2808 > tonic::server::UnaryService<
2809 super::CreateDataproxyTokenSvcAccountRequest,
2810 > for CreateDataproxyTokenSvcAccountSvc<T> {
2811 type Response = super::CreateDataproxyTokenSvcAccountResponse;
2812 type Future = BoxFuture<
2813 tonic::Response<Self::Response>,
2814 tonic::Status,
2815 >;
2816 fn call(
2817 &mut self,
2818 request: tonic::Request<
2819 super::CreateDataproxyTokenSvcAccountRequest,
2820 >,
2821 ) -> Self::Future {
2822 let inner = Arc::clone(&self.0);
2823 let fut = async move {
2824 <T as ServiceAccountService>::create_dataproxy_token_svc_account(
2825 &inner,
2826 request,
2827 )
2828 .await
2829 };
2830 Box::pin(fut)
2831 }
2832 }
2833 let accept_compression_encodings = self.accept_compression_encodings;
2834 let send_compression_encodings = self.send_compression_encodings;
2835 let max_decoding_message_size = self.max_decoding_message_size;
2836 let max_encoding_message_size = self.max_encoding_message_size;
2837 let inner = self.inner.clone();
2838 let fut = async move {
2839 let inner = inner.0;
2840 let method = CreateDataproxyTokenSvcAccountSvc(inner);
2841 let codec = tonic::codec::ProstCodec::default();
2842 let mut grpc = tonic::server::Grpc::new(codec)
2843 .apply_compression_config(
2844 accept_compression_encodings,
2845 send_compression_encodings,
2846 )
2847 .apply_max_message_size_config(
2848 max_decoding_message_size,
2849 max_encoding_message_size,
2850 );
2851 let res = grpc.unary(method, req).await;
2852 Ok(res)
2853 };
2854 Box::pin(fut)
2855 }
2856 "/aruna.api.storage.services.v2.ServiceAccountService/AddPubkeySvcAccount" => {
2857 #[allow(non_camel_case_types)]
2858 struct AddPubkeySvcAccountSvc<T: ServiceAccountService>(pub Arc<T>);
2859 impl<
2860 T: ServiceAccountService,
2861 > tonic::server::UnaryService<super::AddPubkeySvcAccountRequest>
2862 for AddPubkeySvcAccountSvc<T> {
2863 type Response = super::AddPubkeySvcAccountResponse;
2864 type Future = BoxFuture<
2865 tonic::Response<Self::Response>,
2866 tonic::Status,
2867 >;
2868 fn call(
2869 &mut self,
2870 request: tonic::Request<super::AddPubkeySvcAccountRequest>,
2871 ) -> Self::Future {
2872 let inner = Arc::clone(&self.0);
2873 let fut = async move {
2874 <T as ServiceAccountService>::add_pubkey_svc_account(
2875 &inner,
2876 request,
2877 )
2878 .await
2879 };
2880 Box::pin(fut)
2881 }
2882 }
2883 let accept_compression_encodings = self.accept_compression_encodings;
2884 let send_compression_encodings = self.send_compression_encodings;
2885 let max_decoding_message_size = self.max_decoding_message_size;
2886 let max_encoding_message_size = self.max_encoding_message_size;
2887 let inner = self.inner.clone();
2888 let fut = async move {
2889 let inner = inner.0;
2890 let method = AddPubkeySvcAccountSvc(inner);
2891 let codec = tonic::codec::ProstCodec::default();
2892 let mut grpc = tonic::server::Grpc::new(codec)
2893 .apply_compression_config(
2894 accept_compression_encodings,
2895 send_compression_encodings,
2896 )
2897 .apply_max_message_size_config(
2898 max_decoding_message_size,
2899 max_encoding_message_size,
2900 );
2901 let res = grpc.unary(method, req).await;
2902 Ok(res)
2903 };
2904 Box::pin(fut)
2905 }
2906 "/aruna.api.storage.services.v2.ServiceAccountService/AddTrustedEndpointsSvcAccount" => {
2907 #[allow(non_camel_case_types)]
2908 struct AddTrustedEndpointsSvcAccountSvc<T: ServiceAccountService>(
2909 pub Arc<T>,
2910 );
2911 impl<
2912 T: ServiceAccountService,
2913 > tonic::server::UnaryService<
2914 super::AddTrustedEndpointsSvcAccountRequest,
2915 > for AddTrustedEndpointsSvcAccountSvc<T> {
2916 type Response = super::AddTrustedEndpointsSvcAccountResponse;
2917 type Future = BoxFuture<
2918 tonic::Response<Self::Response>,
2919 tonic::Status,
2920 >;
2921 fn call(
2922 &mut self,
2923 request: tonic::Request<
2924 super::AddTrustedEndpointsSvcAccountRequest,
2925 >,
2926 ) -> Self::Future {
2927 let inner = Arc::clone(&self.0);
2928 let fut = async move {
2929 <T as ServiceAccountService>::add_trusted_endpoints_svc_account(
2930 &inner,
2931 request,
2932 )
2933 .await
2934 };
2935 Box::pin(fut)
2936 }
2937 }
2938 let accept_compression_encodings = self.accept_compression_encodings;
2939 let send_compression_encodings = self.send_compression_encodings;
2940 let max_decoding_message_size = self.max_decoding_message_size;
2941 let max_encoding_message_size = self.max_encoding_message_size;
2942 let inner = self.inner.clone();
2943 let fut = async move {
2944 let inner = inner.0;
2945 let method = AddTrustedEndpointsSvcAccountSvc(inner);
2946 let codec = tonic::codec::ProstCodec::default();
2947 let mut grpc = tonic::server::Grpc::new(codec)
2948 .apply_compression_config(
2949 accept_compression_encodings,
2950 send_compression_encodings,
2951 )
2952 .apply_max_message_size_config(
2953 max_decoding_message_size,
2954 max_encoding_message_size,
2955 );
2956 let res = grpc.unary(method, req).await;
2957 Ok(res)
2958 };
2959 Box::pin(fut)
2960 }
2961 "/aruna.api.storage.services.v2.ServiceAccountService/RemoveTrustedEndpointsSvcAccount" => {
2962 #[allow(non_camel_case_types)]
2963 struct RemoveTrustedEndpointsSvcAccountSvc<T: ServiceAccountService>(
2964 pub Arc<T>,
2965 );
2966 impl<
2967 T: ServiceAccountService,
2968 > tonic::server::UnaryService<
2969 super::RemoveTrustedEndpointsSvcAccountRequest,
2970 > for RemoveTrustedEndpointsSvcAccountSvc<T> {
2971 type Response = super::RemoveTrustedEndpointsSvcAccountResponse;
2972 type Future = BoxFuture<
2973 tonic::Response<Self::Response>,
2974 tonic::Status,
2975 >;
2976 fn call(
2977 &mut self,
2978 request: tonic::Request<
2979 super::RemoveTrustedEndpointsSvcAccountRequest,
2980 >,
2981 ) -> Self::Future {
2982 let inner = Arc::clone(&self.0);
2983 let fut = async move {
2984 <T as ServiceAccountService>::remove_trusted_endpoints_svc_account(
2985 &inner,
2986 request,
2987 )
2988 .await
2989 };
2990 Box::pin(fut)
2991 }
2992 }
2993 let accept_compression_encodings = self.accept_compression_encodings;
2994 let send_compression_encodings = self.send_compression_encodings;
2995 let max_decoding_message_size = self.max_decoding_message_size;
2996 let max_encoding_message_size = self.max_encoding_message_size;
2997 let inner = self.inner.clone();
2998 let fut = async move {
2999 let inner = inner.0;
3000 let method = RemoveTrustedEndpointsSvcAccountSvc(inner);
3001 let codec = tonic::codec::ProstCodec::default();
3002 let mut grpc = tonic::server::Grpc::new(codec)
3003 .apply_compression_config(
3004 accept_compression_encodings,
3005 send_compression_encodings,
3006 )
3007 .apply_max_message_size_config(
3008 max_decoding_message_size,
3009 max_encoding_message_size,
3010 );
3011 let res = grpc.unary(method, req).await;
3012 Ok(res)
3013 };
3014 Box::pin(fut)
3015 }
3016 "/aruna.api.storage.services.v2.ServiceAccountService/AddDataProxyAttributeSvcAccount" => {
3017 #[allow(non_camel_case_types)]
3018 struct AddDataProxyAttributeSvcAccountSvc<T: ServiceAccountService>(
3019 pub Arc<T>,
3020 );
3021 impl<
3022 T: ServiceAccountService,
3023 > tonic::server::UnaryService<
3024 super::AddDataProxyAttributeSvcAccountRequest,
3025 > for AddDataProxyAttributeSvcAccountSvc<T> {
3026 type Response = super::AddDataProxyAttributeSvcAccountResponse;
3027 type Future = BoxFuture<
3028 tonic::Response<Self::Response>,
3029 tonic::Status,
3030 >;
3031 fn call(
3032 &mut self,
3033 request: tonic::Request<
3034 super::AddDataProxyAttributeSvcAccountRequest,
3035 >,
3036 ) -> Self::Future {
3037 let inner = Arc::clone(&self.0);
3038 let fut = async move {
3039 <T as ServiceAccountService>::add_data_proxy_attribute_svc_account(
3040 &inner,
3041 request,
3042 )
3043 .await
3044 };
3045 Box::pin(fut)
3046 }
3047 }
3048 let accept_compression_encodings = self.accept_compression_encodings;
3049 let send_compression_encodings = self.send_compression_encodings;
3050 let max_decoding_message_size = self.max_decoding_message_size;
3051 let max_encoding_message_size = self.max_encoding_message_size;
3052 let inner = self.inner.clone();
3053 let fut = async move {
3054 let inner = inner.0;
3055 let method = AddDataProxyAttributeSvcAccountSvc(inner);
3056 let codec = tonic::codec::ProstCodec::default();
3057 let mut grpc = tonic::server::Grpc::new(codec)
3058 .apply_compression_config(
3059 accept_compression_encodings,
3060 send_compression_encodings,
3061 )
3062 .apply_max_message_size_config(
3063 max_decoding_message_size,
3064 max_encoding_message_size,
3065 );
3066 let res = grpc.unary(method, req).await;
3067 Ok(res)
3068 };
3069 Box::pin(fut)
3070 }
3071 "/aruna.api.storage.services.v2.ServiceAccountService/RemoveDataProxyAttributeSvcAccount" => {
3072 #[allow(non_camel_case_types)]
3073 struct RemoveDataProxyAttributeSvcAccountSvc<
3074 T: ServiceAccountService,
3075 >(
3076 pub Arc<T>,
3077 );
3078 impl<
3079 T: ServiceAccountService,
3080 > tonic::server::UnaryService<
3081 super::RemoveDataProxyAttributeSvcAccountRequest,
3082 > for RemoveDataProxyAttributeSvcAccountSvc<T> {
3083 type Response = super::RemoveDataProxyAttributeSvcAccountResponse;
3084 type Future = BoxFuture<
3085 tonic::Response<Self::Response>,
3086 tonic::Status,
3087 >;
3088 fn call(
3089 &mut self,
3090 request: tonic::Request<
3091 super::RemoveDataProxyAttributeSvcAccountRequest,
3092 >,
3093 ) -> Self::Future {
3094 let inner = Arc::clone(&self.0);
3095 let fut = async move {
3096 <T as ServiceAccountService>::remove_data_proxy_attribute_svc_account(
3097 &inner,
3098 request,
3099 )
3100 .await
3101 };
3102 Box::pin(fut)
3103 }
3104 }
3105 let accept_compression_encodings = self.accept_compression_encodings;
3106 let send_compression_encodings = self.send_compression_encodings;
3107 let max_decoding_message_size = self.max_decoding_message_size;
3108 let max_encoding_message_size = self.max_encoding_message_size;
3109 let inner = self.inner.clone();
3110 let fut = async move {
3111 let inner = inner.0;
3112 let method = RemoveDataProxyAttributeSvcAccountSvc(inner);
3113 let codec = tonic::codec::ProstCodec::default();
3114 let mut grpc = tonic::server::Grpc::new(codec)
3115 .apply_compression_config(
3116 accept_compression_encodings,
3117 send_compression_encodings,
3118 )
3119 .apply_max_message_size_config(
3120 max_decoding_message_size,
3121 max_encoding_message_size,
3122 );
3123 let res = grpc.unary(method, req).await;
3124 Ok(res)
3125 };
3126 Box::pin(fut)
3127 }
3128 _ => {
3129 Box::pin(async move {
3130 Ok(
3131 http::Response::builder()
3132 .status(200)
3133 .header("grpc-status", "12")
3134 .header("content-type", "application/grpc")
3135 .body(empty_body())
3136 .unwrap(),
3137 )
3138 })
3139 }
3140 }
3141 }
3142 }
3143 impl<T: ServiceAccountService> Clone for ServiceAccountServiceServer<T> {
3144 fn clone(&self) -> Self {
3145 let inner = self.inner.clone();
3146 Self {
3147 inner,
3148 accept_compression_encodings: self.accept_compression_encodings,
3149 send_compression_encodings: self.send_compression_encodings,
3150 max_decoding_message_size: self.max_decoding_message_size,
3151 max_encoding_message_size: self.max_encoding_message_size,
3152 }
3153 }
3154 }
3155 impl<T: ServiceAccountService> Clone for _Inner<T> {
3156 fn clone(&self) -> Self {
3157 Self(Arc::clone(&self.0))
3158 }
3159 }
3160 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
3161 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
3162 write!(f, "{:?}", self.0)
3163 }
3164 }
3165 impl<T: ServiceAccountService> tonic::server::NamedService
3166 for ServiceAccountServiceServer<T> {
3167 const NAME: &'static str = "aruna.api.storage.services.v2.ServiceAccountService";
3168 }
3169}
3170#[derive(serde::Deserialize, serde::Serialize)]
3171#[allow(clippy::derive_partial_eq_without_eq)]
3172#[derive(Clone, PartialEq, ::prost::Message)]
3173pub struct CreateCollectionRequest {
3174 #[prost(string, tag = "1")]
3176 pub name: ::prost::alloc::string::String,
3177 #[prost(string, tag = "9")]
3178 pub title: ::prost::alloc::string::String,
3179 #[prost(string, tag = "2")]
3181 pub description: ::prost::alloc::string::String,
3182 #[prost(message, repeated, tag = "3")]
3184 pub key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
3185 #[prost(message, repeated, tag = "4")]
3187 pub relations: ::prost::alloc::vec::Vec<super::super::models::v2::Relation>,
3188 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "5")]
3190 pub data_class: i32,
3191 #[prost(string, optional, tag = "7")]
3192 pub metadata_license_tag: ::core::option::Option<::prost::alloc::string::String>,
3193 #[prost(string, optional, tag = "8")]
3194 pub default_data_license_tag: ::core::option::Option<::prost::alloc::string::String>,
3195 #[prost(message, repeated, tag = "10")]
3196 pub authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
3197 #[prost(oneof = "create_collection_request::Parent", tags = "6")]
3199 pub parent: ::core::option::Option<create_collection_request::Parent>,
3200}
3201pub mod create_collection_request {
3203 #[derive(serde::Deserialize, serde::Serialize)]
3205 #[allow(clippy::derive_partial_eq_without_eq)]
3206 #[derive(Clone, PartialEq, ::prost::Oneof)]
3207 pub enum Parent {
3208 #[prost(string, tag = "6")]
3209 ProjectId(::prost::alloc::string::String),
3210 }
3211}
3212#[derive(serde::Deserialize, serde::Serialize)]
3213#[allow(clippy::derive_partial_eq_without_eq)]
3214#[derive(Clone, PartialEq, ::prost::Message)]
3215pub struct CreateCollectionResponse {
3216 #[prost(message, optional, tag = "1")]
3218 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3219}
3220#[derive(serde::Deserialize, serde::Serialize)]
3221#[allow(clippy::derive_partial_eq_without_eq)]
3222#[derive(Clone, PartialEq, ::prost::Message)]
3223pub struct GetCollectionRequest {
3224 #[prost(string, tag = "1")]
3226 pub collection_id: ::prost::alloc::string::String,
3227}
3228#[derive(serde::Deserialize, serde::Serialize)]
3229#[allow(clippy::derive_partial_eq_without_eq)]
3230#[derive(Clone, PartialEq, ::prost::Message)]
3231pub struct GetCollectionResponse {
3232 #[prost(message, optional, tag = "1")]
3234 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3235}
3236#[derive(serde::Deserialize, serde::Serialize)]
3237#[allow(clippy::derive_partial_eq_without_eq)]
3238#[derive(Clone, PartialEq, ::prost::Message)]
3239pub struct GetCollectionsRequest {
3240 #[prost(string, repeated, tag = "1")]
3241 pub collection_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
3242}
3243#[derive(serde::Deserialize, serde::Serialize)]
3244#[allow(clippy::derive_partial_eq_without_eq)]
3245#[derive(Clone, PartialEq, ::prost::Message)]
3246pub struct GetCollectionsResponse {
3247 #[prost(message, repeated, tag = "1")]
3249 pub collections: ::prost::alloc::vec::Vec<super::super::models::v2::Collection>,
3250}
3251#[derive(serde::Deserialize, serde::Serialize)]
3252#[allow(clippy::derive_partial_eq_without_eq)]
3253#[derive(Clone, PartialEq, ::prost::Message)]
3254pub struct DeleteCollectionRequest {
3255 #[prost(string, tag = "1")]
3256 pub collection_id: ::prost::alloc::string::String,
3257}
3258#[derive(serde::Deserialize, serde::Serialize)]
3259#[allow(clippy::derive_partial_eq_without_eq)]
3260#[derive(Clone, PartialEq, ::prost::Message)]
3261pub struct DeleteCollectionResponse {}
3262#[derive(serde::Deserialize, serde::Serialize)]
3263#[allow(clippy::derive_partial_eq_without_eq)]
3264#[derive(Clone, PartialEq, ::prost::Message)]
3265pub struct UpdateCollectionNameRequest {
3266 #[prost(string, tag = "1")]
3267 pub collection_id: ::prost::alloc::string::String,
3268 #[prost(string, tag = "2")]
3269 pub name: ::prost::alloc::string::String,
3270}
3271#[derive(serde::Deserialize, serde::Serialize)]
3272#[allow(clippy::derive_partial_eq_without_eq)]
3273#[derive(Clone, PartialEq, ::prost::Message)]
3274pub struct UpdateCollectionNameResponse {
3275 #[prost(message, optional, tag = "1")]
3276 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3277}
3278#[derive(serde::Deserialize, serde::Serialize)]
3279#[allow(clippy::derive_partial_eq_without_eq)]
3280#[derive(Clone, PartialEq, ::prost::Message)]
3281pub struct UpdateCollectionDescriptionRequest {
3282 #[prost(string, tag = "1")]
3283 pub collection_id: ::prost::alloc::string::String,
3284 #[prost(string, tag = "2")]
3285 pub description: ::prost::alloc::string::String,
3286}
3287#[derive(serde::Deserialize, serde::Serialize)]
3288#[allow(clippy::derive_partial_eq_without_eq)]
3289#[derive(Clone, PartialEq, ::prost::Message)]
3290pub struct UpdateCollectionDescriptionResponse {
3291 #[prost(message, optional, tag = "1")]
3292 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3293}
3294#[derive(serde::Deserialize, serde::Serialize)]
3295#[allow(clippy::derive_partial_eq_without_eq)]
3296#[derive(Clone, PartialEq, ::prost::Message)]
3297pub struct UpdateCollectionKeyValuesRequest {
3298 #[prost(string, tag = "1")]
3299 pub collection_id: ::prost::alloc::string::String,
3300 #[prost(message, repeated, tag = "2")]
3301 pub add_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
3302 #[prost(message, repeated, tag = "3")]
3303 pub remove_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
3304}
3305#[derive(serde::Deserialize, serde::Serialize)]
3306#[allow(clippy::derive_partial_eq_without_eq)]
3307#[derive(Clone, PartialEq, ::prost::Message)]
3308pub struct UpdateCollectionKeyValuesResponse {
3309 #[prost(message, optional, tag = "1")]
3310 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3311}
3312#[derive(serde::Deserialize, serde::Serialize)]
3313#[allow(clippy::derive_partial_eq_without_eq)]
3314#[derive(Clone, PartialEq, ::prost::Message)]
3315pub struct UpdateCollectionDataClassRequest {
3316 #[prost(string, tag = "1")]
3317 pub collection_id: ::prost::alloc::string::String,
3318 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "2")]
3319 pub data_class: i32,
3320}
3321#[derive(serde::Deserialize, serde::Serialize)]
3322#[allow(clippy::derive_partial_eq_without_eq)]
3323#[derive(Clone, PartialEq, ::prost::Message)]
3324pub struct UpdateCollectionDataClassResponse {
3325 #[prost(message, optional, tag = "1")]
3326 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3327}
3328#[derive(serde::Deserialize, serde::Serialize)]
3329#[allow(clippy::derive_partial_eq_without_eq)]
3330#[derive(Clone, PartialEq, ::prost::Message)]
3331pub struct SnapshotCollectionRequest {
3332 #[prost(string, tag = "1")]
3333 pub collection_id: ::prost::alloc::string::String,
3334}
3335#[derive(serde::Deserialize, serde::Serialize)]
3336#[allow(clippy::derive_partial_eq_without_eq)]
3337#[derive(Clone, PartialEq, ::prost::Message)]
3338pub struct SnapshotCollectionResponse {
3339 #[prost(message, optional, tag = "1")]
3341 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3342}
3343#[derive(serde::Deserialize, serde::Serialize)]
3344#[allow(clippy::derive_partial_eq_without_eq)]
3345#[derive(Clone, PartialEq, ::prost::Message)]
3346pub struct UpdateCollectionLicensesRequest {
3347 #[prost(string, tag = "1")]
3348 pub collection_id: ::prost::alloc::string::String,
3349 #[prost(string, tag = "2")]
3350 pub metadata_license_tag: ::prost::alloc::string::String,
3351 #[prost(string, tag = "3")]
3352 pub default_data_license_tag: ::prost::alloc::string::String,
3353}
3354#[derive(serde::Deserialize, serde::Serialize)]
3355#[allow(clippy::derive_partial_eq_without_eq)]
3356#[derive(Clone, PartialEq, ::prost::Message)]
3357pub struct UpdateCollectionLicensesResponse {
3358 #[prost(message, optional, tag = "1")]
3359 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3360}
3361#[derive(serde::Deserialize, serde::Serialize)]
3362#[allow(clippy::derive_partial_eq_without_eq)]
3363#[derive(Clone, PartialEq, ::prost::Message)]
3364pub struct UpdateCollectionTitleRequest {
3365 #[prost(string, tag = "1")]
3366 pub collection_id: ::prost::alloc::string::String,
3367 #[prost(string, tag = "2")]
3368 pub title: ::prost::alloc::string::String,
3369}
3370#[derive(serde::Deserialize, serde::Serialize)]
3371#[allow(clippy::derive_partial_eq_without_eq)]
3372#[derive(Clone, PartialEq, ::prost::Message)]
3373pub struct UpdateCollectionTitleResponse {
3374 #[prost(message, optional, tag = "1")]
3375 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3376}
3377#[derive(serde::Deserialize, serde::Serialize)]
3378#[allow(clippy::derive_partial_eq_without_eq)]
3379#[derive(Clone, PartialEq, ::prost::Message)]
3380pub struct UpdateCollectionAuthorsRequest {
3381 #[prost(string, tag = "1")]
3382 pub collection_id: ::prost::alloc::string::String,
3383 #[prost(message, repeated, tag = "2")]
3384 pub add_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
3385 #[prost(message, repeated, tag = "3")]
3386 pub remove_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
3387}
3388#[derive(serde::Deserialize, serde::Serialize)]
3389#[allow(clippy::derive_partial_eq_without_eq)]
3390#[derive(Clone, PartialEq, ::prost::Message)]
3391pub struct UpdateCollectionAuthorsResponse {
3392 #[prost(message, optional, tag = "1")]
3393 pub collection: ::core::option::Option<super::super::models::v2::Collection>,
3394}
3395pub mod collection_service_client {
3397 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
3398 use tonic::codegen::*;
3399 use tonic::codegen::http::Uri;
3400 #[derive(Debug, Clone)]
3406 pub struct CollectionServiceClient<T> {
3407 inner: tonic::client::Grpc<T>,
3408 }
3409 impl CollectionServiceClient<tonic::transport::Channel> {
3410 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
3412 where
3413 D: TryInto<tonic::transport::Endpoint>,
3414 D::Error: Into<StdError>,
3415 {
3416 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
3417 Ok(Self::new(conn))
3418 }
3419 }
3420 impl<T> CollectionServiceClient<T>
3421 where
3422 T: tonic::client::GrpcService<tonic::body::BoxBody>,
3423 T::Error: Into<StdError>,
3424 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
3425 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
3426 {
3427 pub fn new(inner: T) -> Self {
3428 let inner = tonic::client::Grpc::new(inner);
3429 Self { inner }
3430 }
3431 pub fn with_origin(inner: T, origin: Uri) -> Self {
3432 let inner = tonic::client::Grpc::with_origin(inner, origin);
3433 Self { inner }
3434 }
3435 pub fn with_interceptor<F>(
3436 inner: T,
3437 interceptor: F,
3438 ) -> CollectionServiceClient<InterceptedService<T, F>>
3439 where
3440 F: tonic::service::Interceptor,
3441 T::ResponseBody: Default,
3442 T: tonic::codegen::Service<
3443 http::Request<tonic::body::BoxBody>,
3444 Response = http::Response<
3445 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
3446 >,
3447 >,
3448 <T as tonic::codegen::Service<
3449 http::Request<tonic::body::BoxBody>,
3450 >>::Error: Into<StdError> + Send + Sync,
3451 {
3452 CollectionServiceClient::new(InterceptedService::new(inner, interceptor))
3453 }
3454 #[must_use]
3459 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
3460 self.inner = self.inner.send_compressed(encoding);
3461 self
3462 }
3463 #[must_use]
3465 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
3466 self.inner = self.inner.accept_compressed(encoding);
3467 self
3468 }
3469 #[must_use]
3473 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
3474 self.inner = self.inner.max_decoding_message_size(limit);
3475 self
3476 }
3477 #[must_use]
3481 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
3482 self.inner = self.inner.max_encoding_message_size(limit);
3483 self
3484 }
3485 pub async fn create_collection(
3491 &mut self,
3492 request: impl tonic::IntoRequest<super::CreateCollectionRequest>,
3493 ) -> std::result::Result<
3494 tonic::Response<super::CreateCollectionResponse>,
3495 tonic::Status,
3496 > {
3497 self.inner
3498 .ready()
3499 .await
3500 .map_err(|e| {
3501 tonic::Status::new(
3502 tonic::Code::Unknown,
3503 format!("Service was not ready: {}", e.into()),
3504 )
3505 })?;
3506 let codec = tonic::codec::ProstCodec::default();
3507 let path = http::uri::PathAndQuery::from_static(
3508 "/aruna.api.storage.services.v2.CollectionService/CreateCollection",
3509 );
3510 let mut req = request.into_request();
3511 req.extensions_mut()
3512 .insert(
3513 GrpcMethod::new(
3514 "aruna.api.storage.services.v2.CollectionService",
3515 "CreateCollection",
3516 ),
3517 );
3518 self.inner.unary(req, path, codec).await
3519 }
3520 pub async fn get_collection(
3526 &mut self,
3527 request: impl tonic::IntoRequest<super::GetCollectionRequest>,
3528 ) -> std::result::Result<
3529 tonic::Response<super::GetCollectionResponse>,
3530 tonic::Status,
3531 > {
3532 self.inner
3533 .ready()
3534 .await
3535 .map_err(|e| {
3536 tonic::Status::new(
3537 tonic::Code::Unknown,
3538 format!("Service was not ready: {}", e.into()),
3539 )
3540 })?;
3541 let codec = tonic::codec::ProstCodec::default();
3542 let path = http::uri::PathAndQuery::from_static(
3543 "/aruna.api.storage.services.v2.CollectionService/GetCollection",
3544 );
3545 let mut req = request.into_request();
3546 req.extensions_mut()
3547 .insert(
3548 GrpcMethod::new(
3549 "aruna.api.storage.services.v2.CollectionService",
3550 "GetCollection",
3551 ),
3552 );
3553 self.inner.unary(req, path, codec).await
3554 }
3555 pub async fn get_collections(
3561 &mut self,
3562 request: impl tonic::IntoRequest<super::GetCollectionsRequest>,
3563 ) -> std::result::Result<
3564 tonic::Response<super::GetCollectionsResponse>,
3565 tonic::Status,
3566 > {
3567 self.inner
3568 .ready()
3569 .await
3570 .map_err(|e| {
3571 tonic::Status::new(
3572 tonic::Code::Unknown,
3573 format!("Service was not ready: {}", e.into()),
3574 )
3575 })?;
3576 let codec = tonic::codec::ProstCodec::default();
3577 let path = http::uri::PathAndQuery::from_static(
3578 "/aruna.api.storage.services.v2.CollectionService/GetCollections",
3579 );
3580 let mut req = request.into_request();
3581 req.extensions_mut()
3582 .insert(
3583 GrpcMethod::new(
3584 "aruna.api.storage.services.v2.CollectionService",
3585 "GetCollections",
3586 ),
3587 );
3588 self.inner.unary(req, path, codec).await
3589 }
3590 pub async fn delete_collection(
3596 &mut self,
3597 request: impl tonic::IntoRequest<super::DeleteCollectionRequest>,
3598 ) -> std::result::Result<
3599 tonic::Response<super::DeleteCollectionResponse>,
3600 tonic::Status,
3601 > {
3602 self.inner
3603 .ready()
3604 .await
3605 .map_err(|e| {
3606 tonic::Status::new(
3607 tonic::Code::Unknown,
3608 format!("Service was not ready: {}", e.into()),
3609 )
3610 })?;
3611 let codec = tonic::codec::ProstCodec::default();
3612 let path = http::uri::PathAndQuery::from_static(
3613 "/aruna.api.storage.services.v2.CollectionService/DeleteCollection",
3614 );
3615 let mut req = request.into_request();
3616 req.extensions_mut()
3617 .insert(
3618 GrpcMethod::new(
3619 "aruna.api.storage.services.v2.CollectionService",
3620 "DeleteCollection",
3621 ),
3622 );
3623 self.inner.unary(req, path, codec).await
3624 }
3625 pub async fn update_collection_name(
3631 &mut self,
3632 request: impl tonic::IntoRequest<super::UpdateCollectionNameRequest>,
3633 ) -> std::result::Result<
3634 tonic::Response<super::UpdateCollectionNameResponse>,
3635 tonic::Status,
3636 > {
3637 self.inner
3638 .ready()
3639 .await
3640 .map_err(|e| {
3641 tonic::Status::new(
3642 tonic::Code::Unknown,
3643 format!("Service was not ready: {}", e.into()),
3644 )
3645 })?;
3646 let codec = tonic::codec::ProstCodec::default();
3647 let path = http::uri::PathAndQuery::from_static(
3648 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionName",
3649 );
3650 let mut req = request.into_request();
3651 req.extensions_mut()
3652 .insert(
3653 GrpcMethod::new(
3654 "aruna.api.storage.services.v2.CollectionService",
3655 "UpdateCollectionName",
3656 ),
3657 );
3658 self.inner.unary(req, path, codec).await
3659 }
3660 pub async fn update_collection_description(
3666 &mut self,
3667 request: impl tonic::IntoRequest<super::UpdateCollectionDescriptionRequest>,
3668 ) -> std::result::Result<
3669 tonic::Response<super::UpdateCollectionDescriptionResponse>,
3670 tonic::Status,
3671 > {
3672 self.inner
3673 .ready()
3674 .await
3675 .map_err(|e| {
3676 tonic::Status::new(
3677 tonic::Code::Unknown,
3678 format!("Service was not ready: {}", e.into()),
3679 )
3680 })?;
3681 let codec = tonic::codec::ProstCodec::default();
3682 let path = http::uri::PathAndQuery::from_static(
3683 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionDescription",
3684 );
3685 let mut req = request.into_request();
3686 req.extensions_mut()
3687 .insert(
3688 GrpcMethod::new(
3689 "aruna.api.storage.services.v2.CollectionService",
3690 "UpdateCollectionDescription",
3691 ),
3692 );
3693 self.inner.unary(req, path, codec).await
3694 }
3695 pub async fn update_collection_key_values(
3701 &mut self,
3702 request: impl tonic::IntoRequest<super::UpdateCollectionKeyValuesRequest>,
3703 ) -> std::result::Result<
3704 tonic::Response<super::UpdateCollectionKeyValuesResponse>,
3705 tonic::Status,
3706 > {
3707 self.inner
3708 .ready()
3709 .await
3710 .map_err(|e| {
3711 tonic::Status::new(
3712 tonic::Code::Unknown,
3713 format!("Service was not ready: {}", e.into()),
3714 )
3715 })?;
3716 let codec = tonic::codec::ProstCodec::default();
3717 let path = http::uri::PathAndQuery::from_static(
3718 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionKeyValues",
3719 );
3720 let mut req = request.into_request();
3721 req.extensions_mut()
3722 .insert(
3723 GrpcMethod::new(
3724 "aruna.api.storage.services.v2.CollectionService",
3725 "UpdateCollectionKeyValues",
3726 ),
3727 );
3728 self.inner.unary(req, path, codec).await
3729 }
3730 pub async fn update_collection_data_class(
3736 &mut self,
3737 request: impl tonic::IntoRequest<super::UpdateCollectionDataClassRequest>,
3738 ) -> std::result::Result<
3739 tonic::Response<super::UpdateCollectionDataClassResponse>,
3740 tonic::Status,
3741 > {
3742 self.inner
3743 .ready()
3744 .await
3745 .map_err(|e| {
3746 tonic::Status::new(
3747 tonic::Code::Unknown,
3748 format!("Service was not ready: {}", e.into()),
3749 )
3750 })?;
3751 let codec = tonic::codec::ProstCodec::default();
3752 let path = http::uri::PathAndQuery::from_static(
3753 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionDataClass",
3754 );
3755 let mut req = request.into_request();
3756 req.extensions_mut()
3757 .insert(
3758 GrpcMethod::new(
3759 "aruna.api.storage.services.v2.CollectionService",
3760 "UpdateCollectionDataClass",
3761 ),
3762 );
3763 self.inner.unary(req, path, codec).await
3764 }
3765 pub async fn snapshot_collection(
3771 &mut self,
3772 request: impl tonic::IntoRequest<super::SnapshotCollectionRequest>,
3773 ) -> std::result::Result<
3774 tonic::Response<super::SnapshotCollectionResponse>,
3775 tonic::Status,
3776 > {
3777 self.inner
3778 .ready()
3779 .await
3780 .map_err(|e| {
3781 tonic::Status::new(
3782 tonic::Code::Unknown,
3783 format!("Service was not ready: {}", e.into()),
3784 )
3785 })?;
3786 let codec = tonic::codec::ProstCodec::default();
3787 let path = http::uri::PathAndQuery::from_static(
3788 "/aruna.api.storage.services.v2.CollectionService/SnapshotCollection",
3789 );
3790 let mut req = request.into_request();
3791 req.extensions_mut()
3792 .insert(
3793 GrpcMethod::new(
3794 "aruna.api.storage.services.v2.CollectionService",
3795 "SnapshotCollection",
3796 ),
3797 );
3798 self.inner.unary(req, path, codec).await
3799 }
3800 pub async fn update_collection_licenses(
3806 &mut self,
3807 request: impl tonic::IntoRequest<super::UpdateCollectionLicensesRequest>,
3808 ) -> std::result::Result<
3809 tonic::Response<super::UpdateCollectionLicensesResponse>,
3810 tonic::Status,
3811 > {
3812 self.inner
3813 .ready()
3814 .await
3815 .map_err(|e| {
3816 tonic::Status::new(
3817 tonic::Code::Unknown,
3818 format!("Service was not ready: {}", e.into()),
3819 )
3820 })?;
3821 let codec = tonic::codec::ProstCodec::default();
3822 let path = http::uri::PathAndQuery::from_static(
3823 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionLicenses",
3824 );
3825 let mut req = request.into_request();
3826 req.extensions_mut()
3827 .insert(
3828 GrpcMethod::new(
3829 "aruna.api.storage.services.v2.CollectionService",
3830 "UpdateCollectionLicenses",
3831 ),
3832 );
3833 self.inner.unary(req, path, codec).await
3834 }
3835 pub async fn update_collection_title(
3841 &mut self,
3842 request: impl tonic::IntoRequest<super::UpdateCollectionTitleRequest>,
3843 ) -> std::result::Result<
3844 tonic::Response<super::UpdateCollectionTitleResponse>,
3845 tonic::Status,
3846 > {
3847 self.inner
3848 .ready()
3849 .await
3850 .map_err(|e| {
3851 tonic::Status::new(
3852 tonic::Code::Unknown,
3853 format!("Service was not ready: {}", e.into()),
3854 )
3855 })?;
3856 let codec = tonic::codec::ProstCodec::default();
3857 let path = http::uri::PathAndQuery::from_static(
3858 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionTitle",
3859 );
3860 let mut req = request.into_request();
3861 req.extensions_mut()
3862 .insert(
3863 GrpcMethod::new(
3864 "aruna.api.storage.services.v2.CollectionService",
3865 "UpdateCollectionTitle",
3866 ),
3867 );
3868 self.inner.unary(req, path, codec).await
3869 }
3870 pub async fn update_collection_authors(
3876 &mut self,
3877 request: impl tonic::IntoRequest<super::UpdateCollectionAuthorsRequest>,
3878 ) -> std::result::Result<
3879 tonic::Response<super::UpdateCollectionAuthorsResponse>,
3880 tonic::Status,
3881 > {
3882 self.inner
3883 .ready()
3884 .await
3885 .map_err(|e| {
3886 tonic::Status::new(
3887 tonic::Code::Unknown,
3888 format!("Service was not ready: {}", e.into()),
3889 )
3890 })?;
3891 let codec = tonic::codec::ProstCodec::default();
3892 let path = http::uri::PathAndQuery::from_static(
3893 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionAuthors",
3894 );
3895 let mut req = request.into_request();
3896 req.extensions_mut()
3897 .insert(
3898 GrpcMethod::new(
3899 "aruna.api.storage.services.v2.CollectionService",
3900 "UpdateCollectionAuthors",
3901 ),
3902 );
3903 self.inner.unary(req, path, codec).await
3904 }
3905 }
3906}
3907pub mod collection_service_server {
3909 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
3910 use tonic::codegen::*;
3911 #[async_trait]
3913 pub trait CollectionService: Send + Sync + 'static {
3914 async fn create_collection(
3920 &self,
3921 request: tonic::Request<super::CreateCollectionRequest>,
3922 ) -> std::result::Result<
3923 tonic::Response<super::CreateCollectionResponse>,
3924 tonic::Status,
3925 >;
3926 async fn get_collection(
3932 &self,
3933 request: tonic::Request<super::GetCollectionRequest>,
3934 ) -> std::result::Result<
3935 tonic::Response<super::GetCollectionResponse>,
3936 tonic::Status,
3937 >;
3938 async fn get_collections(
3944 &self,
3945 request: tonic::Request<super::GetCollectionsRequest>,
3946 ) -> std::result::Result<
3947 tonic::Response<super::GetCollectionsResponse>,
3948 tonic::Status,
3949 >;
3950 async fn delete_collection(
3956 &self,
3957 request: tonic::Request<super::DeleteCollectionRequest>,
3958 ) -> std::result::Result<
3959 tonic::Response<super::DeleteCollectionResponse>,
3960 tonic::Status,
3961 >;
3962 async fn update_collection_name(
3968 &self,
3969 request: tonic::Request<super::UpdateCollectionNameRequest>,
3970 ) -> std::result::Result<
3971 tonic::Response<super::UpdateCollectionNameResponse>,
3972 tonic::Status,
3973 >;
3974 async fn update_collection_description(
3980 &self,
3981 request: tonic::Request<super::UpdateCollectionDescriptionRequest>,
3982 ) -> std::result::Result<
3983 tonic::Response<super::UpdateCollectionDescriptionResponse>,
3984 tonic::Status,
3985 >;
3986 async fn update_collection_key_values(
3992 &self,
3993 request: tonic::Request<super::UpdateCollectionKeyValuesRequest>,
3994 ) -> std::result::Result<
3995 tonic::Response<super::UpdateCollectionKeyValuesResponse>,
3996 tonic::Status,
3997 >;
3998 async fn update_collection_data_class(
4004 &self,
4005 request: tonic::Request<super::UpdateCollectionDataClassRequest>,
4006 ) -> std::result::Result<
4007 tonic::Response<super::UpdateCollectionDataClassResponse>,
4008 tonic::Status,
4009 >;
4010 async fn snapshot_collection(
4016 &self,
4017 request: tonic::Request<super::SnapshotCollectionRequest>,
4018 ) -> std::result::Result<
4019 tonic::Response<super::SnapshotCollectionResponse>,
4020 tonic::Status,
4021 >;
4022 async fn update_collection_licenses(
4028 &self,
4029 request: tonic::Request<super::UpdateCollectionLicensesRequest>,
4030 ) -> std::result::Result<
4031 tonic::Response<super::UpdateCollectionLicensesResponse>,
4032 tonic::Status,
4033 >;
4034 async fn update_collection_title(
4040 &self,
4041 request: tonic::Request<super::UpdateCollectionTitleRequest>,
4042 ) -> std::result::Result<
4043 tonic::Response<super::UpdateCollectionTitleResponse>,
4044 tonic::Status,
4045 >;
4046 async fn update_collection_authors(
4052 &self,
4053 request: tonic::Request<super::UpdateCollectionAuthorsRequest>,
4054 ) -> std::result::Result<
4055 tonic::Response<super::UpdateCollectionAuthorsResponse>,
4056 tonic::Status,
4057 >;
4058 }
4059 #[derive(Debug)]
4065 pub struct CollectionServiceServer<T: CollectionService> {
4066 inner: _Inner<T>,
4067 accept_compression_encodings: EnabledCompressionEncodings,
4068 send_compression_encodings: EnabledCompressionEncodings,
4069 max_decoding_message_size: Option<usize>,
4070 max_encoding_message_size: Option<usize>,
4071 }
4072 struct _Inner<T>(Arc<T>);
4073 impl<T: CollectionService> CollectionServiceServer<T> {
4074 pub fn new(inner: T) -> Self {
4075 Self::from_arc(Arc::new(inner))
4076 }
4077 pub fn from_arc(inner: Arc<T>) -> Self {
4078 let inner = _Inner(inner);
4079 Self {
4080 inner,
4081 accept_compression_encodings: Default::default(),
4082 send_compression_encodings: Default::default(),
4083 max_decoding_message_size: None,
4084 max_encoding_message_size: None,
4085 }
4086 }
4087 pub fn with_interceptor<F>(
4088 inner: T,
4089 interceptor: F,
4090 ) -> InterceptedService<Self, F>
4091 where
4092 F: tonic::service::Interceptor,
4093 {
4094 InterceptedService::new(Self::new(inner), interceptor)
4095 }
4096 #[must_use]
4098 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
4099 self.accept_compression_encodings.enable(encoding);
4100 self
4101 }
4102 #[must_use]
4104 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
4105 self.send_compression_encodings.enable(encoding);
4106 self
4107 }
4108 #[must_use]
4112 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
4113 self.max_decoding_message_size = Some(limit);
4114 self
4115 }
4116 #[must_use]
4120 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
4121 self.max_encoding_message_size = Some(limit);
4122 self
4123 }
4124 }
4125 impl<T, B> tonic::codegen::Service<http::Request<B>> for CollectionServiceServer<T>
4126 where
4127 T: CollectionService,
4128 B: Body + Send + 'static,
4129 B::Error: Into<StdError> + Send + 'static,
4130 {
4131 type Response = http::Response<tonic::body::BoxBody>;
4132 type Error = std::convert::Infallible;
4133 type Future = BoxFuture<Self::Response, Self::Error>;
4134 fn poll_ready(
4135 &mut self,
4136 _cx: &mut Context<'_>,
4137 ) -> Poll<std::result::Result<(), Self::Error>> {
4138 Poll::Ready(Ok(()))
4139 }
4140 fn call(&mut self, req: http::Request<B>) -> Self::Future {
4141 let inner = self.inner.clone();
4142 match req.uri().path() {
4143 "/aruna.api.storage.services.v2.CollectionService/CreateCollection" => {
4144 #[allow(non_camel_case_types)]
4145 struct CreateCollectionSvc<T: CollectionService>(pub Arc<T>);
4146 impl<
4147 T: CollectionService,
4148 > tonic::server::UnaryService<super::CreateCollectionRequest>
4149 for CreateCollectionSvc<T> {
4150 type Response = super::CreateCollectionResponse;
4151 type Future = BoxFuture<
4152 tonic::Response<Self::Response>,
4153 tonic::Status,
4154 >;
4155 fn call(
4156 &mut self,
4157 request: tonic::Request<super::CreateCollectionRequest>,
4158 ) -> Self::Future {
4159 let inner = Arc::clone(&self.0);
4160 let fut = async move {
4161 <T as CollectionService>::create_collection(&inner, request)
4162 .await
4163 };
4164 Box::pin(fut)
4165 }
4166 }
4167 let accept_compression_encodings = self.accept_compression_encodings;
4168 let send_compression_encodings = self.send_compression_encodings;
4169 let max_decoding_message_size = self.max_decoding_message_size;
4170 let max_encoding_message_size = self.max_encoding_message_size;
4171 let inner = self.inner.clone();
4172 let fut = async move {
4173 let inner = inner.0;
4174 let method = CreateCollectionSvc(inner);
4175 let codec = tonic::codec::ProstCodec::default();
4176 let mut grpc = tonic::server::Grpc::new(codec)
4177 .apply_compression_config(
4178 accept_compression_encodings,
4179 send_compression_encodings,
4180 )
4181 .apply_max_message_size_config(
4182 max_decoding_message_size,
4183 max_encoding_message_size,
4184 );
4185 let res = grpc.unary(method, req).await;
4186 Ok(res)
4187 };
4188 Box::pin(fut)
4189 }
4190 "/aruna.api.storage.services.v2.CollectionService/GetCollection" => {
4191 #[allow(non_camel_case_types)]
4192 struct GetCollectionSvc<T: CollectionService>(pub Arc<T>);
4193 impl<
4194 T: CollectionService,
4195 > tonic::server::UnaryService<super::GetCollectionRequest>
4196 for GetCollectionSvc<T> {
4197 type Response = super::GetCollectionResponse;
4198 type Future = BoxFuture<
4199 tonic::Response<Self::Response>,
4200 tonic::Status,
4201 >;
4202 fn call(
4203 &mut self,
4204 request: tonic::Request<super::GetCollectionRequest>,
4205 ) -> Self::Future {
4206 let inner = Arc::clone(&self.0);
4207 let fut = async move {
4208 <T as CollectionService>::get_collection(&inner, request)
4209 .await
4210 };
4211 Box::pin(fut)
4212 }
4213 }
4214 let accept_compression_encodings = self.accept_compression_encodings;
4215 let send_compression_encodings = self.send_compression_encodings;
4216 let max_decoding_message_size = self.max_decoding_message_size;
4217 let max_encoding_message_size = self.max_encoding_message_size;
4218 let inner = self.inner.clone();
4219 let fut = async move {
4220 let inner = inner.0;
4221 let method = GetCollectionSvc(inner);
4222 let codec = tonic::codec::ProstCodec::default();
4223 let mut grpc = tonic::server::Grpc::new(codec)
4224 .apply_compression_config(
4225 accept_compression_encodings,
4226 send_compression_encodings,
4227 )
4228 .apply_max_message_size_config(
4229 max_decoding_message_size,
4230 max_encoding_message_size,
4231 );
4232 let res = grpc.unary(method, req).await;
4233 Ok(res)
4234 };
4235 Box::pin(fut)
4236 }
4237 "/aruna.api.storage.services.v2.CollectionService/GetCollections" => {
4238 #[allow(non_camel_case_types)]
4239 struct GetCollectionsSvc<T: CollectionService>(pub Arc<T>);
4240 impl<
4241 T: CollectionService,
4242 > tonic::server::UnaryService<super::GetCollectionsRequest>
4243 for GetCollectionsSvc<T> {
4244 type Response = super::GetCollectionsResponse;
4245 type Future = BoxFuture<
4246 tonic::Response<Self::Response>,
4247 tonic::Status,
4248 >;
4249 fn call(
4250 &mut self,
4251 request: tonic::Request<super::GetCollectionsRequest>,
4252 ) -> Self::Future {
4253 let inner = Arc::clone(&self.0);
4254 let fut = async move {
4255 <T as CollectionService>::get_collections(&inner, request)
4256 .await
4257 };
4258 Box::pin(fut)
4259 }
4260 }
4261 let accept_compression_encodings = self.accept_compression_encodings;
4262 let send_compression_encodings = self.send_compression_encodings;
4263 let max_decoding_message_size = self.max_decoding_message_size;
4264 let max_encoding_message_size = self.max_encoding_message_size;
4265 let inner = self.inner.clone();
4266 let fut = async move {
4267 let inner = inner.0;
4268 let method = GetCollectionsSvc(inner);
4269 let codec = tonic::codec::ProstCodec::default();
4270 let mut grpc = tonic::server::Grpc::new(codec)
4271 .apply_compression_config(
4272 accept_compression_encodings,
4273 send_compression_encodings,
4274 )
4275 .apply_max_message_size_config(
4276 max_decoding_message_size,
4277 max_encoding_message_size,
4278 );
4279 let res = grpc.unary(method, req).await;
4280 Ok(res)
4281 };
4282 Box::pin(fut)
4283 }
4284 "/aruna.api.storage.services.v2.CollectionService/DeleteCollection" => {
4285 #[allow(non_camel_case_types)]
4286 struct DeleteCollectionSvc<T: CollectionService>(pub Arc<T>);
4287 impl<
4288 T: CollectionService,
4289 > tonic::server::UnaryService<super::DeleteCollectionRequest>
4290 for DeleteCollectionSvc<T> {
4291 type Response = super::DeleteCollectionResponse;
4292 type Future = BoxFuture<
4293 tonic::Response<Self::Response>,
4294 tonic::Status,
4295 >;
4296 fn call(
4297 &mut self,
4298 request: tonic::Request<super::DeleteCollectionRequest>,
4299 ) -> Self::Future {
4300 let inner = Arc::clone(&self.0);
4301 let fut = async move {
4302 <T as CollectionService>::delete_collection(&inner, request)
4303 .await
4304 };
4305 Box::pin(fut)
4306 }
4307 }
4308 let accept_compression_encodings = self.accept_compression_encodings;
4309 let send_compression_encodings = self.send_compression_encodings;
4310 let max_decoding_message_size = self.max_decoding_message_size;
4311 let max_encoding_message_size = self.max_encoding_message_size;
4312 let inner = self.inner.clone();
4313 let fut = async move {
4314 let inner = inner.0;
4315 let method = DeleteCollectionSvc(inner);
4316 let codec = tonic::codec::ProstCodec::default();
4317 let mut grpc = tonic::server::Grpc::new(codec)
4318 .apply_compression_config(
4319 accept_compression_encodings,
4320 send_compression_encodings,
4321 )
4322 .apply_max_message_size_config(
4323 max_decoding_message_size,
4324 max_encoding_message_size,
4325 );
4326 let res = grpc.unary(method, req).await;
4327 Ok(res)
4328 };
4329 Box::pin(fut)
4330 }
4331 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionName" => {
4332 #[allow(non_camel_case_types)]
4333 struct UpdateCollectionNameSvc<T: CollectionService>(pub Arc<T>);
4334 impl<
4335 T: CollectionService,
4336 > tonic::server::UnaryService<super::UpdateCollectionNameRequest>
4337 for UpdateCollectionNameSvc<T> {
4338 type Response = super::UpdateCollectionNameResponse;
4339 type Future = BoxFuture<
4340 tonic::Response<Self::Response>,
4341 tonic::Status,
4342 >;
4343 fn call(
4344 &mut self,
4345 request: tonic::Request<super::UpdateCollectionNameRequest>,
4346 ) -> Self::Future {
4347 let inner = Arc::clone(&self.0);
4348 let fut = async move {
4349 <T as CollectionService>::update_collection_name(
4350 &inner,
4351 request,
4352 )
4353 .await
4354 };
4355 Box::pin(fut)
4356 }
4357 }
4358 let accept_compression_encodings = self.accept_compression_encodings;
4359 let send_compression_encodings = self.send_compression_encodings;
4360 let max_decoding_message_size = self.max_decoding_message_size;
4361 let max_encoding_message_size = self.max_encoding_message_size;
4362 let inner = self.inner.clone();
4363 let fut = async move {
4364 let inner = inner.0;
4365 let method = UpdateCollectionNameSvc(inner);
4366 let codec = tonic::codec::ProstCodec::default();
4367 let mut grpc = tonic::server::Grpc::new(codec)
4368 .apply_compression_config(
4369 accept_compression_encodings,
4370 send_compression_encodings,
4371 )
4372 .apply_max_message_size_config(
4373 max_decoding_message_size,
4374 max_encoding_message_size,
4375 );
4376 let res = grpc.unary(method, req).await;
4377 Ok(res)
4378 };
4379 Box::pin(fut)
4380 }
4381 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionDescription" => {
4382 #[allow(non_camel_case_types)]
4383 struct UpdateCollectionDescriptionSvc<T: CollectionService>(
4384 pub Arc<T>,
4385 );
4386 impl<
4387 T: CollectionService,
4388 > tonic::server::UnaryService<
4389 super::UpdateCollectionDescriptionRequest,
4390 > for UpdateCollectionDescriptionSvc<T> {
4391 type Response = super::UpdateCollectionDescriptionResponse;
4392 type Future = BoxFuture<
4393 tonic::Response<Self::Response>,
4394 tonic::Status,
4395 >;
4396 fn call(
4397 &mut self,
4398 request: tonic::Request<
4399 super::UpdateCollectionDescriptionRequest,
4400 >,
4401 ) -> Self::Future {
4402 let inner = Arc::clone(&self.0);
4403 let fut = async move {
4404 <T as CollectionService>::update_collection_description(
4405 &inner,
4406 request,
4407 )
4408 .await
4409 };
4410 Box::pin(fut)
4411 }
4412 }
4413 let accept_compression_encodings = self.accept_compression_encodings;
4414 let send_compression_encodings = self.send_compression_encodings;
4415 let max_decoding_message_size = self.max_decoding_message_size;
4416 let max_encoding_message_size = self.max_encoding_message_size;
4417 let inner = self.inner.clone();
4418 let fut = async move {
4419 let inner = inner.0;
4420 let method = UpdateCollectionDescriptionSvc(inner);
4421 let codec = tonic::codec::ProstCodec::default();
4422 let mut grpc = tonic::server::Grpc::new(codec)
4423 .apply_compression_config(
4424 accept_compression_encodings,
4425 send_compression_encodings,
4426 )
4427 .apply_max_message_size_config(
4428 max_decoding_message_size,
4429 max_encoding_message_size,
4430 );
4431 let res = grpc.unary(method, req).await;
4432 Ok(res)
4433 };
4434 Box::pin(fut)
4435 }
4436 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionKeyValues" => {
4437 #[allow(non_camel_case_types)]
4438 struct UpdateCollectionKeyValuesSvc<T: CollectionService>(
4439 pub Arc<T>,
4440 );
4441 impl<
4442 T: CollectionService,
4443 > tonic::server::UnaryService<
4444 super::UpdateCollectionKeyValuesRequest,
4445 > for UpdateCollectionKeyValuesSvc<T> {
4446 type Response = super::UpdateCollectionKeyValuesResponse;
4447 type Future = BoxFuture<
4448 tonic::Response<Self::Response>,
4449 tonic::Status,
4450 >;
4451 fn call(
4452 &mut self,
4453 request: tonic::Request<
4454 super::UpdateCollectionKeyValuesRequest,
4455 >,
4456 ) -> Self::Future {
4457 let inner = Arc::clone(&self.0);
4458 let fut = async move {
4459 <T as CollectionService>::update_collection_key_values(
4460 &inner,
4461 request,
4462 )
4463 .await
4464 };
4465 Box::pin(fut)
4466 }
4467 }
4468 let accept_compression_encodings = self.accept_compression_encodings;
4469 let send_compression_encodings = self.send_compression_encodings;
4470 let max_decoding_message_size = self.max_decoding_message_size;
4471 let max_encoding_message_size = self.max_encoding_message_size;
4472 let inner = self.inner.clone();
4473 let fut = async move {
4474 let inner = inner.0;
4475 let method = UpdateCollectionKeyValuesSvc(inner);
4476 let codec = tonic::codec::ProstCodec::default();
4477 let mut grpc = tonic::server::Grpc::new(codec)
4478 .apply_compression_config(
4479 accept_compression_encodings,
4480 send_compression_encodings,
4481 )
4482 .apply_max_message_size_config(
4483 max_decoding_message_size,
4484 max_encoding_message_size,
4485 );
4486 let res = grpc.unary(method, req).await;
4487 Ok(res)
4488 };
4489 Box::pin(fut)
4490 }
4491 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionDataClass" => {
4492 #[allow(non_camel_case_types)]
4493 struct UpdateCollectionDataClassSvc<T: CollectionService>(
4494 pub Arc<T>,
4495 );
4496 impl<
4497 T: CollectionService,
4498 > tonic::server::UnaryService<
4499 super::UpdateCollectionDataClassRequest,
4500 > for UpdateCollectionDataClassSvc<T> {
4501 type Response = super::UpdateCollectionDataClassResponse;
4502 type Future = BoxFuture<
4503 tonic::Response<Self::Response>,
4504 tonic::Status,
4505 >;
4506 fn call(
4507 &mut self,
4508 request: tonic::Request<
4509 super::UpdateCollectionDataClassRequest,
4510 >,
4511 ) -> Self::Future {
4512 let inner = Arc::clone(&self.0);
4513 let fut = async move {
4514 <T as CollectionService>::update_collection_data_class(
4515 &inner,
4516 request,
4517 )
4518 .await
4519 };
4520 Box::pin(fut)
4521 }
4522 }
4523 let accept_compression_encodings = self.accept_compression_encodings;
4524 let send_compression_encodings = self.send_compression_encodings;
4525 let max_decoding_message_size = self.max_decoding_message_size;
4526 let max_encoding_message_size = self.max_encoding_message_size;
4527 let inner = self.inner.clone();
4528 let fut = async move {
4529 let inner = inner.0;
4530 let method = UpdateCollectionDataClassSvc(inner);
4531 let codec = tonic::codec::ProstCodec::default();
4532 let mut grpc = tonic::server::Grpc::new(codec)
4533 .apply_compression_config(
4534 accept_compression_encodings,
4535 send_compression_encodings,
4536 )
4537 .apply_max_message_size_config(
4538 max_decoding_message_size,
4539 max_encoding_message_size,
4540 );
4541 let res = grpc.unary(method, req).await;
4542 Ok(res)
4543 };
4544 Box::pin(fut)
4545 }
4546 "/aruna.api.storage.services.v2.CollectionService/SnapshotCollection" => {
4547 #[allow(non_camel_case_types)]
4548 struct SnapshotCollectionSvc<T: CollectionService>(pub Arc<T>);
4549 impl<
4550 T: CollectionService,
4551 > tonic::server::UnaryService<super::SnapshotCollectionRequest>
4552 for SnapshotCollectionSvc<T> {
4553 type Response = super::SnapshotCollectionResponse;
4554 type Future = BoxFuture<
4555 tonic::Response<Self::Response>,
4556 tonic::Status,
4557 >;
4558 fn call(
4559 &mut self,
4560 request: tonic::Request<super::SnapshotCollectionRequest>,
4561 ) -> Self::Future {
4562 let inner = Arc::clone(&self.0);
4563 let fut = async move {
4564 <T as CollectionService>::snapshot_collection(
4565 &inner,
4566 request,
4567 )
4568 .await
4569 };
4570 Box::pin(fut)
4571 }
4572 }
4573 let accept_compression_encodings = self.accept_compression_encodings;
4574 let send_compression_encodings = self.send_compression_encodings;
4575 let max_decoding_message_size = self.max_decoding_message_size;
4576 let max_encoding_message_size = self.max_encoding_message_size;
4577 let inner = self.inner.clone();
4578 let fut = async move {
4579 let inner = inner.0;
4580 let method = SnapshotCollectionSvc(inner);
4581 let codec = tonic::codec::ProstCodec::default();
4582 let mut grpc = tonic::server::Grpc::new(codec)
4583 .apply_compression_config(
4584 accept_compression_encodings,
4585 send_compression_encodings,
4586 )
4587 .apply_max_message_size_config(
4588 max_decoding_message_size,
4589 max_encoding_message_size,
4590 );
4591 let res = grpc.unary(method, req).await;
4592 Ok(res)
4593 };
4594 Box::pin(fut)
4595 }
4596 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionLicenses" => {
4597 #[allow(non_camel_case_types)]
4598 struct UpdateCollectionLicensesSvc<T: CollectionService>(pub Arc<T>);
4599 impl<
4600 T: CollectionService,
4601 > tonic::server::UnaryService<super::UpdateCollectionLicensesRequest>
4602 for UpdateCollectionLicensesSvc<T> {
4603 type Response = super::UpdateCollectionLicensesResponse;
4604 type Future = BoxFuture<
4605 tonic::Response<Self::Response>,
4606 tonic::Status,
4607 >;
4608 fn call(
4609 &mut self,
4610 request: tonic::Request<
4611 super::UpdateCollectionLicensesRequest,
4612 >,
4613 ) -> Self::Future {
4614 let inner = Arc::clone(&self.0);
4615 let fut = async move {
4616 <T as CollectionService>::update_collection_licenses(
4617 &inner,
4618 request,
4619 )
4620 .await
4621 };
4622 Box::pin(fut)
4623 }
4624 }
4625 let accept_compression_encodings = self.accept_compression_encodings;
4626 let send_compression_encodings = self.send_compression_encodings;
4627 let max_decoding_message_size = self.max_decoding_message_size;
4628 let max_encoding_message_size = self.max_encoding_message_size;
4629 let inner = self.inner.clone();
4630 let fut = async move {
4631 let inner = inner.0;
4632 let method = UpdateCollectionLicensesSvc(inner);
4633 let codec = tonic::codec::ProstCodec::default();
4634 let mut grpc = tonic::server::Grpc::new(codec)
4635 .apply_compression_config(
4636 accept_compression_encodings,
4637 send_compression_encodings,
4638 )
4639 .apply_max_message_size_config(
4640 max_decoding_message_size,
4641 max_encoding_message_size,
4642 );
4643 let res = grpc.unary(method, req).await;
4644 Ok(res)
4645 };
4646 Box::pin(fut)
4647 }
4648 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionTitle" => {
4649 #[allow(non_camel_case_types)]
4650 struct UpdateCollectionTitleSvc<T: CollectionService>(pub Arc<T>);
4651 impl<
4652 T: CollectionService,
4653 > tonic::server::UnaryService<super::UpdateCollectionTitleRequest>
4654 for UpdateCollectionTitleSvc<T> {
4655 type Response = super::UpdateCollectionTitleResponse;
4656 type Future = BoxFuture<
4657 tonic::Response<Self::Response>,
4658 tonic::Status,
4659 >;
4660 fn call(
4661 &mut self,
4662 request: tonic::Request<super::UpdateCollectionTitleRequest>,
4663 ) -> Self::Future {
4664 let inner = Arc::clone(&self.0);
4665 let fut = async move {
4666 <T as CollectionService>::update_collection_title(
4667 &inner,
4668 request,
4669 )
4670 .await
4671 };
4672 Box::pin(fut)
4673 }
4674 }
4675 let accept_compression_encodings = self.accept_compression_encodings;
4676 let send_compression_encodings = self.send_compression_encodings;
4677 let max_decoding_message_size = self.max_decoding_message_size;
4678 let max_encoding_message_size = self.max_encoding_message_size;
4679 let inner = self.inner.clone();
4680 let fut = async move {
4681 let inner = inner.0;
4682 let method = UpdateCollectionTitleSvc(inner);
4683 let codec = tonic::codec::ProstCodec::default();
4684 let mut grpc = tonic::server::Grpc::new(codec)
4685 .apply_compression_config(
4686 accept_compression_encodings,
4687 send_compression_encodings,
4688 )
4689 .apply_max_message_size_config(
4690 max_decoding_message_size,
4691 max_encoding_message_size,
4692 );
4693 let res = grpc.unary(method, req).await;
4694 Ok(res)
4695 };
4696 Box::pin(fut)
4697 }
4698 "/aruna.api.storage.services.v2.CollectionService/UpdateCollectionAuthors" => {
4699 #[allow(non_camel_case_types)]
4700 struct UpdateCollectionAuthorsSvc<T: CollectionService>(pub Arc<T>);
4701 impl<
4702 T: CollectionService,
4703 > tonic::server::UnaryService<super::UpdateCollectionAuthorsRequest>
4704 for UpdateCollectionAuthorsSvc<T> {
4705 type Response = super::UpdateCollectionAuthorsResponse;
4706 type Future = BoxFuture<
4707 tonic::Response<Self::Response>,
4708 tonic::Status,
4709 >;
4710 fn call(
4711 &mut self,
4712 request: tonic::Request<
4713 super::UpdateCollectionAuthorsRequest,
4714 >,
4715 ) -> Self::Future {
4716 let inner = Arc::clone(&self.0);
4717 let fut = async move {
4718 <T as CollectionService>::update_collection_authors(
4719 &inner,
4720 request,
4721 )
4722 .await
4723 };
4724 Box::pin(fut)
4725 }
4726 }
4727 let accept_compression_encodings = self.accept_compression_encodings;
4728 let send_compression_encodings = self.send_compression_encodings;
4729 let max_decoding_message_size = self.max_decoding_message_size;
4730 let max_encoding_message_size = self.max_encoding_message_size;
4731 let inner = self.inner.clone();
4732 let fut = async move {
4733 let inner = inner.0;
4734 let method = UpdateCollectionAuthorsSvc(inner);
4735 let codec = tonic::codec::ProstCodec::default();
4736 let mut grpc = tonic::server::Grpc::new(codec)
4737 .apply_compression_config(
4738 accept_compression_encodings,
4739 send_compression_encodings,
4740 )
4741 .apply_max_message_size_config(
4742 max_decoding_message_size,
4743 max_encoding_message_size,
4744 );
4745 let res = grpc.unary(method, req).await;
4746 Ok(res)
4747 };
4748 Box::pin(fut)
4749 }
4750 _ => {
4751 Box::pin(async move {
4752 Ok(
4753 http::Response::builder()
4754 .status(200)
4755 .header("grpc-status", "12")
4756 .header("content-type", "application/grpc")
4757 .body(empty_body())
4758 .unwrap(),
4759 )
4760 })
4761 }
4762 }
4763 }
4764 }
4765 impl<T: CollectionService> Clone for CollectionServiceServer<T> {
4766 fn clone(&self) -> Self {
4767 let inner = self.inner.clone();
4768 Self {
4769 inner,
4770 accept_compression_encodings: self.accept_compression_encodings,
4771 send_compression_encodings: self.send_compression_encodings,
4772 max_decoding_message_size: self.max_decoding_message_size,
4773 max_encoding_message_size: self.max_encoding_message_size,
4774 }
4775 }
4776 }
4777 impl<T: CollectionService> Clone for _Inner<T> {
4778 fn clone(&self) -> Self {
4779 Self(Arc::clone(&self.0))
4780 }
4781 }
4782 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
4783 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
4784 write!(f, "{:?}", self.0)
4785 }
4786 }
4787 impl<T: CollectionService> tonic::server::NamedService
4788 for CollectionServiceServer<T> {
4789 const NAME: &'static str = "aruna.api.storage.services.v2.CollectionService";
4790 }
4791}
4792#[derive(serde::Deserialize, serde::Serialize)]
4793#[allow(clippy::derive_partial_eq_without_eq)]
4794#[derive(Clone, PartialEq, ::prost::Message)]
4795pub struct ReplicateProjectDataRequest {
4796 #[prost(string, tag = "1")]
4797 pub project_id: ::prost::alloc::string::String,
4798 #[prost(string, tag = "2")]
4799 pub endpoint_id: ::prost::alloc::string::String,
4800}
4801#[derive(serde::Deserialize, serde::Serialize)]
4802#[allow(clippy::derive_partial_eq_without_eq)]
4803#[derive(Clone, PartialEq, ::prost::Message)]
4804pub struct ReplicateProjectDataResponse {
4805 #[prost(enumeration = "super::super::models::v2::ReplicationStatus", tag = "1")]
4806 pub status: i32,
4807}
4808#[derive(serde::Deserialize, serde::Serialize)]
4809#[allow(clippy::derive_partial_eq_without_eq)]
4810#[derive(Clone, PartialEq, ::prost::Message)]
4811pub struct PartialReplicateDataRequest {
4812 #[prost(string, tag = "4")]
4813 pub endpoint_id: ::prost::alloc::string::String,
4814 #[prost(oneof = "partial_replicate_data_request::DataVariant", tags = "1, 2, 3")]
4815 pub data_variant: ::core::option::Option<
4816 partial_replicate_data_request::DataVariant,
4817 >,
4818}
4819pub mod partial_replicate_data_request {
4821 #[derive(serde::Deserialize, serde::Serialize)]
4822 #[allow(clippy::derive_partial_eq_without_eq)]
4823 #[derive(Clone, PartialEq, ::prost::Oneof)]
4824 pub enum DataVariant {
4825 #[prost(string, tag = "1")]
4826 CollectionId(::prost::alloc::string::String),
4827 #[prost(string, tag = "2")]
4828 DatasetId(::prost::alloc::string::String),
4829 #[prost(string, tag = "3")]
4830 ObjectId(::prost::alloc::string::String),
4831 }
4832}
4833#[derive(serde::Deserialize, serde::Serialize)]
4834#[allow(clippy::derive_partial_eq_without_eq)]
4835#[derive(Clone, PartialEq, ::prost::Message)]
4836pub struct PartialReplicateDataResponse {
4837 #[prost(enumeration = "super::super::models::v2::ReplicationStatus", tag = "1")]
4838 pub status: i32,
4839}
4840#[derive(serde::Deserialize, serde::Serialize)]
4841#[allow(clippy::derive_partial_eq_without_eq)]
4842#[derive(Clone, PartialEq, ::prost::Message)]
4843pub struct UpdateReplicationStatusRequest {
4844 #[prost(string, tag = "1")]
4845 pub object_id: ::prost::alloc::string::String,
4846 #[prost(string, tag = "2")]
4847 pub endpoint_id: ::prost::alloc::string::String,
4848 #[prost(enumeration = "super::super::models::v2::ReplicationStatus", tag = "3")]
4849 pub status: i32,
4850}
4851#[derive(serde::Deserialize, serde::Serialize)]
4852#[allow(clippy::derive_partial_eq_without_eq)]
4853#[derive(Clone, PartialEq, ::prost::Message)]
4854pub struct UpdateReplicationStatusResponse {}
4855#[derive(serde::Deserialize, serde::Serialize)]
4856#[allow(clippy::derive_partial_eq_without_eq)]
4857#[derive(Clone, PartialEq, ::prost::Message)]
4858pub struct GetReplicationStatusRequest {
4859 #[prost(string, tag = "1")]
4860 pub resource_id: ::prost::alloc::string::String,
4861 #[prost(string, tag = "2")]
4862 pub endpoint_id: ::prost::alloc::string::String,
4863}
4864#[derive(serde::Deserialize, serde::Serialize)]
4865#[allow(clippy::derive_partial_eq_without_eq)]
4866#[derive(Clone, PartialEq, ::prost::Message)]
4867pub struct GetReplicationStatusResponse {
4868 #[prost(message, repeated, tag = "1")]
4869 pub infos: ::prost::alloc::vec::Vec<ReplicationInfo>,
4870}
4871#[derive(serde::Deserialize, serde::Serialize)]
4872#[allow(clippy::derive_partial_eq_without_eq)]
4873#[derive(Clone, PartialEq, ::prost::Message)]
4874pub struct ReplicationInfo {
4875 #[prost(message, optional, tag = "5")]
4876 pub endpoint_info: ::core::option::Option<super::super::models::v2::DataEndpoint>,
4877 #[prost(oneof = "replication_info::Resource", tags = "1, 2, 3, 4")]
4878 pub resource: ::core::option::Option<replication_info::Resource>,
4879}
4880pub mod replication_info {
4882 #[derive(serde::Deserialize, serde::Serialize)]
4883 #[allow(clippy::derive_partial_eq_without_eq)]
4884 #[derive(Clone, PartialEq, ::prost::Oneof)]
4885 pub enum Resource {
4886 #[prost(string, tag = "1")]
4887 ProjectId(::prost::alloc::string::String),
4888 #[prost(string, tag = "2")]
4889 CollectionId(::prost::alloc::string::String),
4890 #[prost(string, tag = "3")]
4891 DatasetId(::prost::alloc::string::String),
4892 #[prost(string, tag = "4")]
4893 ObjectId(::prost::alloc::string::String),
4894 }
4895}
4896#[derive(serde::Deserialize, serde::Serialize)]
4897#[allow(clippy::derive_partial_eq_without_eq)]
4898#[derive(Clone, PartialEq, ::prost::Message)]
4899pub struct DeleteReplicationRequest {
4900 #[prost(string, tag = "1")]
4901 pub resource_id: ::prost::alloc::string::String,
4902 #[prost(string, tag = "2")]
4903 pub endpoint_id: ::prost::alloc::string::String,
4904}
4905#[derive(serde::Deserialize, serde::Serialize)]
4906#[allow(clippy::derive_partial_eq_without_eq)]
4907#[derive(Clone, PartialEq, ::prost::Message)]
4908pub struct DeleteReplicationResponse {}
4909pub mod data_replication_service_client {
4911 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
4912 use tonic::codegen::*;
4913 use tonic::codegen::http::Uri;
4914 #[derive(Debug, Clone)]
4917 pub struct DataReplicationServiceClient<T> {
4918 inner: tonic::client::Grpc<T>,
4919 }
4920 impl DataReplicationServiceClient<tonic::transport::Channel> {
4921 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
4923 where
4924 D: TryInto<tonic::transport::Endpoint>,
4925 D::Error: Into<StdError>,
4926 {
4927 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
4928 Ok(Self::new(conn))
4929 }
4930 }
4931 impl<T> DataReplicationServiceClient<T>
4932 where
4933 T: tonic::client::GrpcService<tonic::body::BoxBody>,
4934 T::Error: Into<StdError>,
4935 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
4936 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
4937 {
4938 pub fn new(inner: T) -> Self {
4939 let inner = tonic::client::Grpc::new(inner);
4940 Self { inner }
4941 }
4942 pub fn with_origin(inner: T, origin: Uri) -> Self {
4943 let inner = tonic::client::Grpc::with_origin(inner, origin);
4944 Self { inner }
4945 }
4946 pub fn with_interceptor<F>(
4947 inner: T,
4948 interceptor: F,
4949 ) -> DataReplicationServiceClient<InterceptedService<T, F>>
4950 where
4951 F: tonic::service::Interceptor,
4952 T::ResponseBody: Default,
4953 T: tonic::codegen::Service<
4954 http::Request<tonic::body::BoxBody>,
4955 Response = http::Response<
4956 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
4957 >,
4958 >,
4959 <T as tonic::codegen::Service<
4960 http::Request<tonic::body::BoxBody>,
4961 >>::Error: Into<StdError> + Send + Sync,
4962 {
4963 DataReplicationServiceClient::new(
4964 InterceptedService::new(inner, interceptor),
4965 )
4966 }
4967 #[must_use]
4972 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
4973 self.inner = self.inner.send_compressed(encoding);
4974 self
4975 }
4976 #[must_use]
4978 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
4979 self.inner = self.inner.accept_compressed(encoding);
4980 self
4981 }
4982 #[must_use]
4986 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
4987 self.inner = self.inner.max_decoding_message_size(limit);
4988 self
4989 }
4990 #[must_use]
4994 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
4995 self.inner = self.inner.max_encoding_message_size(limit);
4996 self
4997 }
4998 pub async fn replicate_project_data(
5004 &mut self,
5005 request: impl tonic::IntoRequest<super::ReplicateProjectDataRequest>,
5006 ) -> std::result::Result<
5007 tonic::Response<super::ReplicateProjectDataResponse>,
5008 tonic::Status,
5009 > {
5010 self.inner
5011 .ready()
5012 .await
5013 .map_err(|e| {
5014 tonic::Status::new(
5015 tonic::Code::Unknown,
5016 format!("Service was not ready: {}", e.into()),
5017 )
5018 })?;
5019 let codec = tonic::codec::ProstCodec::default();
5020 let path = http::uri::PathAndQuery::from_static(
5021 "/aruna.api.storage.services.v2.DataReplicationService/ReplicateProjectData",
5022 );
5023 let mut req = request.into_request();
5024 req.extensions_mut()
5025 .insert(
5026 GrpcMethod::new(
5027 "aruna.api.storage.services.v2.DataReplicationService",
5028 "ReplicateProjectData",
5029 ),
5030 );
5031 self.inner.unary(req, path, codec).await
5032 }
5033 pub async fn partial_replicate_data(
5039 &mut self,
5040 request: impl tonic::IntoRequest<super::PartialReplicateDataRequest>,
5041 ) -> std::result::Result<
5042 tonic::Response<super::PartialReplicateDataResponse>,
5043 tonic::Status,
5044 > {
5045 self.inner
5046 .ready()
5047 .await
5048 .map_err(|e| {
5049 tonic::Status::new(
5050 tonic::Code::Unknown,
5051 format!("Service was not ready: {}", e.into()),
5052 )
5053 })?;
5054 let codec = tonic::codec::ProstCodec::default();
5055 let path = http::uri::PathAndQuery::from_static(
5056 "/aruna.api.storage.services.v2.DataReplicationService/PartialReplicateData",
5057 );
5058 let mut req = request.into_request();
5059 req.extensions_mut()
5060 .insert(
5061 GrpcMethod::new(
5062 "aruna.api.storage.services.v2.DataReplicationService",
5063 "PartialReplicateData",
5064 ),
5065 );
5066 self.inner.unary(req, path, codec).await
5067 }
5068 pub async fn update_replication_status(
5074 &mut self,
5075 request: impl tonic::IntoRequest<super::UpdateReplicationStatusRequest>,
5076 ) -> std::result::Result<
5077 tonic::Response<super::UpdateReplicationStatusResponse>,
5078 tonic::Status,
5079 > {
5080 self.inner
5081 .ready()
5082 .await
5083 .map_err(|e| {
5084 tonic::Status::new(
5085 tonic::Code::Unknown,
5086 format!("Service was not ready: {}", e.into()),
5087 )
5088 })?;
5089 let codec = tonic::codec::ProstCodec::default();
5090 let path = http::uri::PathAndQuery::from_static(
5091 "/aruna.api.storage.services.v2.DataReplicationService/UpdateReplicationStatus",
5092 );
5093 let mut req = request.into_request();
5094 req.extensions_mut()
5095 .insert(
5096 GrpcMethod::new(
5097 "aruna.api.storage.services.v2.DataReplicationService",
5098 "UpdateReplicationStatus",
5099 ),
5100 );
5101 self.inner.unary(req, path, codec).await
5102 }
5103 pub async fn get_replication_status(
5109 &mut self,
5110 request: impl tonic::IntoRequest<super::GetReplicationStatusRequest>,
5111 ) -> std::result::Result<
5112 tonic::Response<super::GetReplicationStatusResponse>,
5113 tonic::Status,
5114 > {
5115 self.inner
5116 .ready()
5117 .await
5118 .map_err(|e| {
5119 tonic::Status::new(
5120 tonic::Code::Unknown,
5121 format!("Service was not ready: {}", e.into()),
5122 )
5123 })?;
5124 let codec = tonic::codec::ProstCodec::default();
5125 let path = http::uri::PathAndQuery::from_static(
5126 "/aruna.api.storage.services.v2.DataReplicationService/GetReplicationStatus",
5127 );
5128 let mut req = request.into_request();
5129 req.extensions_mut()
5130 .insert(
5131 GrpcMethod::new(
5132 "aruna.api.storage.services.v2.DataReplicationService",
5133 "GetReplicationStatus",
5134 ),
5135 );
5136 self.inner.unary(req, path, codec).await
5137 }
5138 pub async fn delete_replication(
5144 &mut self,
5145 request: impl tonic::IntoRequest<super::DeleteReplicationRequest>,
5146 ) -> std::result::Result<
5147 tonic::Response<super::DeleteReplicationResponse>,
5148 tonic::Status,
5149 > {
5150 self.inner
5151 .ready()
5152 .await
5153 .map_err(|e| {
5154 tonic::Status::new(
5155 tonic::Code::Unknown,
5156 format!("Service was not ready: {}", e.into()),
5157 )
5158 })?;
5159 let codec = tonic::codec::ProstCodec::default();
5160 let path = http::uri::PathAndQuery::from_static(
5161 "/aruna.api.storage.services.v2.DataReplicationService/DeleteReplication",
5162 );
5163 let mut req = request.into_request();
5164 req.extensions_mut()
5165 .insert(
5166 GrpcMethod::new(
5167 "aruna.api.storage.services.v2.DataReplicationService",
5168 "DeleteReplication",
5169 ),
5170 );
5171 self.inner.unary(req, path, codec).await
5172 }
5173 }
5174}
5175pub mod data_replication_service_server {
5177 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
5178 use tonic::codegen::*;
5179 #[async_trait]
5181 pub trait DataReplicationService: Send + Sync + 'static {
5182 async fn replicate_project_data(
5188 &self,
5189 request: tonic::Request<super::ReplicateProjectDataRequest>,
5190 ) -> std::result::Result<
5191 tonic::Response<super::ReplicateProjectDataResponse>,
5192 tonic::Status,
5193 >;
5194 async fn partial_replicate_data(
5200 &self,
5201 request: tonic::Request<super::PartialReplicateDataRequest>,
5202 ) -> std::result::Result<
5203 tonic::Response<super::PartialReplicateDataResponse>,
5204 tonic::Status,
5205 >;
5206 async fn update_replication_status(
5212 &self,
5213 request: tonic::Request<super::UpdateReplicationStatusRequest>,
5214 ) -> std::result::Result<
5215 tonic::Response<super::UpdateReplicationStatusResponse>,
5216 tonic::Status,
5217 >;
5218 async fn get_replication_status(
5224 &self,
5225 request: tonic::Request<super::GetReplicationStatusRequest>,
5226 ) -> std::result::Result<
5227 tonic::Response<super::GetReplicationStatusResponse>,
5228 tonic::Status,
5229 >;
5230 async fn delete_replication(
5236 &self,
5237 request: tonic::Request<super::DeleteReplicationRequest>,
5238 ) -> std::result::Result<
5239 tonic::Response<super::DeleteReplicationResponse>,
5240 tonic::Status,
5241 >;
5242 }
5243 #[derive(Debug)]
5246 pub struct DataReplicationServiceServer<T: DataReplicationService> {
5247 inner: _Inner<T>,
5248 accept_compression_encodings: EnabledCompressionEncodings,
5249 send_compression_encodings: EnabledCompressionEncodings,
5250 max_decoding_message_size: Option<usize>,
5251 max_encoding_message_size: Option<usize>,
5252 }
5253 struct _Inner<T>(Arc<T>);
5254 impl<T: DataReplicationService> DataReplicationServiceServer<T> {
5255 pub fn new(inner: T) -> Self {
5256 Self::from_arc(Arc::new(inner))
5257 }
5258 pub fn from_arc(inner: Arc<T>) -> Self {
5259 let inner = _Inner(inner);
5260 Self {
5261 inner,
5262 accept_compression_encodings: Default::default(),
5263 send_compression_encodings: Default::default(),
5264 max_decoding_message_size: None,
5265 max_encoding_message_size: None,
5266 }
5267 }
5268 pub fn with_interceptor<F>(
5269 inner: T,
5270 interceptor: F,
5271 ) -> InterceptedService<Self, F>
5272 where
5273 F: tonic::service::Interceptor,
5274 {
5275 InterceptedService::new(Self::new(inner), interceptor)
5276 }
5277 #[must_use]
5279 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
5280 self.accept_compression_encodings.enable(encoding);
5281 self
5282 }
5283 #[must_use]
5285 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
5286 self.send_compression_encodings.enable(encoding);
5287 self
5288 }
5289 #[must_use]
5293 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
5294 self.max_decoding_message_size = Some(limit);
5295 self
5296 }
5297 #[must_use]
5301 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
5302 self.max_encoding_message_size = Some(limit);
5303 self
5304 }
5305 }
5306 impl<T, B> tonic::codegen::Service<http::Request<B>>
5307 for DataReplicationServiceServer<T>
5308 where
5309 T: DataReplicationService,
5310 B: Body + Send + 'static,
5311 B::Error: Into<StdError> + Send + 'static,
5312 {
5313 type Response = http::Response<tonic::body::BoxBody>;
5314 type Error = std::convert::Infallible;
5315 type Future = BoxFuture<Self::Response, Self::Error>;
5316 fn poll_ready(
5317 &mut self,
5318 _cx: &mut Context<'_>,
5319 ) -> Poll<std::result::Result<(), Self::Error>> {
5320 Poll::Ready(Ok(()))
5321 }
5322 fn call(&mut self, req: http::Request<B>) -> Self::Future {
5323 let inner = self.inner.clone();
5324 match req.uri().path() {
5325 "/aruna.api.storage.services.v2.DataReplicationService/ReplicateProjectData" => {
5326 #[allow(non_camel_case_types)]
5327 struct ReplicateProjectDataSvc<T: DataReplicationService>(
5328 pub Arc<T>,
5329 );
5330 impl<
5331 T: DataReplicationService,
5332 > tonic::server::UnaryService<super::ReplicateProjectDataRequest>
5333 for ReplicateProjectDataSvc<T> {
5334 type Response = super::ReplicateProjectDataResponse;
5335 type Future = BoxFuture<
5336 tonic::Response<Self::Response>,
5337 tonic::Status,
5338 >;
5339 fn call(
5340 &mut self,
5341 request: tonic::Request<super::ReplicateProjectDataRequest>,
5342 ) -> Self::Future {
5343 let inner = Arc::clone(&self.0);
5344 let fut = async move {
5345 <T as DataReplicationService>::replicate_project_data(
5346 &inner,
5347 request,
5348 )
5349 .await
5350 };
5351 Box::pin(fut)
5352 }
5353 }
5354 let accept_compression_encodings = self.accept_compression_encodings;
5355 let send_compression_encodings = self.send_compression_encodings;
5356 let max_decoding_message_size = self.max_decoding_message_size;
5357 let max_encoding_message_size = self.max_encoding_message_size;
5358 let inner = self.inner.clone();
5359 let fut = async move {
5360 let inner = inner.0;
5361 let method = ReplicateProjectDataSvc(inner);
5362 let codec = tonic::codec::ProstCodec::default();
5363 let mut grpc = tonic::server::Grpc::new(codec)
5364 .apply_compression_config(
5365 accept_compression_encodings,
5366 send_compression_encodings,
5367 )
5368 .apply_max_message_size_config(
5369 max_decoding_message_size,
5370 max_encoding_message_size,
5371 );
5372 let res = grpc.unary(method, req).await;
5373 Ok(res)
5374 };
5375 Box::pin(fut)
5376 }
5377 "/aruna.api.storage.services.v2.DataReplicationService/PartialReplicateData" => {
5378 #[allow(non_camel_case_types)]
5379 struct PartialReplicateDataSvc<T: DataReplicationService>(
5380 pub Arc<T>,
5381 );
5382 impl<
5383 T: DataReplicationService,
5384 > tonic::server::UnaryService<super::PartialReplicateDataRequest>
5385 for PartialReplicateDataSvc<T> {
5386 type Response = super::PartialReplicateDataResponse;
5387 type Future = BoxFuture<
5388 tonic::Response<Self::Response>,
5389 tonic::Status,
5390 >;
5391 fn call(
5392 &mut self,
5393 request: tonic::Request<super::PartialReplicateDataRequest>,
5394 ) -> Self::Future {
5395 let inner = Arc::clone(&self.0);
5396 let fut = async move {
5397 <T as DataReplicationService>::partial_replicate_data(
5398 &inner,
5399 request,
5400 )
5401 .await
5402 };
5403 Box::pin(fut)
5404 }
5405 }
5406 let accept_compression_encodings = self.accept_compression_encodings;
5407 let send_compression_encodings = self.send_compression_encodings;
5408 let max_decoding_message_size = self.max_decoding_message_size;
5409 let max_encoding_message_size = self.max_encoding_message_size;
5410 let inner = self.inner.clone();
5411 let fut = async move {
5412 let inner = inner.0;
5413 let method = PartialReplicateDataSvc(inner);
5414 let codec = tonic::codec::ProstCodec::default();
5415 let mut grpc = tonic::server::Grpc::new(codec)
5416 .apply_compression_config(
5417 accept_compression_encodings,
5418 send_compression_encodings,
5419 )
5420 .apply_max_message_size_config(
5421 max_decoding_message_size,
5422 max_encoding_message_size,
5423 );
5424 let res = grpc.unary(method, req).await;
5425 Ok(res)
5426 };
5427 Box::pin(fut)
5428 }
5429 "/aruna.api.storage.services.v2.DataReplicationService/UpdateReplicationStatus" => {
5430 #[allow(non_camel_case_types)]
5431 struct UpdateReplicationStatusSvc<T: DataReplicationService>(
5432 pub Arc<T>,
5433 );
5434 impl<
5435 T: DataReplicationService,
5436 > tonic::server::UnaryService<super::UpdateReplicationStatusRequest>
5437 for UpdateReplicationStatusSvc<T> {
5438 type Response = super::UpdateReplicationStatusResponse;
5439 type Future = BoxFuture<
5440 tonic::Response<Self::Response>,
5441 tonic::Status,
5442 >;
5443 fn call(
5444 &mut self,
5445 request: tonic::Request<
5446 super::UpdateReplicationStatusRequest,
5447 >,
5448 ) -> Self::Future {
5449 let inner = Arc::clone(&self.0);
5450 let fut = async move {
5451 <T as DataReplicationService>::update_replication_status(
5452 &inner,
5453 request,
5454 )
5455 .await
5456 };
5457 Box::pin(fut)
5458 }
5459 }
5460 let accept_compression_encodings = self.accept_compression_encodings;
5461 let send_compression_encodings = self.send_compression_encodings;
5462 let max_decoding_message_size = self.max_decoding_message_size;
5463 let max_encoding_message_size = self.max_encoding_message_size;
5464 let inner = self.inner.clone();
5465 let fut = async move {
5466 let inner = inner.0;
5467 let method = UpdateReplicationStatusSvc(inner);
5468 let codec = tonic::codec::ProstCodec::default();
5469 let mut grpc = tonic::server::Grpc::new(codec)
5470 .apply_compression_config(
5471 accept_compression_encodings,
5472 send_compression_encodings,
5473 )
5474 .apply_max_message_size_config(
5475 max_decoding_message_size,
5476 max_encoding_message_size,
5477 );
5478 let res = grpc.unary(method, req).await;
5479 Ok(res)
5480 };
5481 Box::pin(fut)
5482 }
5483 "/aruna.api.storage.services.v2.DataReplicationService/GetReplicationStatus" => {
5484 #[allow(non_camel_case_types)]
5485 struct GetReplicationStatusSvc<T: DataReplicationService>(
5486 pub Arc<T>,
5487 );
5488 impl<
5489 T: DataReplicationService,
5490 > tonic::server::UnaryService<super::GetReplicationStatusRequest>
5491 for GetReplicationStatusSvc<T> {
5492 type Response = super::GetReplicationStatusResponse;
5493 type Future = BoxFuture<
5494 tonic::Response<Self::Response>,
5495 tonic::Status,
5496 >;
5497 fn call(
5498 &mut self,
5499 request: tonic::Request<super::GetReplicationStatusRequest>,
5500 ) -> Self::Future {
5501 let inner = Arc::clone(&self.0);
5502 let fut = async move {
5503 <T as DataReplicationService>::get_replication_status(
5504 &inner,
5505 request,
5506 )
5507 .await
5508 };
5509 Box::pin(fut)
5510 }
5511 }
5512 let accept_compression_encodings = self.accept_compression_encodings;
5513 let send_compression_encodings = self.send_compression_encodings;
5514 let max_decoding_message_size = self.max_decoding_message_size;
5515 let max_encoding_message_size = self.max_encoding_message_size;
5516 let inner = self.inner.clone();
5517 let fut = async move {
5518 let inner = inner.0;
5519 let method = GetReplicationStatusSvc(inner);
5520 let codec = tonic::codec::ProstCodec::default();
5521 let mut grpc = tonic::server::Grpc::new(codec)
5522 .apply_compression_config(
5523 accept_compression_encodings,
5524 send_compression_encodings,
5525 )
5526 .apply_max_message_size_config(
5527 max_decoding_message_size,
5528 max_encoding_message_size,
5529 );
5530 let res = grpc.unary(method, req).await;
5531 Ok(res)
5532 };
5533 Box::pin(fut)
5534 }
5535 "/aruna.api.storage.services.v2.DataReplicationService/DeleteReplication" => {
5536 #[allow(non_camel_case_types)]
5537 struct DeleteReplicationSvc<T: DataReplicationService>(pub Arc<T>);
5538 impl<
5539 T: DataReplicationService,
5540 > tonic::server::UnaryService<super::DeleteReplicationRequest>
5541 for DeleteReplicationSvc<T> {
5542 type Response = super::DeleteReplicationResponse;
5543 type Future = BoxFuture<
5544 tonic::Response<Self::Response>,
5545 tonic::Status,
5546 >;
5547 fn call(
5548 &mut self,
5549 request: tonic::Request<super::DeleteReplicationRequest>,
5550 ) -> Self::Future {
5551 let inner = Arc::clone(&self.0);
5552 let fut = async move {
5553 <T as DataReplicationService>::delete_replication(
5554 &inner,
5555 request,
5556 )
5557 .await
5558 };
5559 Box::pin(fut)
5560 }
5561 }
5562 let accept_compression_encodings = self.accept_compression_encodings;
5563 let send_compression_encodings = self.send_compression_encodings;
5564 let max_decoding_message_size = self.max_decoding_message_size;
5565 let max_encoding_message_size = self.max_encoding_message_size;
5566 let inner = self.inner.clone();
5567 let fut = async move {
5568 let inner = inner.0;
5569 let method = DeleteReplicationSvc(inner);
5570 let codec = tonic::codec::ProstCodec::default();
5571 let mut grpc = tonic::server::Grpc::new(codec)
5572 .apply_compression_config(
5573 accept_compression_encodings,
5574 send_compression_encodings,
5575 )
5576 .apply_max_message_size_config(
5577 max_decoding_message_size,
5578 max_encoding_message_size,
5579 );
5580 let res = grpc.unary(method, req).await;
5581 Ok(res)
5582 };
5583 Box::pin(fut)
5584 }
5585 _ => {
5586 Box::pin(async move {
5587 Ok(
5588 http::Response::builder()
5589 .status(200)
5590 .header("grpc-status", "12")
5591 .header("content-type", "application/grpc")
5592 .body(empty_body())
5593 .unwrap(),
5594 )
5595 })
5596 }
5597 }
5598 }
5599 }
5600 impl<T: DataReplicationService> Clone for DataReplicationServiceServer<T> {
5601 fn clone(&self) -> Self {
5602 let inner = self.inner.clone();
5603 Self {
5604 inner,
5605 accept_compression_encodings: self.accept_compression_encodings,
5606 send_compression_encodings: self.send_compression_encodings,
5607 max_decoding_message_size: self.max_decoding_message_size,
5608 max_encoding_message_size: self.max_encoding_message_size,
5609 }
5610 }
5611 }
5612 impl<T: DataReplicationService> Clone for _Inner<T> {
5613 fn clone(&self) -> Self {
5614 Self(Arc::clone(&self.0))
5615 }
5616 }
5617 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
5618 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
5619 write!(f, "{:?}", self.0)
5620 }
5621 }
5622 impl<T: DataReplicationService> tonic::server::NamedService
5623 for DataReplicationServiceServer<T> {
5624 const NAME: &'static str = "aruna.api.storage.services.v2.DataReplicationService";
5625 }
5626}
5627#[derive(serde::Deserialize, serde::Serialize)]
5632#[allow(clippy::derive_partial_eq_without_eq)]
5633#[derive(Clone, PartialEq, ::prost::Message)]
5634pub struct CreateObjectRequest {
5635 #[prost(string, tag = "1")]
5637 pub name: ::prost::alloc::string::String,
5638 #[prost(string, tag = "12")]
5640 pub title: ::prost::alloc::string::String,
5641 #[prost(string, tag = "2")]
5643 pub description: ::prost::alloc::string::String,
5644 #[prost(message, repeated, tag = "3")]
5646 pub key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
5647 #[prost(message, repeated, tag = "4")]
5649 pub relations: ::prost::alloc::vec::Vec<super::super::models::v2::Relation>,
5650 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "5")]
5652 pub data_class: i32,
5653 #[prost(message, repeated, tag = "9")]
5654 pub hashes: ::prost::alloc::vec::Vec<super::super::models::v2::Hash>,
5655 #[prost(string, tag = "10")]
5656 pub metadata_license_tag: ::prost::alloc::string::String,
5657 #[prost(string, tag = "11")]
5658 pub data_license_tag: ::prost::alloc::string::String,
5659 #[prost(message, repeated, tag = "13")]
5660 pub authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
5661 #[prost(oneof = "create_object_request::Parent", tags = "6, 7, 8")]
5663 pub parent: ::core::option::Option<create_object_request::Parent>,
5664}
5665pub mod create_object_request {
5667 #[derive(serde::Deserialize, serde::Serialize)]
5669 #[allow(clippy::derive_partial_eq_without_eq)]
5670 #[derive(Clone, PartialEq, ::prost::Oneof)]
5671 pub enum Parent {
5672 #[prost(string, tag = "6")]
5673 ProjectId(::prost::alloc::string::String),
5674 #[prost(string, tag = "7")]
5675 CollectionId(::prost::alloc::string::String),
5676 #[prost(string, tag = "8")]
5677 DatasetId(::prost::alloc::string::String),
5678 }
5679}
5680#[derive(serde::Deserialize, serde::Serialize)]
5681#[allow(clippy::derive_partial_eq_without_eq)]
5682#[derive(Clone, PartialEq, ::prost::Message)]
5683pub struct CreateObjectResponse {
5684 #[prost(message, optional, tag = "1")]
5685 pub object: ::core::option::Option<super::super::models::v2::Object>,
5686}
5687#[derive(serde::Deserialize, serde::Serialize)]
5688#[allow(clippy::derive_partial_eq_without_eq)]
5689#[derive(Clone, PartialEq, ::prost::Message)]
5690pub struct GetUploadUrlRequest {
5691 #[prost(string, tag = "1")]
5693 pub object_id: ::prost::alloc::string::String,
5694 #[prost(bool, tag = "2")]
5696 pub multipart: bool,
5697 #[prost(int32, tag = "3")]
5699 pub part_number: i32,
5700 #[prost(string, tag = "4")]
5702 pub upload_id: ::prost::alloc::string::String,
5703}
5704#[derive(serde::Deserialize, serde::Serialize)]
5705#[allow(clippy::derive_partial_eq_without_eq)]
5706#[derive(Clone, PartialEq, ::prost::Message)]
5707pub struct GetUploadUrlResponse {
5708 #[prost(string, tag = "1")]
5710 pub url: ::prost::alloc::string::String,
5711 #[prost(string, tag = "2")]
5713 pub upload_id: ::prost::alloc::string::String,
5714}
5715#[derive(serde::Deserialize, serde::Serialize)]
5716#[allow(clippy::derive_partial_eq_without_eq)]
5717#[derive(Clone, PartialEq, ::prost::Message)]
5718pub struct GetDownloadUrlRequest {
5719 #[prost(string, tag = "1")]
5720 pub object_id: ::prost::alloc::string::String,
5721}
5722#[derive(serde::Deserialize, serde::Serialize)]
5723#[allow(clippy::derive_partial_eq_without_eq)]
5724#[derive(Clone, PartialEq, ::prost::Message)]
5725pub struct GetDownloadUrlResponse {
5726 #[prost(string, tag = "1")]
5728 pub url: ::prost::alloc::string::String,
5729}
5730#[derive(serde::Deserialize, serde::Serialize)]
5731#[allow(clippy::derive_partial_eq_without_eq)]
5732#[derive(Clone, PartialEq, ::prost::Message)]
5733pub struct CompletedPart {
5734 #[prost(string, tag = "1")]
5736 pub etag: ::prost::alloc::string::String,
5737 #[prost(int64, tag = "2")]
5739 pub part: i64,
5740}
5741#[derive(serde::Deserialize, serde::Serialize)]
5742#[allow(clippy::derive_partial_eq_without_eq)]
5743#[derive(Clone, PartialEq, ::prost::Message)]
5744pub struct FinishObjectStagingRequest {
5745 #[prost(string, tag = "1")]
5747 pub object_id: ::prost::alloc::string::String,
5748 #[prost(int64, tag = "2")]
5750 pub content_len: i64,
5751 #[prost(message, repeated, tag = "3")]
5754 pub hashes: ::prost::alloc::vec::Vec<super::super::models::v2::Hash>,
5755 #[prost(message, repeated, tag = "4")]
5759 pub completed_parts: ::prost::alloc::vec::Vec<CompletedPart>,
5760 #[prost(string, tag = "5")]
5764 pub upload_id: ::prost::alloc::string::String,
5765}
5766#[derive(serde::Deserialize, serde::Serialize)]
5767#[allow(clippy::derive_partial_eq_without_eq)]
5768#[derive(Clone, PartialEq, ::prost::Message)]
5769pub struct FinishObjectStagingResponse {
5770 #[prost(message, optional, tag = "1")]
5772 pub object: ::core::option::Option<super::super::models::v2::Object>,
5773}
5774#[derive(serde::Deserialize, serde::Serialize)]
5775#[allow(clippy::derive_partial_eq_without_eq)]
5776#[derive(Clone, PartialEq, ::prost::Message)]
5777pub struct UpdateObjectRequest {
5778 #[prost(string, tag = "1")]
5780 pub object_id: ::prost::alloc::string::String,
5781 #[prost(string, optional, tag = "2")]
5783 pub name: ::core::option::Option<::prost::alloc::string::String>,
5784 #[prost(string, optional, tag = "3")]
5786 pub description: ::core::option::Option<::prost::alloc::string::String>,
5787 #[prost(message, repeated, tag = "4")]
5789 pub add_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
5790 #[prost(message, repeated, tag = "5")]
5792 pub remove_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
5793 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "7")]
5795 pub data_class: i32,
5796 #[prost(message, repeated, tag = "12")]
5797 pub hashes: ::prost::alloc::vec::Vec<super::super::models::v2::Hash>,
5798 #[prost(bool, tag = "13")]
5800 pub force_revision: bool,
5801 #[prost(string, optional, tag = "14")]
5802 pub metadata_license_tag: ::core::option::Option<::prost::alloc::string::String>,
5803 #[prost(string, optional, tag = "15")]
5804 pub data_license_tag: ::core::option::Option<::prost::alloc::string::String>,
5805 #[prost(oneof = "update_object_request::Parent", tags = "8, 9, 10")]
5807 pub parent: ::core::option::Option<update_object_request::Parent>,
5808}
5809pub mod update_object_request {
5811 #[derive(serde::Deserialize, serde::Serialize)]
5813 #[allow(clippy::derive_partial_eq_without_eq)]
5814 #[derive(Clone, PartialEq, ::prost::Oneof)]
5815 pub enum Parent {
5816 #[prost(string, tag = "8")]
5817 ProjectId(::prost::alloc::string::String),
5818 #[prost(string, tag = "9")]
5819 CollectionId(::prost::alloc::string::String),
5820 #[prost(string, tag = "10")]
5821 DatasetId(::prost::alloc::string::String),
5822 }
5823}
5824#[derive(serde::Deserialize, serde::Serialize)]
5825#[allow(clippy::derive_partial_eq_without_eq)]
5826#[derive(Clone, PartialEq, ::prost::Message)]
5827pub struct UpdateObjectResponse {
5828 #[prost(message, optional, tag = "1")]
5829 pub object: ::core::option::Option<super::super::models::v2::Object>,
5830 #[prost(bool, tag = "2")]
5831 pub new_revision: bool,
5832}
5833#[derive(serde::Deserialize, serde::Serialize)]
5834#[allow(clippy::derive_partial_eq_without_eq)]
5835#[derive(Clone, PartialEq, ::prost::Message)]
5836pub struct CloneObjectRequest {
5837 #[prost(string, tag = "1")]
5839 pub object_id: ::prost::alloc::string::String,
5840 #[prost(oneof = "clone_object_request::Parent", tags = "2, 3, 4")]
5842 pub parent: ::core::option::Option<clone_object_request::Parent>,
5843}
5844pub mod clone_object_request {
5846 #[derive(serde::Deserialize, serde::Serialize)]
5848 #[allow(clippy::derive_partial_eq_without_eq)]
5849 #[derive(Clone, PartialEq, ::prost::Oneof)]
5850 pub enum Parent {
5851 #[prost(string, tag = "2")]
5852 ProjectId(::prost::alloc::string::String),
5853 #[prost(string, tag = "3")]
5854 CollectionId(::prost::alloc::string::String),
5855 #[prost(string, tag = "4")]
5856 DatasetId(::prost::alloc::string::String),
5857 }
5858}
5859#[derive(serde::Deserialize, serde::Serialize)]
5860#[allow(clippy::derive_partial_eq_without_eq)]
5861#[derive(Clone, PartialEq, ::prost::Message)]
5862pub struct CloneObjectResponse {
5863 #[prost(message, optional, tag = "1")]
5865 pub object: ::core::option::Option<super::super::models::v2::Object>,
5866}
5867#[derive(serde::Deserialize, serde::Serialize)]
5868#[allow(clippy::derive_partial_eq_without_eq)]
5869#[derive(Clone, PartialEq, ::prost::Message)]
5870pub struct DeleteObjectRequest {
5871 #[prost(string, tag = "1")]
5873 pub object_id: ::prost::alloc::string::String,
5874 #[prost(bool, tag = "2")]
5876 pub with_revisions: bool,
5877}
5878#[derive(serde::Deserialize, serde::Serialize)]
5879#[allow(clippy::derive_partial_eq_without_eq)]
5880#[derive(Clone, PartialEq, ::prost::Message)]
5881pub struct DeleteObjectResponse {}
5882#[derive(serde::Deserialize, serde::Serialize)]
5883#[allow(clippy::derive_partial_eq_without_eq)]
5884#[derive(Clone, PartialEq, ::prost::Message)]
5885pub struct GetObjectRequest {
5886 #[prost(string, tag = "1")]
5888 pub object_id: ::prost::alloc::string::String,
5889}
5890#[derive(serde::Deserialize, serde::Serialize)]
5891#[allow(clippy::derive_partial_eq_without_eq)]
5892#[derive(Clone, PartialEq, ::prost::Message)]
5893pub struct GetObjectResponse {
5894 #[prost(message, optional, tag = "1")]
5895 pub object: ::core::option::Option<super::super::models::v2::Object>,
5896}
5897#[derive(serde::Deserialize, serde::Serialize)]
5898#[allow(clippy::derive_partial_eq_without_eq)]
5899#[derive(Clone, PartialEq, ::prost::Message)]
5900pub struct GetObjectsRequest {
5901 #[prost(string, repeated, tag = "1")]
5903 pub object_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
5904}
5905#[derive(serde::Deserialize, serde::Serialize)]
5906#[allow(clippy::derive_partial_eq_without_eq)]
5907#[derive(Clone, PartialEq, ::prost::Message)]
5908pub struct GetObjectsResponse {
5909 #[prost(message, repeated, tag = "1")]
5911 pub objects: ::prost::alloc::vec::Vec<super::super::models::v2::Object>,
5912}
5913#[derive(serde::Deserialize, serde::Serialize)]
5914#[allow(clippy::derive_partial_eq_without_eq)]
5915#[derive(Clone, PartialEq, ::prost::Message)]
5916pub struct GetObjectRevisionsRequest {
5917 #[prost(string, tag = "2")]
5919 pub object_id: ::prost::alloc::string::String,
5920}
5921#[derive(serde::Deserialize, serde::Serialize)]
5922#[allow(clippy::derive_partial_eq_without_eq)]
5923#[derive(Clone, PartialEq, ::prost::Message)]
5924pub struct GetObjectRevisionsResponse {
5925 #[prost(message, repeated, tag = "1")]
5927 pub objects: ::prost::alloc::vec::Vec<super::super::models::v2::Object>,
5928}
5929#[derive(serde::Deserialize, serde::Serialize)]
5930#[allow(clippy::derive_partial_eq_without_eq)]
5931#[derive(Clone, PartialEq, ::prost::Message)]
5932pub struct GetLatestObjectRevisionRequest {
5933 #[prost(string, tag = "1")]
5935 pub object_id: ::prost::alloc::string::String,
5936}
5937#[derive(serde::Deserialize, serde::Serialize)]
5938#[allow(clippy::derive_partial_eq_without_eq)]
5939#[derive(Clone, PartialEq, ::prost::Message)]
5940pub struct GetLatestObjectRevisionResponse {
5941 #[prost(message, optional, tag = "1")]
5943 pub object: ::core::option::Option<super::super::models::v2::Object>,
5944}
5945#[derive(serde::Deserialize, serde::Serialize)]
5946#[allow(clippy::derive_partial_eq_without_eq)]
5947#[derive(Clone, PartialEq, ::prost::Message)]
5948pub struct GetObjectEndpointsRequest {
5949 #[prost(string, tag = "1")]
5951 pub collection_id: ::prost::alloc::string::String,
5952 #[prost(string, tag = "2")]
5954 pub object_id: ::prost::alloc::string::String,
5955}
5956#[derive(serde::Deserialize, serde::Serialize)]
5957#[allow(clippy::derive_partial_eq_without_eq)]
5958#[derive(Clone, PartialEq, ::prost::Message)]
5959pub struct UpdateObjectTitleRequest {
5960 #[prost(string, tag = "1")]
5962 pub object_id: ::prost::alloc::string::String,
5963 #[prost(string, tag = "2")]
5965 pub title: ::prost::alloc::string::String,
5966}
5967#[derive(serde::Deserialize, serde::Serialize)]
5968#[allow(clippy::derive_partial_eq_without_eq)]
5969#[derive(Clone, PartialEq, ::prost::Message)]
5970pub struct UpdateObjectTitleResponse {
5971 #[prost(message, optional, tag = "1")]
5973 pub object: ::core::option::Option<super::super::models::v2::Object>,
5974}
5975#[derive(serde::Deserialize, serde::Serialize)]
5976#[allow(clippy::derive_partial_eq_without_eq)]
5977#[derive(Clone, PartialEq, ::prost::Message)]
5978pub struct UpdateObjectAuthorsRequest {
5979 #[prost(string, tag = "1")]
5981 pub object_id: ::prost::alloc::string::String,
5982 #[prost(message, repeated, tag = "2")]
5984 pub add_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
5985 #[prost(message, repeated, tag = "3")]
5987 pub remove_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
5988}
5989#[derive(serde::Deserialize, serde::Serialize)]
5990#[allow(clippy::derive_partial_eq_without_eq)]
5991#[derive(Clone, PartialEq, ::prost::Message)]
5992pub struct UpdateObjectAuthorsResponse {
5993 #[prost(message, optional, tag = "1")]
5995 pub object: ::core::option::Option<super::super::models::v2::Object>,
5996}
5997#[derive(serde::Deserialize, serde::Serialize)]
5998#[allow(clippy::derive_partial_eq_without_eq)]
5999#[derive(Clone, PartialEq, ::prost::Message)]
6000pub struct SetObjectHashesRequest {
6001 #[prost(string, tag = "1")]
6003 pub object_id: ::prost::alloc::string::String,
6004 #[prost(message, repeated, tag = "2")]
6006 pub hashes: ::prost::alloc::vec::Vec<super::super::models::v2::Hash>,
6007}
6008#[derive(serde::Deserialize, serde::Serialize)]
6009#[allow(clippy::derive_partial_eq_without_eq)]
6010#[derive(Clone, PartialEq, ::prost::Message)]
6011pub struct SetObjectHashesResponse {
6012 #[prost(message, optional, tag = "1")]
6014 pub object: ::core::option::Option<super::super::models::v2::Object>,
6015}
6016pub mod object_service_client {
6018 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
6019 use tonic::codegen::*;
6020 use tonic::codegen::http::Uri;
6021 #[derive(Debug, Clone)]
6027 pub struct ObjectServiceClient<T> {
6028 inner: tonic::client::Grpc<T>,
6029 }
6030 impl ObjectServiceClient<tonic::transport::Channel> {
6031 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
6033 where
6034 D: TryInto<tonic::transport::Endpoint>,
6035 D::Error: Into<StdError>,
6036 {
6037 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
6038 Ok(Self::new(conn))
6039 }
6040 }
6041 impl<T> ObjectServiceClient<T>
6042 where
6043 T: tonic::client::GrpcService<tonic::body::BoxBody>,
6044 T::Error: Into<StdError>,
6045 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
6046 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
6047 {
6048 pub fn new(inner: T) -> Self {
6049 let inner = tonic::client::Grpc::new(inner);
6050 Self { inner }
6051 }
6052 pub fn with_origin(inner: T, origin: Uri) -> Self {
6053 let inner = tonic::client::Grpc::with_origin(inner, origin);
6054 Self { inner }
6055 }
6056 pub fn with_interceptor<F>(
6057 inner: T,
6058 interceptor: F,
6059 ) -> ObjectServiceClient<InterceptedService<T, F>>
6060 where
6061 F: tonic::service::Interceptor,
6062 T::ResponseBody: Default,
6063 T: tonic::codegen::Service<
6064 http::Request<tonic::body::BoxBody>,
6065 Response = http::Response<
6066 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
6067 >,
6068 >,
6069 <T as tonic::codegen::Service<
6070 http::Request<tonic::body::BoxBody>,
6071 >>::Error: Into<StdError> + Send + Sync,
6072 {
6073 ObjectServiceClient::new(InterceptedService::new(inner, interceptor))
6074 }
6075 #[must_use]
6080 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
6081 self.inner = self.inner.send_compressed(encoding);
6082 self
6083 }
6084 #[must_use]
6086 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
6087 self.inner = self.inner.accept_compressed(encoding);
6088 self
6089 }
6090 #[must_use]
6094 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
6095 self.inner = self.inner.max_decoding_message_size(limit);
6096 self
6097 }
6098 #[must_use]
6102 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
6103 self.inner = self.inner.max_encoding_message_size(limit);
6104 self
6105 }
6106 pub async fn create_object(
6114 &mut self,
6115 request: impl tonic::IntoRequest<super::CreateObjectRequest>,
6116 ) -> std::result::Result<
6117 tonic::Response<super::CreateObjectResponse>,
6118 tonic::Status,
6119 > {
6120 self.inner
6121 .ready()
6122 .await
6123 .map_err(|e| {
6124 tonic::Status::new(
6125 tonic::Code::Unknown,
6126 format!("Service was not ready: {}", e.into()),
6127 )
6128 })?;
6129 let codec = tonic::codec::ProstCodec::default();
6130 let path = http::uri::PathAndQuery::from_static(
6131 "/aruna.api.storage.services.v2.ObjectService/CreateObject",
6132 );
6133 let mut req = request.into_request();
6134 req.extensions_mut()
6135 .insert(
6136 GrpcMethod::new(
6137 "aruna.api.storage.services.v2.ObjectService",
6138 "CreateObject",
6139 ),
6140 );
6141 self.inner.unary(req, path, codec).await
6142 }
6143 pub async fn get_upload_url(
6152 &mut self,
6153 request: impl tonic::IntoRequest<super::GetUploadUrlRequest>,
6154 ) -> std::result::Result<
6155 tonic::Response<super::GetUploadUrlResponse>,
6156 tonic::Status,
6157 > {
6158 self.inner
6159 .ready()
6160 .await
6161 .map_err(|e| {
6162 tonic::Status::new(
6163 tonic::Code::Unknown,
6164 format!("Service was not ready: {}", e.into()),
6165 )
6166 })?;
6167 let codec = tonic::codec::ProstCodec::default();
6168 let path = http::uri::PathAndQuery::from_static(
6169 "/aruna.api.storage.services.v2.ObjectService/GetUploadURL",
6170 );
6171 let mut req = request.into_request();
6172 req.extensions_mut()
6173 .insert(
6174 GrpcMethod::new(
6175 "aruna.api.storage.services.v2.ObjectService",
6176 "GetUploadURL",
6177 ),
6178 );
6179 self.inner.unary(req, path, codec).await
6180 }
6181 pub async fn get_download_url(
6188 &mut self,
6189 request: impl tonic::IntoRequest<super::GetDownloadUrlRequest>,
6190 ) -> std::result::Result<
6191 tonic::Response<super::GetDownloadUrlResponse>,
6192 tonic::Status,
6193 > {
6194 self.inner
6195 .ready()
6196 .await
6197 .map_err(|e| {
6198 tonic::Status::new(
6199 tonic::Code::Unknown,
6200 format!("Service was not ready: {}", e.into()),
6201 )
6202 })?;
6203 let codec = tonic::codec::ProstCodec::default();
6204 let path = http::uri::PathAndQuery::from_static(
6205 "/aruna.api.storage.services.v2.ObjectService/GetDownloadURL",
6206 );
6207 let mut req = request.into_request();
6208 req.extensions_mut()
6209 .insert(
6210 GrpcMethod::new(
6211 "aruna.api.storage.services.v2.ObjectService",
6212 "GetDownloadURL",
6213 ),
6214 );
6215 self.inner.unary(req, path, codec).await
6216 }
6217 pub async fn finish_object_staging(
6223 &mut self,
6224 request: impl tonic::IntoRequest<super::FinishObjectStagingRequest>,
6225 ) -> std::result::Result<
6226 tonic::Response<super::FinishObjectStagingResponse>,
6227 tonic::Status,
6228 > {
6229 self.inner
6230 .ready()
6231 .await
6232 .map_err(|e| {
6233 tonic::Status::new(
6234 tonic::Code::Unknown,
6235 format!("Service was not ready: {}", e.into()),
6236 )
6237 })?;
6238 let codec = tonic::codec::ProstCodec::default();
6239 let path = http::uri::PathAndQuery::from_static(
6240 "/aruna.api.storage.services.v2.ObjectService/FinishObjectStaging",
6241 );
6242 let mut req = request.into_request();
6243 req.extensions_mut()
6244 .insert(
6245 GrpcMethod::new(
6246 "aruna.api.storage.services.v2.ObjectService",
6247 "FinishObjectStaging",
6248 ),
6249 );
6250 self.inner.unary(req, path, codec).await
6251 }
6252 pub async fn update_object(
6262 &mut self,
6263 request: impl tonic::IntoRequest<super::UpdateObjectRequest>,
6264 ) -> std::result::Result<
6265 tonic::Response<super::UpdateObjectResponse>,
6266 tonic::Status,
6267 > {
6268 self.inner
6269 .ready()
6270 .await
6271 .map_err(|e| {
6272 tonic::Status::new(
6273 tonic::Code::Unknown,
6274 format!("Service was not ready: {}", e.into()),
6275 )
6276 })?;
6277 let codec = tonic::codec::ProstCodec::default();
6278 let path = http::uri::PathAndQuery::from_static(
6279 "/aruna.api.storage.services.v2.ObjectService/UpdateObject",
6280 );
6281 let mut req = request.into_request();
6282 req.extensions_mut()
6283 .insert(
6284 GrpcMethod::new(
6285 "aruna.api.storage.services.v2.ObjectService",
6286 "UpdateObject",
6287 ),
6288 );
6289 self.inner.unary(req, path, codec).await
6290 }
6291 pub async fn clone_object(
6299 &mut self,
6300 request: impl tonic::IntoRequest<super::CloneObjectRequest>,
6301 ) -> std::result::Result<
6302 tonic::Response<super::CloneObjectResponse>,
6303 tonic::Status,
6304 > {
6305 self.inner
6306 .ready()
6307 .await
6308 .map_err(|e| {
6309 tonic::Status::new(
6310 tonic::Code::Unknown,
6311 format!("Service was not ready: {}", e.into()),
6312 )
6313 })?;
6314 let codec = tonic::codec::ProstCodec::default();
6315 let path = http::uri::PathAndQuery::from_static(
6316 "/aruna.api.storage.services.v2.ObjectService/CloneObject",
6317 );
6318 let mut req = request.into_request();
6319 req.extensions_mut()
6320 .insert(
6321 GrpcMethod::new(
6322 "aruna.api.storage.services.v2.ObjectService",
6323 "CloneObject",
6324 ),
6325 );
6326 self.inner.unary(req, path, codec).await
6327 }
6328 pub async fn delete_object(
6334 &mut self,
6335 request: impl tonic::IntoRequest<super::DeleteObjectRequest>,
6336 ) -> std::result::Result<
6337 tonic::Response<super::DeleteObjectResponse>,
6338 tonic::Status,
6339 > {
6340 self.inner
6341 .ready()
6342 .await
6343 .map_err(|e| {
6344 tonic::Status::new(
6345 tonic::Code::Unknown,
6346 format!("Service was not ready: {}", e.into()),
6347 )
6348 })?;
6349 let codec = tonic::codec::ProstCodec::default();
6350 let path = http::uri::PathAndQuery::from_static(
6351 "/aruna.api.storage.services.v2.ObjectService/DeleteObject",
6352 );
6353 let mut req = request.into_request();
6354 req.extensions_mut()
6355 .insert(
6356 GrpcMethod::new(
6357 "aruna.api.storage.services.v2.ObjectService",
6358 "DeleteObject",
6359 ),
6360 );
6361 self.inner.unary(req, path, codec).await
6362 }
6363 pub async fn get_object(
6372 &mut self,
6373 request: impl tonic::IntoRequest<super::GetObjectRequest>,
6374 ) -> std::result::Result<
6375 tonic::Response<super::GetObjectResponse>,
6376 tonic::Status,
6377 > {
6378 self.inner
6379 .ready()
6380 .await
6381 .map_err(|e| {
6382 tonic::Status::new(
6383 tonic::Code::Unknown,
6384 format!("Service was not ready: {}", e.into()),
6385 )
6386 })?;
6387 let codec = tonic::codec::ProstCodec::default();
6388 let path = http::uri::PathAndQuery::from_static(
6389 "/aruna.api.storage.services.v2.ObjectService/GetObject",
6390 );
6391 let mut req = request.into_request();
6392 req.extensions_mut()
6393 .insert(
6394 GrpcMethod::new(
6395 "aruna.api.storage.services.v2.ObjectService",
6396 "GetObject",
6397 ),
6398 );
6399 self.inner.unary(req, path, codec).await
6400 }
6401 pub async fn get_objects(
6407 &mut self,
6408 request: impl tonic::IntoRequest<super::GetObjectsRequest>,
6409 ) -> std::result::Result<
6410 tonic::Response<super::GetObjectsResponse>,
6411 tonic::Status,
6412 > {
6413 self.inner
6414 .ready()
6415 .await
6416 .map_err(|e| {
6417 tonic::Status::new(
6418 tonic::Code::Unknown,
6419 format!("Service was not ready: {}", e.into()),
6420 )
6421 })?;
6422 let codec = tonic::codec::ProstCodec::default();
6423 let path = http::uri::PathAndQuery::from_static(
6424 "/aruna.api.storage.services.v2.ObjectService/GetObjects",
6425 );
6426 let mut req = request.into_request();
6427 req.extensions_mut()
6428 .insert(
6429 GrpcMethod::new(
6430 "aruna.api.storage.services.v2.ObjectService",
6431 "GetObjects",
6432 ),
6433 );
6434 self.inner.unary(req, path, codec).await
6435 }
6436 pub async fn update_object_title(
6442 &mut self,
6443 request: impl tonic::IntoRequest<super::UpdateObjectTitleRequest>,
6444 ) -> std::result::Result<
6445 tonic::Response<super::UpdateObjectTitleResponse>,
6446 tonic::Status,
6447 > {
6448 self.inner
6449 .ready()
6450 .await
6451 .map_err(|e| {
6452 tonic::Status::new(
6453 tonic::Code::Unknown,
6454 format!("Service was not ready: {}", e.into()),
6455 )
6456 })?;
6457 let codec = tonic::codec::ProstCodec::default();
6458 let path = http::uri::PathAndQuery::from_static(
6459 "/aruna.api.storage.services.v2.ObjectService/UpdateObjectTitle",
6460 );
6461 let mut req = request.into_request();
6462 req.extensions_mut()
6463 .insert(
6464 GrpcMethod::new(
6465 "aruna.api.storage.services.v2.ObjectService",
6466 "UpdateObjectTitle",
6467 ),
6468 );
6469 self.inner.unary(req, path, codec).await
6470 }
6471 pub async fn update_object_authors(
6477 &mut self,
6478 request: impl tonic::IntoRequest<super::UpdateObjectAuthorsRequest>,
6479 ) -> std::result::Result<
6480 tonic::Response<super::UpdateObjectAuthorsResponse>,
6481 tonic::Status,
6482 > {
6483 self.inner
6484 .ready()
6485 .await
6486 .map_err(|e| {
6487 tonic::Status::new(
6488 tonic::Code::Unknown,
6489 format!("Service was not ready: {}", e.into()),
6490 )
6491 })?;
6492 let codec = tonic::codec::ProstCodec::default();
6493 let path = http::uri::PathAndQuery::from_static(
6494 "/aruna.api.storage.services.v2.ObjectService/UpdateObjectAuthors",
6495 );
6496 let mut req = request.into_request();
6497 req.extensions_mut()
6498 .insert(
6499 GrpcMethod::new(
6500 "aruna.api.storage.services.v2.ObjectService",
6501 "UpdateObjectAuthors",
6502 ),
6503 );
6504 self.inner.unary(req, path, codec).await
6505 }
6506 pub async fn set_object_hashes(
6514 &mut self,
6515 request: impl tonic::IntoRequest<super::SetObjectHashesRequest>,
6516 ) -> std::result::Result<
6517 tonic::Response<super::SetObjectHashesResponse>,
6518 tonic::Status,
6519 > {
6520 self.inner
6521 .ready()
6522 .await
6523 .map_err(|e| {
6524 tonic::Status::new(
6525 tonic::Code::Unknown,
6526 format!("Service was not ready: {}", e.into()),
6527 )
6528 })?;
6529 let codec = tonic::codec::ProstCodec::default();
6530 let path = http::uri::PathAndQuery::from_static(
6531 "/aruna.api.storage.services.v2.ObjectService/SetObjectHashes",
6532 );
6533 let mut req = request.into_request();
6534 req.extensions_mut()
6535 .insert(
6536 GrpcMethod::new(
6537 "aruna.api.storage.services.v2.ObjectService",
6538 "SetObjectHashes",
6539 ),
6540 );
6541 self.inner.unary(req, path, codec).await
6542 }
6543 }
6544}
6545pub mod object_service_server {
6547 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
6548 use tonic::codegen::*;
6549 #[async_trait]
6551 pub trait ObjectService: Send + Sync + 'static {
6552 async fn create_object(
6560 &self,
6561 request: tonic::Request<super::CreateObjectRequest>,
6562 ) -> std::result::Result<
6563 tonic::Response<super::CreateObjectResponse>,
6564 tonic::Status,
6565 >;
6566 async fn get_upload_url(
6575 &self,
6576 request: tonic::Request<super::GetUploadUrlRequest>,
6577 ) -> std::result::Result<
6578 tonic::Response<super::GetUploadUrlResponse>,
6579 tonic::Status,
6580 >;
6581 async fn get_download_url(
6588 &self,
6589 request: tonic::Request<super::GetDownloadUrlRequest>,
6590 ) -> std::result::Result<
6591 tonic::Response<super::GetDownloadUrlResponse>,
6592 tonic::Status,
6593 >;
6594 async fn finish_object_staging(
6600 &self,
6601 request: tonic::Request<super::FinishObjectStagingRequest>,
6602 ) -> std::result::Result<
6603 tonic::Response<super::FinishObjectStagingResponse>,
6604 tonic::Status,
6605 >;
6606 async fn update_object(
6616 &self,
6617 request: tonic::Request<super::UpdateObjectRequest>,
6618 ) -> std::result::Result<
6619 tonic::Response<super::UpdateObjectResponse>,
6620 tonic::Status,
6621 >;
6622 async fn clone_object(
6630 &self,
6631 request: tonic::Request<super::CloneObjectRequest>,
6632 ) -> std::result::Result<
6633 tonic::Response<super::CloneObjectResponse>,
6634 tonic::Status,
6635 >;
6636 async fn delete_object(
6642 &self,
6643 request: tonic::Request<super::DeleteObjectRequest>,
6644 ) -> std::result::Result<
6645 tonic::Response<super::DeleteObjectResponse>,
6646 tonic::Status,
6647 >;
6648 async fn get_object(
6657 &self,
6658 request: tonic::Request<super::GetObjectRequest>,
6659 ) -> std::result::Result<
6660 tonic::Response<super::GetObjectResponse>,
6661 tonic::Status,
6662 >;
6663 async fn get_objects(
6669 &self,
6670 request: tonic::Request<super::GetObjectsRequest>,
6671 ) -> std::result::Result<
6672 tonic::Response<super::GetObjectsResponse>,
6673 tonic::Status,
6674 >;
6675 async fn update_object_title(
6681 &self,
6682 request: tonic::Request<super::UpdateObjectTitleRequest>,
6683 ) -> std::result::Result<
6684 tonic::Response<super::UpdateObjectTitleResponse>,
6685 tonic::Status,
6686 >;
6687 async fn update_object_authors(
6693 &self,
6694 request: tonic::Request<super::UpdateObjectAuthorsRequest>,
6695 ) -> std::result::Result<
6696 tonic::Response<super::UpdateObjectAuthorsResponse>,
6697 tonic::Status,
6698 >;
6699 async fn set_object_hashes(
6707 &self,
6708 request: tonic::Request<super::SetObjectHashesRequest>,
6709 ) -> std::result::Result<
6710 tonic::Response<super::SetObjectHashesResponse>,
6711 tonic::Status,
6712 >;
6713 }
6714 #[derive(Debug)]
6720 pub struct ObjectServiceServer<T: ObjectService> {
6721 inner: _Inner<T>,
6722 accept_compression_encodings: EnabledCompressionEncodings,
6723 send_compression_encodings: EnabledCompressionEncodings,
6724 max_decoding_message_size: Option<usize>,
6725 max_encoding_message_size: Option<usize>,
6726 }
6727 struct _Inner<T>(Arc<T>);
6728 impl<T: ObjectService> ObjectServiceServer<T> {
6729 pub fn new(inner: T) -> Self {
6730 Self::from_arc(Arc::new(inner))
6731 }
6732 pub fn from_arc(inner: Arc<T>) -> Self {
6733 let inner = _Inner(inner);
6734 Self {
6735 inner,
6736 accept_compression_encodings: Default::default(),
6737 send_compression_encodings: Default::default(),
6738 max_decoding_message_size: None,
6739 max_encoding_message_size: None,
6740 }
6741 }
6742 pub fn with_interceptor<F>(
6743 inner: T,
6744 interceptor: F,
6745 ) -> InterceptedService<Self, F>
6746 where
6747 F: tonic::service::Interceptor,
6748 {
6749 InterceptedService::new(Self::new(inner), interceptor)
6750 }
6751 #[must_use]
6753 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
6754 self.accept_compression_encodings.enable(encoding);
6755 self
6756 }
6757 #[must_use]
6759 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
6760 self.send_compression_encodings.enable(encoding);
6761 self
6762 }
6763 #[must_use]
6767 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
6768 self.max_decoding_message_size = Some(limit);
6769 self
6770 }
6771 #[must_use]
6775 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
6776 self.max_encoding_message_size = Some(limit);
6777 self
6778 }
6779 }
6780 impl<T, B> tonic::codegen::Service<http::Request<B>> for ObjectServiceServer<T>
6781 where
6782 T: ObjectService,
6783 B: Body + Send + 'static,
6784 B::Error: Into<StdError> + Send + 'static,
6785 {
6786 type Response = http::Response<tonic::body::BoxBody>;
6787 type Error = std::convert::Infallible;
6788 type Future = BoxFuture<Self::Response, Self::Error>;
6789 fn poll_ready(
6790 &mut self,
6791 _cx: &mut Context<'_>,
6792 ) -> Poll<std::result::Result<(), Self::Error>> {
6793 Poll::Ready(Ok(()))
6794 }
6795 fn call(&mut self, req: http::Request<B>) -> Self::Future {
6796 let inner = self.inner.clone();
6797 match req.uri().path() {
6798 "/aruna.api.storage.services.v2.ObjectService/CreateObject" => {
6799 #[allow(non_camel_case_types)]
6800 struct CreateObjectSvc<T: ObjectService>(pub Arc<T>);
6801 impl<
6802 T: ObjectService,
6803 > tonic::server::UnaryService<super::CreateObjectRequest>
6804 for CreateObjectSvc<T> {
6805 type Response = super::CreateObjectResponse;
6806 type Future = BoxFuture<
6807 tonic::Response<Self::Response>,
6808 tonic::Status,
6809 >;
6810 fn call(
6811 &mut self,
6812 request: tonic::Request<super::CreateObjectRequest>,
6813 ) -> Self::Future {
6814 let inner = Arc::clone(&self.0);
6815 let fut = async move {
6816 <T as ObjectService>::create_object(&inner, request).await
6817 };
6818 Box::pin(fut)
6819 }
6820 }
6821 let accept_compression_encodings = self.accept_compression_encodings;
6822 let send_compression_encodings = self.send_compression_encodings;
6823 let max_decoding_message_size = self.max_decoding_message_size;
6824 let max_encoding_message_size = self.max_encoding_message_size;
6825 let inner = self.inner.clone();
6826 let fut = async move {
6827 let inner = inner.0;
6828 let method = CreateObjectSvc(inner);
6829 let codec = tonic::codec::ProstCodec::default();
6830 let mut grpc = tonic::server::Grpc::new(codec)
6831 .apply_compression_config(
6832 accept_compression_encodings,
6833 send_compression_encodings,
6834 )
6835 .apply_max_message_size_config(
6836 max_decoding_message_size,
6837 max_encoding_message_size,
6838 );
6839 let res = grpc.unary(method, req).await;
6840 Ok(res)
6841 };
6842 Box::pin(fut)
6843 }
6844 "/aruna.api.storage.services.v2.ObjectService/GetUploadURL" => {
6845 #[allow(non_camel_case_types)]
6846 struct GetUploadURLSvc<T: ObjectService>(pub Arc<T>);
6847 impl<
6848 T: ObjectService,
6849 > tonic::server::UnaryService<super::GetUploadUrlRequest>
6850 for GetUploadURLSvc<T> {
6851 type Response = super::GetUploadUrlResponse;
6852 type Future = BoxFuture<
6853 tonic::Response<Self::Response>,
6854 tonic::Status,
6855 >;
6856 fn call(
6857 &mut self,
6858 request: tonic::Request<super::GetUploadUrlRequest>,
6859 ) -> Self::Future {
6860 let inner = Arc::clone(&self.0);
6861 let fut = async move {
6862 <T as ObjectService>::get_upload_url(&inner, request).await
6863 };
6864 Box::pin(fut)
6865 }
6866 }
6867 let accept_compression_encodings = self.accept_compression_encodings;
6868 let send_compression_encodings = self.send_compression_encodings;
6869 let max_decoding_message_size = self.max_decoding_message_size;
6870 let max_encoding_message_size = self.max_encoding_message_size;
6871 let inner = self.inner.clone();
6872 let fut = async move {
6873 let inner = inner.0;
6874 let method = GetUploadURLSvc(inner);
6875 let codec = tonic::codec::ProstCodec::default();
6876 let mut grpc = tonic::server::Grpc::new(codec)
6877 .apply_compression_config(
6878 accept_compression_encodings,
6879 send_compression_encodings,
6880 )
6881 .apply_max_message_size_config(
6882 max_decoding_message_size,
6883 max_encoding_message_size,
6884 );
6885 let res = grpc.unary(method, req).await;
6886 Ok(res)
6887 };
6888 Box::pin(fut)
6889 }
6890 "/aruna.api.storage.services.v2.ObjectService/GetDownloadURL" => {
6891 #[allow(non_camel_case_types)]
6892 struct GetDownloadURLSvc<T: ObjectService>(pub Arc<T>);
6893 impl<
6894 T: ObjectService,
6895 > tonic::server::UnaryService<super::GetDownloadUrlRequest>
6896 for GetDownloadURLSvc<T> {
6897 type Response = super::GetDownloadUrlResponse;
6898 type Future = BoxFuture<
6899 tonic::Response<Self::Response>,
6900 tonic::Status,
6901 >;
6902 fn call(
6903 &mut self,
6904 request: tonic::Request<super::GetDownloadUrlRequest>,
6905 ) -> Self::Future {
6906 let inner = Arc::clone(&self.0);
6907 let fut = async move {
6908 <T as ObjectService>::get_download_url(&inner, request)
6909 .await
6910 };
6911 Box::pin(fut)
6912 }
6913 }
6914 let accept_compression_encodings = self.accept_compression_encodings;
6915 let send_compression_encodings = self.send_compression_encodings;
6916 let max_decoding_message_size = self.max_decoding_message_size;
6917 let max_encoding_message_size = self.max_encoding_message_size;
6918 let inner = self.inner.clone();
6919 let fut = async move {
6920 let inner = inner.0;
6921 let method = GetDownloadURLSvc(inner);
6922 let codec = tonic::codec::ProstCodec::default();
6923 let mut grpc = tonic::server::Grpc::new(codec)
6924 .apply_compression_config(
6925 accept_compression_encodings,
6926 send_compression_encodings,
6927 )
6928 .apply_max_message_size_config(
6929 max_decoding_message_size,
6930 max_encoding_message_size,
6931 );
6932 let res = grpc.unary(method, req).await;
6933 Ok(res)
6934 };
6935 Box::pin(fut)
6936 }
6937 "/aruna.api.storage.services.v2.ObjectService/FinishObjectStaging" => {
6938 #[allow(non_camel_case_types)]
6939 struct FinishObjectStagingSvc<T: ObjectService>(pub Arc<T>);
6940 impl<
6941 T: ObjectService,
6942 > tonic::server::UnaryService<super::FinishObjectStagingRequest>
6943 for FinishObjectStagingSvc<T> {
6944 type Response = super::FinishObjectStagingResponse;
6945 type Future = BoxFuture<
6946 tonic::Response<Self::Response>,
6947 tonic::Status,
6948 >;
6949 fn call(
6950 &mut self,
6951 request: tonic::Request<super::FinishObjectStagingRequest>,
6952 ) -> Self::Future {
6953 let inner = Arc::clone(&self.0);
6954 let fut = async move {
6955 <T as ObjectService>::finish_object_staging(&inner, request)
6956 .await
6957 };
6958 Box::pin(fut)
6959 }
6960 }
6961 let accept_compression_encodings = self.accept_compression_encodings;
6962 let send_compression_encodings = self.send_compression_encodings;
6963 let max_decoding_message_size = self.max_decoding_message_size;
6964 let max_encoding_message_size = self.max_encoding_message_size;
6965 let inner = self.inner.clone();
6966 let fut = async move {
6967 let inner = inner.0;
6968 let method = FinishObjectStagingSvc(inner);
6969 let codec = tonic::codec::ProstCodec::default();
6970 let mut grpc = tonic::server::Grpc::new(codec)
6971 .apply_compression_config(
6972 accept_compression_encodings,
6973 send_compression_encodings,
6974 )
6975 .apply_max_message_size_config(
6976 max_decoding_message_size,
6977 max_encoding_message_size,
6978 );
6979 let res = grpc.unary(method, req).await;
6980 Ok(res)
6981 };
6982 Box::pin(fut)
6983 }
6984 "/aruna.api.storage.services.v2.ObjectService/UpdateObject" => {
6985 #[allow(non_camel_case_types)]
6986 struct UpdateObjectSvc<T: ObjectService>(pub Arc<T>);
6987 impl<
6988 T: ObjectService,
6989 > tonic::server::UnaryService<super::UpdateObjectRequest>
6990 for UpdateObjectSvc<T> {
6991 type Response = super::UpdateObjectResponse;
6992 type Future = BoxFuture<
6993 tonic::Response<Self::Response>,
6994 tonic::Status,
6995 >;
6996 fn call(
6997 &mut self,
6998 request: tonic::Request<super::UpdateObjectRequest>,
6999 ) -> Self::Future {
7000 let inner = Arc::clone(&self.0);
7001 let fut = async move {
7002 <T as ObjectService>::update_object(&inner, request).await
7003 };
7004 Box::pin(fut)
7005 }
7006 }
7007 let accept_compression_encodings = self.accept_compression_encodings;
7008 let send_compression_encodings = self.send_compression_encodings;
7009 let max_decoding_message_size = self.max_decoding_message_size;
7010 let max_encoding_message_size = self.max_encoding_message_size;
7011 let inner = self.inner.clone();
7012 let fut = async move {
7013 let inner = inner.0;
7014 let method = UpdateObjectSvc(inner);
7015 let codec = tonic::codec::ProstCodec::default();
7016 let mut grpc = tonic::server::Grpc::new(codec)
7017 .apply_compression_config(
7018 accept_compression_encodings,
7019 send_compression_encodings,
7020 )
7021 .apply_max_message_size_config(
7022 max_decoding_message_size,
7023 max_encoding_message_size,
7024 );
7025 let res = grpc.unary(method, req).await;
7026 Ok(res)
7027 };
7028 Box::pin(fut)
7029 }
7030 "/aruna.api.storage.services.v2.ObjectService/CloneObject" => {
7031 #[allow(non_camel_case_types)]
7032 struct CloneObjectSvc<T: ObjectService>(pub Arc<T>);
7033 impl<
7034 T: ObjectService,
7035 > tonic::server::UnaryService<super::CloneObjectRequest>
7036 for CloneObjectSvc<T> {
7037 type Response = super::CloneObjectResponse;
7038 type Future = BoxFuture<
7039 tonic::Response<Self::Response>,
7040 tonic::Status,
7041 >;
7042 fn call(
7043 &mut self,
7044 request: tonic::Request<super::CloneObjectRequest>,
7045 ) -> Self::Future {
7046 let inner = Arc::clone(&self.0);
7047 let fut = async move {
7048 <T as ObjectService>::clone_object(&inner, request).await
7049 };
7050 Box::pin(fut)
7051 }
7052 }
7053 let accept_compression_encodings = self.accept_compression_encodings;
7054 let send_compression_encodings = self.send_compression_encodings;
7055 let max_decoding_message_size = self.max_decoding_message_size;
7056 let max_encoding_message_size = self.max_encoding_message_size;
7057 let inner = self.inner.clone();
7058 let fut = async move {
7059 let inner = inner.0;
7060 let method = CloneObjectSvc(inner);
7061 let codec = tonic::codec::ProstCodec::default();
7062 let mut grpc = tonic::server::Grpc::new(codec)
7063 .apply_compression_config(
7064 accept_compression_encodings,
7065 send_compression_encodings,
7066 )
7067 .apply_max_message_size_config(
7068 max_decoding_message_size,
7069 max_encoding_message_size,
7070 );
7071 let res = grpc.unary(method, req).await;
7072 Ok(res)
7073 };
7074 Box::pin(fut)
7075 }
7076 "/aruna.api.storage.services.v2.ObjectService/DeleteObject" => {
7077 #[allow(non_camel_case_types)]
7078 struct DeleteObjectSvc<T: ObjectService>(pub Arc<T>);
7079 impl<
7080 T: ObjectService,
7081 > tonic::server::UnaryService<super::DeleteObjectRequest>
7082 for DeleteObjectSvc<T> {
7083 type Response = super::DeleteObjectResponse;
7084 type Future = BoxFuture<
7085 tonic::Response<Self::Response>,
7086 tonic::Status,
7087 >;
7088 fn call(
7089 &mut self,
7090 request: tonic::Request<super::DeleteObjectRequest>,
7091 ) -> Self::Future {
7092 let inner = Arc::clone(&self.0);
7093 let fut = async move {
7094 <T as ObjectService>::delete_object(&inner, request).await
7095 };
7096 Box::pin(fut)
7097 }
7098 }
7099 let accept_compression_encodings = self.accept_compression_encodings;
7100 let send_compression_encodings = self.send_compression_encodings;
7101 let max_decoding_message_size = self.max_decoding_message_size;
7102 let max_encoding_message_size = self.max_encoding_message_size;
7103 let inner = self.inner.clone();
7104 let fut = async move {
7105 let inner = inner.0;
7106 let method = DeleteObjectSvc(inner);
7107 let codec = tonic::codec::ProstCodec::default();
7108 let mut grpc = tonic::server::Grpc::new(codec)
7109 .apply_compression_config(
7110 accept_compression_encodings,
7111 send_compression_encodings,
7112 )
7113 .apply_max_message_size_config(
7114 max_decoding_message_size,
7115 max_encoding_message_size,
7116 );
7117 let res = grpc.unary(method, req).await;
7118 Ok(res)
7119 };
7120 Box::pin(fut)
7121 }
7122 "/aruna.api.storage.services.v2.ObjectService/GetObject" => {
7123 #[allow(non_camel_case_types)]
7124 struct GetObjectSvc<T: ObjectService>(pub Arc<T>);
7125 impl<
7126 T: ObjectService,
7127 > tonic::server::UnaryService<super::GetObjectRequest>
7128 for GetObjectSvc<T> {
7129 type Response = super::GetObjectResponse;
7130 type Future = BoxFuture<
7131 tonic::Response<Self::Response>,
7132 tonic::Status,
7133 >;
7134 fn call(
7135 &mut self,
7136 request: tonic::Request<super::GetObjectRequest>,
7137 ) -> Self::Future {
7138 let inner = Arc::clone(&self.0);
7139 let fut = async move {
7140 <T as ObjectService>::get_object(&inner, request).await
7141 };
7142 Box::pin(fut)
7143 }
7144 }
7145 let accept_compression_encodings = self.accept_compression_encodings;
7146 let send_compression_encodings = self.send_compression_encodings;
7147 let max_decoding_message_size = self.max_decoding_message_size;
7148 let max_encoding_message_size = self.max_encoding_message_size;
7149 let inner = self.inner.clone();
7150 let fut = async move {
7151 let inner = inner.0;
7152 let method = GetObjectSvc(inner);
7153 let codec = tonic::codec::ProstCodec::default();
7154 let mut grpc = tonic::server::Grpc::new(codec)
7155 .apply_compression_config(
7156 accept_compression_encodings,
7157 send_compression_encodings,
7158 )
7159 .apply_max_message_size_config(
7160 max_decoding_message_size,
7161 max_encoding_message_size,
7162 );
7163 let res = grpc.unary(method, req).await;
7164 Ok(res)
7165 };
7166 Box::pin(fut)
7167 }
7168 "/aruna.api.storage.services.v2.ObjectService/GetObjects" => {
7169 #[allow(non_camel_case_types)]
7170 struct GetObjectsSvc<T: ObjectService>(pub Arc<T>);
7171 impl<
7172 T: ObjectService,
7173 > tonic::server::UnaryService<super::GetObjectsRequest>
7174 for GetObjectsSvc<T> {
7175 type Response = super::GetObjectsResponse;
7176 type Future = BoxFuture<
7177 tonic::Response<Self::Response>,
7178 tonic::Status,
7179 >;
7180 fn call(
7181 &mut self,
7182 request: tonic::Request<super::GetObjectsRequest>,
7183 ) -> Self::Future {
7184 let inner = Arc::clone(&self.0);
7185 let fut = async move {
7186 <T as ObjectService>::get_objects(&inner, request).await
7187 };
7188 Box::pin(fut)
7189 }
7190 }
7191 let accept_compression_encodings = self.accept_compression_encodings;
7192 let send_compression_encodings = self.send_compression_encodings;
7193 let max_decoding_message_size = self.max_decoding_message_size;
7194 let max_encoding_message_size = self.max_encoding_message_size;
7195 let inner = self.inner.clone();
7196 let fut = async move {
7197 let inner = inner.0;
7198 let method = GetObjectsSvc(inner);
7199 let codec = tonic::codec::ProstCodec::default();
7200 let mut grpc = tonic::server::Grpc::new(codec)
7201 .apply_compression_config(
7202 accept_compression_encodings,
7203 send_compression_encodings,
7204 )
7205 .apply_max_message_size_config(
7206 max_decoding_message_size,
7207 max_encoding_message_size,
7208 );
7209 let res = grpc.unary(method, req).await;
7210 Ok(res)
7211 };
7212 Box::pin(fut)
7213 }
7214 "/aruna.api.storage.services.v2.ObjectService/UpdateObjectTitle" => {
7215 #[allow(non_camel_case_types)]
7216 struct UpdateObjectTitleSvc<T: ObjectService>(pub Arc<T>);
7217 impl<
7218 T: ObjectService,
7219 > tonic::server::UnaryService<super::UpdateObjectTitleRequest>
7220 for UpdateObjectTitleSvc<T> {
7221 type Response = super::UpdateObjectTitleResponse;
7222 type Future = BoxFuture<
7223 tonic::Response<Self::Response>,
7224 tonic::Status,
7225 >;
7226 fn call(
7227 &mut self,
7228 request: tonic::Request<super::UpdateObjectTitleRequest>,
7229 ) -> Self::Future {
7230 let inner = Arc::clone(&self.0);
7231 let fut = async move {
7232 <T as ObjectService>::update_object_title(&inner, request)
7233 .await
7234 };
7235 Box::pin(fut)
7236 }
7237 }
7238 let accept_compression_encodings = self.accept_compression_encodings;
7239 let send_compression_encodings = self.send_compression_encodings;
7240 let max_decoding_message_size = self.max_decoding_message_size;
7241 let max_encoding_message_size = self.max_encoding_message_size;
7242 let inner = self.inner.clone();
7243 let fut = async move {
7244 let inner = inner.0;
7245 let method = UpdateObjectTitleSvc(inner);
7246 let codec = tonic::codec::ProstCodec::default();
7247 let mut grpc = tonic::server::Grpc::new(codec)
7248 .apply_compression_config(
7249 accept_compression_encodings,
7250 send_compression_encodings,
7251 )
7252 .apply_max_message_size_config(
7253 max_decoding_message_size,
7254 max_encoding_message_size,
7255 );
7256 let res = grpc.unary(method, req).await;
7257 Ok(res)
7258 };
7259 Box::pin(fut)
7260 }
7261 "/aruna.api.storage.services.v2.ObjectService/UpdateObjectAuthors" => {
7262 #[allow(non_camel_case_types)]
7263 struct UpdateObjectAuthorsSvc<T: ObjectService>(pub Arc<T>);
7264 impl<
7265 T: ObjectService,
7266 > tonic::server::UnaryService<super::UpdateObjectAuthorsRequest>
7267 for UpdateObjectAuthorsSvc<T> {
7268 type Response = super::UpdateObjectAuthorsResponse;
7269 type Future = BoxFuture<
7270 tonic::Response<Self::Response>,
7271 tonic::Status,
7272 >;
7273 fn call(
7274 &mut self,
7275 request: tonic::Request<super::UpdateObjectAuthorsRequest>,
7276 ) -> Self::Future {
7277 let inner = Arc::clone(&self.0);
7278 let fut = async move {
7279 <T as ObjectService>::update_object_authors(&inner, request)
7280 .await
7281 };
7282 Box::pin(fut)
7283 }
7284 }
7285 let accept_compression_encodings = self.accept_compression_encodings;
7286 let send_compression_encodings = self.send_compression_encodings;
7287 let max_decoding_message_size = self.max_decoding_message_size;
7288 let max_encoding_message_size = self.max_encoding_message_size;
7289 let inner = self.inner.clone();
7290 let fut = async move {
7291 let inner = inner.0;
7292 let method = UpdateObjectAuthorsSvc(inner);
7293 let codec = tonic::codec::ProstCodec::default();
7294 let mut grpc = tonic::server::Grpc::new(codec)
7295 .apply_compression_config(
7296 accept_compression_encodings,
7297 send_compression_encodings,
7298 )
7299 .apply_max_message_size_config(
7300 max_decoding_message_size,
7301 max_encoding_message_size,
7302 );
7303 let res = grpc.unary(method, req).await;
7304 Ok(res)
7305 };
7306 Box::pin(fut)
7307 }
7308 "/aruna.api.storage.services.v2.ObjectService/SetObjectHashes" => {
7309 #[allow(non_camel_case_types)]
7310 struct SetObjectHashesSvc<T: ObjectService>(pub Arc<T>);
7311 impl<
7312 T: ObjectService,
7313 > tonic::server::UnaryService<super::SetObjectHashesRequest>
7314 for SetObjectHashesSvc<T> {
7315 type Response = super::SetObjectHashesResponse;
7316 type Future = BoxFuture<
7317 tonic::Response<Self::Response>,
7318 tonic::Status,
7319 >;
7320 fn call(
7321 &mut self,
7322 request: tonic::Request<super::SetObjectHashesRequest>,
7323 ) -> Self::Future {
7324 let inner = Arc::clone(&self.0);
7325 let fut = async move {
7326 <T as ObjectService>::set_object_hashes(&inner, request)
7327 .await
7328 };
7329 Box::pin(fut)
7330 }
7331 }
7332 let accept_compression_encodings = self.accept_compression_encodings;
7333 let send_compression_encodings = self.send_compression_encodings;
7334 let max_decoding_message_size = self.max_decoding_message_size;
7335 let max_encoding_message_size = self.max_encoding_message_size;
7336 let inner = self.inner.clone();
7337 let fut = async move {
7338 let inner = inner.0;
7339 let method = SetObjectHashesSvc(inner);
7340 let codec = tonic::codec::ProstCodec::default();
7341 let mut grpc = tonic::server::Grpc::new(codec)
7342 .apply_compression_config(
7343 accept_compression_encodings,
7344 send_compression_encodings,
7345 )
7346 .apply_max_message_size_config(
7347 max_decoding_message_size,
7348 max_encoding_message_size,
7349 );
7350 let res = grpc.unary(method, req).await;
7351 Ok(res)
7352 };
7353 Box::pin(fut)
7354 }
7355 _ => {
7356 Box::pin(async move {
7357 Ok(
7358 http::Response::builder()
7359 .status(200)
7360 .header("grpc-status", "12")
7361 .header("content-type", "application/grpc")
7362 .body(empty_body())
7363 .unwrap(),
7364 )
7365 })
7366 }
7367 }
7368 }
7369 }
7370 impl<T: ObjectService> Clone for ObjectServiceServer<T> {
7371 fn clone(&self) -> Self {
7372 let inner = self.inner.clone();
7373 Self {
7374 inner,
7375 accept_compression_encodings: self.accept_compression_encodings,
7376 send_compression_encodings: self.send_compression_encodings,
7377 max_decoding_message_size: self.max_decoding_message_size,
7378 max_encoding_message_size: self.max_encoding_message_size,
7379 }
7380 }
7381 }
7382 impl<T: ObjectService> Clone for _Inner<T> {
7383 fn clone(&self) -> Self {
7384 Self(Arc::clone(&self.0))
7385 }
7386 }
7387 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
7388 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
7389 write!(f, "{:?}", self.0)
7390 }
7391 }
7392 impl<T: ObjectService> tonic::server::NamedService for ObjectServiceServer<T> {
7393 const NAME: &'static str = "aruna.api.storage.services.v2.ObjectService";
7394 }
7395}
7396#[derive(serde::Deserialize, serde::Serialize)]
7397#[allow(clippy::derive_partial_eq_without_eq)]
7398#[derive(Clone, PartialEq, ::prost::Message)]
7399pub struct CreateDatasetRequest {
7400 #[prost(string, tag = "1")]
7402 pub name: ::prost::alloc::string::String,
7403 #[prost(string, tag = "10")]
7404 pub title: ::prost::alloc::string::String,
7405 #[prost(string, tag = "2")]
7407 pub description: ::prost::alloc::string::String,
7408 #[prost(message, repeated, tag = "3")]
7410 pub key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
7411 #[prost(message, repeated, tag = "4")]
7413 pub relations: ::prost::alloc::vec::Vec<super::super::models::v2::Relation>,
7414 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "5")]
7416 pub data_class: i32,
7417 #[prost(string, optional, tag = "8")]
7418 pub metadata_license_tag: ::core::option::Option<::prost::alloc::string::String>,
7419 #[prost(string, optional, tag = "9")]
7420 pub default_data_license_tag: ::core::option::Option<::prost::alloc::string::String>,
7421 #[prost(message, repeated, tag = "11")]
7422 pub authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
7423 #[prost(oneof = "create_dataset_request::Parent", tags = "6, 7")]
7425 pub parent: ::core::option::Option<create_dataset_request::Parent>,
7426}
7427pub mod create_dataset_request {
7429 #[derive(serde::Deserialize, serde::Serialize)]
7431 #[allow(clippy::derive_partial_eq_without_eq)]
7432 #[derive(Clone, PartialEq, ::prost::Oneof)]
7433 pub enum Parent {
7434 #[prost(string, tag = "6")]
7435 ProjectId(::prost::alloc::string::String),
7436 #[prost(string, tag = "7")]
7437 CollectionId(::prost::alloc::string::String),
7438 }
7439}
7440#[derive(serde::Deserialize, serde::Serialize)]
7441#[allow(clippy::derive_partial_eq_without_eq)]
7442#[derive(Clone, PartialEq, ::prost::Message)]
7443pub struct CreateDatasetResponse {
7444 #[prost(message, optional, tag = "1")]
7446 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7447}
7448#[derive(serde::Deserialize, serde::Serialize)]
7449#[allow(clippy::derive_partial_eq_without_eq)]
7450#[derive(Clone, PartialEq, ::prost::Message)]
7451pub struct GetDatasetRequest {
7452 #[prost(string, tag = "1")]
7454 pub dataset_id: ::prost::alloc::string::String,
7455}
7456#[derive(serde::Deserialize, serde::Serialize)]
7457#[allow(clippy::derive_partial_eq_without_eq)]
7458#[derive(Clone, PartialEq, ::prost::Message)]
7459pub struct GetDatasetResponse {
7460 #[prost(message, optional, tag = "1")]
7462 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7463}
7464#[derive(serde::Deserialize, serde::Serialize)]
7465#[allow(clippy::derive_partial_eq_without_eq)]
7466#[derive(Clone, PartialEq, ::prost::Message)]
7467pub struct GetDatasetsRequest {
7468 #[prost(string, repeated, tag = "1")]
7469 pub dataset_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
7470}
7471#[derive(serde::Deserialize, serde::Serialize)]
7472#[allow(clippy::derive_partial_eq_without_eq)]
7473#[derive(Clone, PartialEq, ::prost::Message)]
7474pub struct GetDatasetsResponse {
7475 #[prost(message, repeated, tag = "1")]
7477 pub datasets: ::prost::alloc::vec::Vec<super::super::models::v2::Dataset>,
7478}
7479#[derive(serde::Deserialize, serde::Serialize)]
7480#[allow(clippy::derive_partial_eq_without_eq)]
7481#[derive(Clone, PartialEq, ::prost::Message)]
7482pub struct DeleteDatasetRequest {
7483 #[prost(string, tag = "1")]
7484 pub dataset_id: ::prost::alloc::string::String,
7485}
7486#[derive(serde::Deserialize, serde::Serialize)]
7487#[allow(clippy::derive_partial_eq_without_eq)]
7488#[derive(Clone, PartialEq, ::prost::Message)]
7489pub struct DeleteDatasetResponse {}
7490#[derive(serde::Deserialize, serde::Serialize)]
7491#[allow(clippy::derive_partial_eq_without_eq)]
7492#[derive(Clone, PartialEq, ::prost::Message)]
7493pub struct UpdateDatasetNameRequest {
7494 #[prost(string, tag = "1")]
7495 pub dataset_id: ::prost::alloc::string::String,
7496 #[prost(string, tag = "2")]
7497 pub name: ::prost::alloc::string::String,
7498}
7499#[derive(serde::Deserialize, serde::Serialize)]
7500#[allow(clippy::derive_partial_eq_without_eq)]
7501#[derive(Clone, PartialEq, ::prost::Message)]
7502pub struct UpdateDatasetNameResponse {
7503 #[prost(message, optional, tag = "1")]
7504 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7505}
7506#[derive(serde::Deserialize, serde::Serialize)]
7507#[allow(clippy::derive_partial_eq_without_eq)]
7508#[derive(Clone, PartialEq, ::prost::Message)]
7509pub struct UpdateDatasetDescriptionRequest {
7510 #[prost(string, tag = "1")]
7511 pub dataset_id: ::prost::alloc::string::String,
7512 #[prost(string, tag = "2")]
7513 pub description: ::prost::alloc::string::String,
7514}
7515#[derive(serde::Deserialize, serde::Serialize)]
7516#[allow(clippy::derive_partial_eq_without_eq)]
7517#[derive(Clone, PartialEq, ::prost::Message)]
7518pub struct UpdateDatasetDescriptionResponse {
7519 #[prost(message, optional, tag = "1")]
7520 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7521}
7522#[derive(serde::Deserialize, serde::Serialize)]
7523#[allow(clippy::derive_partial_eq_without_eq)]
7524#[derive(Clone, PartialEq, ::prost::Message)]
7525pub struct UpdateDatasetKeyValuesRequest {
7526 #[prost(string, tag = "1")]
7527 pub dataset_id: ::prost::alloc::string::String,
7528 #[prost(message, repeated, tag = "2")]
7529 pub add_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
7530 #[prost(message, repeated, tag = "3")]
7531 pub remove_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
7532}
7533#[derive(serde::Deserialize, serde::Serialize)]
7534#[allow(clippy::derive_partial_eq_without_eq)]
7535#[derive(Clone, PartialEq, ::prost::Message)]
7536pub struct UpdateDatasetKeyValuesResponse {
7537 #[prost(message, optional, tag = "1")]
7538 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7539}
7540#[derive(serde::Deserialize, serde::Serialize)]
7541#[allow(clippy::derive_partial_eq_without_eq)]
7542#[derive(Clone, PartialEq, ::prost::Message)]
7543pub struct UpdateDatasetDataClassRequest {
7544 #[prost(string, tag = "1")]
7545 pub dataset_id: ::prost::alloc::string::String,
7546 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "2")]
7547 pub data_class: i32,
7548}
7549#[derive(serde::Deserialize, serde::Serialize)]
7550#[allow(clippy::derive_partial_eq_without_eq)]
7551#[derive(Clone, PartialEq, ::prost::Message)]
7552pub struct UpdateDatasetDataClassResponse {
7553 #[prost(message, optional, tag = "1")]
7554 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7555}
7556#[derive(serde::Deserialize, serde::Serialize)]
7557#[allow(clippy::derive_partial_eq_without_eq)]
7558#[derive(Clone, PartialEq, ::prost::Message)]
7559pub struct SnapshotDatasetRequest {
7560 #[prost(string, tag = "1")]
7561 pub dataset_id: ::prost::alloc::string::String,
7562}
7563#[derive(serde::Deserialize, serde::Serialize)]
7564#[allow(clippy::derive_partial_eq_without_eq)]
7565#[derive(Clone, PartialEq, ::prost::Message)]
7566pub struct SnapshotDatasetResponse {
7567 #[prost(message, optional, tag = "1")]
7569 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7570}
7571#[derive(serde::Deserialize, serde::Serialize)]
7572#[allow(clippy::derive_partial_eq_without_eq)]
7573#[derive(Clone, PartialEq, ::prost::Message)]
7574pub struct UpdateDatasetLicensesRequest {
7575 #[prost(string, tag = "1")]
7576 pub dataset_id: ::prost::alloc::string::String,
7577 #[prost(string, tag = "2")]
7578 pub metadata_license_tag: ::prost::alloc::string::String,
7579 #[prost(string, tag = "3")]
7580 pub default_data_license_tag: ::prost::alloc::string::String,
7581}
7582#[derive(serde::Deserialize, serde::Serialize)]
7583#[allow(clippy::derive_partial_eq_without_eq)]
7584#[derive(Clone, PartialEq, ::prost::Message)]
7585pub struct UpdateDatasetLicensesResponse {
7586 #[prost(message, optional, tag = "1")]
7587 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7588}
7589#[derive(serde::Deserialize, serde::Serialize)]
7590#[allow(clippy::derive_partial_eq_without_eq)]
7591#[derive(Clone, PartialEq, ::prost::Message)]
7592pub struct UpdateDatasetTitleRequest {
7593 #[prost(string, tag = "1")]
7594 pub dataset_id: ::prost::alloc::string::String,
7595 #[prost(string, tag = "2")]
7596 pub title: ::prost::alloc::string::String,
7597}
7598#[derive(serde::Deserialize, serde::Serialize)]
7599#[allow(clippy::derive_partial_eq_without_eq)]
7600#[derive(Clone, PartialEq, ::prost::Message)]
7601pub struct UpdateDatasetTitleResponse {
7602 #[prost(message, optional, tag = "1")]
7603 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7604}
7605#[derive(serde::Deserialize, serde::Serialize)]
7606#[allow(clippy::derive_partial_eq_without_eq)]
7607#[derive(Clone, PartialEq, ::prost::Message)]
7608pub struct UpdateDatasetAuthorsRequest {
7609 #[prost(string, tag = "1")]
7610 pub dataset_id: ::prost::alloc::string::String,
7611 #[prost(message, repeated, tag = "2")]
7612 pub add_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
7613 #[prost(message, repeated, tag = "3")]
7614 pub remove_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
7615}
7616#[derive(serde::Deserialize, serde::Serialize)]
7617#[allow(clippy::derive_partial_eq_without_eq)]
7618#[derive(Clone, PartialEq, ::prost::Message)]
7619pub struct UpdateDatasetAuthorsResponse {
7620 #[prost(message, optional, tag = "1")]
7621 pub dataset: ::core::option::Option<super::super::models::v2::Dataset>,
7622}
7623pub mod dataset_service_client {
7625 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
7626 use tonic::codegen::*;
7627 use tonic::codegen::http::Uri;
7628 #[derive(Debug, Clone)]
7632 pub struct DatasetServiceClient<T> {
7633 inner: tonic::client::Grpc<T>,
7634 }
7635 impl DatasetServiceClient<tonic::transport::Channel> {
7636 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
7638 where
7639 D: TryInto<tonic::transport::Endpoint>,
7640 D::Error: Into<StdError>,
7641 {
7642 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
7643 Ok(Self::new(conn))
7644 }
7645 }
7646 impl<T> DatasetServiceClient<T>
7647 where
7648 T: tonic::client::GrpcService<tonic::body::BoxBody>,
7649 T::Error: Into<StdError>,
7650 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
7651 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
7652 {
7653 pub fn new(inner: T) -> Self {
7654 let inner = tonic::client::Grpc::new(inner);
7655 Self { inner }
7656 }
7657 pub fn with_origin(inner: T, origin: Uri) -> Self {
7658 let inner = tonic::client::Grpc::with_origin(inner, origin);
7659 Self { inner }
7660 }
7661 pub fn with_interceptor<F>(
7662 inner: T,
7663 interceptor: F,
7664 ) -> DatasetServiceClient<InterceptedService<T, F>>
7665 where
7666 F: tonic::service::Interceptor,
7667 T::ResponseBody: Default,
7668 T: tonic::codegen::Service<
7669 http::Request<tonic::body::BoxBody>,
7670 Response = http::Response<
7671 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
7672 >,
7673 >,
7674 <T as tonic::codegen::Service<
7675 http::Request<tonic::body::BoxBody>,
7676 >>::Error: Into<StdError> + Send + Sync,
7677 {
7678 DatasetServiceClient::new(InterceptedService::new(inner, interceptor))
7679 }
7680 #[must_use]
7685 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
7686 self.inner = self.inner.send_compressed(encoding);
7687 self
7688 }
7689 #[must_use]
7691 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
7692 self.inner = self.inner.accept_compressed(encoding);
7693 self
7694 }
7695 #[must_use]
7699 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
7700 self.inner = self.inner.max_decoding_message_size(limit);
7701 self
7702 }
7703 #[must_use]
7707 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
7708 self.inner = self.inner.max_encoding_message_size(limit);
7709 self
7710 }
7711 pub async fn create_dataset(
7717 &mut self,
7718 request: impl tonic::IntoRequest<super::CreateDatasetRequest>,
7719 ) -> std::result::Result<
7720 tonic::Response<super::CreateDatasetResponse>,
7721 tonic::Status,
7722 > {
7723 self.inner
7724 .ready()
7725 .await
7726 .map_err(|e| {
7727 tonic::Status::new(
7728 tonic::Code::Unknown,
7729 format!("Service was not ready: {}", e.into()),
7730 )
7731 })?;
7732 let codec = tonic::codec::ProstCodec::default();
7733 let path = http::uri::PathAndQuery::from_static(
7734 "/aruna.api.storage.services.v2.DatasetService/CreateDataset",
7735 );
7736 let mut req = request.into_request();
7737 req.extensions_mut()
7738 .insert(
7739 GrpcMethod::new(
7740 "aruna.api.storage.services.v2.DatasetService",
7741 "CreateDataset",
7742 ),
7743 );
7744 self.inner.unary(req, path, codec).await
7745 }
7746 pub async fn get_dataset(
7752 &mut self,
7753 request: impl tonic::IntoRequest<super::GetDatasetRequest>,
7754 ) -> std::result::Result<
7755 tonic::Response<super::GetDatasetResponse>,
7756 tonic::Status,
7757 > {
7758 self.inner
7759 .ready()
7760 .await
7761 .map_err(|e| {
7762 tonic::Status::new(
7763 tonic::Code::Unknown,
7764 format!("Service was not ready: {}", e.into()),
7765 )
7766 })?;
7767 let codec = tonic::codec::ProstCodec::default();
7768 let path = http::uri::PathAndQuery::from_static(
7769 "/aruna.api.storage.services.v2.DatasetService/GetDataset",
7770 );
7771 let mut req = request.into_request();
7772 req.extensions_mut()
7773 .insert(
7774 GrpcMethod::new(
7775 "aruna.api.storage.services.v2.DatasetService",
7776 "GetDataset",
7777 ),
7778 );
7779 self.inner.unary(req, path, codec).await
7780 }
7781 pub async fn get_datasets(
7787 &mut self,
7788 request: impl tonic::IntoRequest<super::GetDatasetsRequest>,
7789 ) -> std::result::Result<
7790 tonic::Response<super::GetDatasetsResponse>,
7791 tonic::Status,
7792 > {
7793 self.inner
7794 .ready()
7795 .await
7796 .map_err(|e| {
7797 tonic::Status::new(
7798 tonic::Code::Unknown,
7799 format!("Service was not ready: {}", e.into()),
7800 )
7801 })?;
7802 let codec = tonic::codec::ProstCodec::default();
7803 let path = http::uri::PathAndQuery::from_static(
7804 "/aruna.api.storage.services.v2.DatasetService/GetDatasets",
7805 );
7806 let mut req = request.into_request();
7807 req.extensions_mut()
7808 .insert(
7809 GrpcMethod::new(
7810 "aruna.api.storage.services.v2.DatasetService",
7811 "GetDatasets",
7812 ),
7813 );
7814 self.inner.unary(req, path, codec).await
7815 }
7816 pub async fn delete_dataset(
7822 &mut self,
7823 request: impl tonic::IntoRequest<super::DeleteDatasetRequest>,
7824 ) -> std::result::Result<
7825 tonic::Response<super::DeleteDatasetResponse>,
7826 tonic::Status,
7827 > {
7828 self.inner
7829 .ready()
7830 .await
7831 .map_err(|e| {
7832 tonic::Status::new(
7833 tonic::Code::Unknown,
7834 format!("Service was not ready: {}", e.into()),
7835 )
7836 })?;
7837 let codec = tonic::codec::ProstCodec::default();
7838 let path = http::uri::PathAndQuery::from_static(
7839 "/aruna.api.storage.services.v2.DatasetService/DeleteDataset",
7840 );
7841 let mut req = request.into_request();
7842 req.extensions_mut()
7843 .insert(
7844 GrpcMethod::new(
7845 "aruna.api.storage.services.v2.DatasetService",
7846 "DeleteDataset",
7847 ),
7848 );
7849 self.inner.unary(req, path, codec).await
7850 }
7851 pub async fn update_dataset_name(
7857 &mut self,
7858 request: impl tonic::IntoRequest<super::UpdateDatasetNameRequest>,
7859 ) -> std::result::Result<
7860 tonic::Response<super::UpdateDatasetNameResponse>,
7861 tonic::Status,
7862 > {
7863 self.inner
7864 .ready()
7865 .await
7866 .map_err(|e| {
7867 tonic::Status::new(
7868 tonic::Code::Unknown,
7869 format!("Service was not ready: {}", e.into()),
7870 )
7871 })?;
7872 let codec = tonic::codec::ProstCodec::default();
7873 let path = http::uri::PathAndQuery::from_static(
7874 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetName",
7875 );
7876 let mut req = request.into_request();
7877 req.extensions_mut()
7878 .insert(
7879 GrpcMethod::new(
7880 "aruna.api.storage.services.v2.DatasetService",
7881 "UpdateDatasetName",
7882 ),
7883 );
7884 self.inner.unary(req, path, codec).await
7885 }
7886 pub async fn update_dataset_description(
7892 &mut self,
7893 request: impl tonic::IntoRequest<super::UpdateDatasetDescriptionRequest>,
7894 ) -> std::result::Result<
7895 tonic::Response<super::UpdateDatasetDescriptionResponse>,
7896 tonic::Status,
7897 > {
7898 self.inner
7899 .ready()
7900 .await
7901 .map_err(|e| {
7902 tonic::Status::new(
7903 tonic::Code::Unknown,
7904 format!("Service was not ready: {}", e.into()),
7905 )
7906 })?;
7907 let codec = tonic::codec::ProstCodec::default();
7908 let path = http::uri::PathAndQuery::from_static(
7909 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetDescription",
7910 );
7911 let mut req = request.into_request();
7912 req.extensions_mut()
7913 .insert(
7914 GrpcMethod::new(
7915 "aruna.api.storage.services.v2.DatasetService",
7916 "UpdateDatasetDescription",
7917 ),
7918 );
7919 self.inner.unary(req, path, codec).await
7920 }
7921 pub async fn update_dataset_key_values(
7927 &mut self,
7928 request: impl tonic::IntoRequest<super::UpdateDatasetKeyValuesRequest>,
7929 ) -> std::result::Result<
7930 tonic::Response<super::UpdateDatasetKeyValuesResponse>,
7931 tonic::Status,
7932 > {
7933 self.inner
7934 .ready()
7935 .await
7936 .map_err(|e| {
7937 tonic::Status::new(
7938 tonic::Code::Unknown,
7939 format!("Service was not ready: {}", e.into()),
7940 )
7941 })?;
7942 let codec = tonic::codec::ProstCodec::default();
7943 let path = http::uri::PathAndQuery::from_static(
7944 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetKeyValues",
7945 );
7946 let mut req = request.into_request();
7947 req.extensions_mut()
7948 .insert(
7949 GrpcMethod::new(
7950 "aruna.api.storage.services.v2.DatasetService",
7951 "UpdateDatasetKeyValues",
7952 ),
7953 );
7954 self.inner.unary(req, path, codec).await
7955 }
7956 pub async fn update_dataset_data_class(
7962 &mut self,
7963 request: impl tonic::IntoRequest<super::UpdateDatasetDataClassRequest>,
7964 ) -> std::result::Result<
7965 tonic::Response<super::UpdateDatasetDataClassResponse>,
7966 tonic::Status,
7967 > {
7968 self.inner
7969 .ready()
7970 .await
7971 .map_err(|e| {
7972 tonic::Status::new(
7973 tonic::Code::Unknown,
7974 format!("Service was not ready: {}", e.into()),
7975 )
7976 })?;
7977 let codec = tonic::codec::ProstCodec::default();
7978 let path = http::uri::PathAndQuery::from_static(
7979 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetDataClass",
7980 );
7981 let mut req = request.into_request();
7982 req.extensions_mut()
7983 .insert(
7984 GrpcMethod::new(
7985 "aruna.api.storage.services.v2.DatasetService",
7986 "UpdateDatasetDataClass",
7987 ),
7988 );
7989 self.inner.unary(req, path, codec).await
7990 }
7991 pub async fn snapshot_dataset(
7997 &mut self,
7998 request: impl tonic::IntoRequest<super::SnapshotDatasetRequest>,
7999 ) -> std::result::Result<
8000 tonic::Response<super::SnapshotDatasetResponse>,
8001 tonic::Status,
8002 > {
8003 self.inner
8004 .ready()
8005 .await
8006 .map_err(|e| {
8007 tonic::Status::new(
8008 tonic::Code::Unknown,
8009 format!("Service was not ready: {}", e.into()),
8010 )
8011 })?;
8012 let codec = tonic::codec::ProstCodec::default();
8013 let path = http::uri::PathAndQuery::from_static(
8014 "/aruna.api.storage.services.v2.DatasetService/SnapshotDataset",
8015 );
8016 let mut req = request.into_request();
8017 req.extensions_mut()
8018 .insert(
8019 GrpcMethod::new(
8020 "aruna.api.storage.services.v2.DatasetService",
8021 "SnapshotDataset",
8022 ),
8023 );
8024 self.inner.unary(req, path, codec).await
8025 }
8026 pub async fn update_dataset_licenses(
8032 &mut self,
8033 request: impl tonic::IntoRequest<super::UpdateDatasetLicensesRequest>,
8034 ) -> std::result::Result<
8035 tonic::Response<super::UpdateDatasetLicensesResponse>,
8036 tonic::Status,
8037 > {
8038 self.inner
8039 .ready()
8040 .await
8041 .map_err(|e| {
8042 tonic::Status::new(
8043 tonic::Code::Unknown,
8044 format!("Service was not ready: {}", e.into()),
8045 )
8046 })?;
8047 let codec = tonic::codec::ProstCodec::default();
8048 let path = http::uri::PathAndQuery::from_static(
8049 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetLicenses",
8050 );
8051 let mut req = request.into_request();
8052 req.extensions_mut()
8053 .insert(
8054 GrpcMethod::new(
8055 "aruna.api.storage.services.v2.DatasetService",
8056 "UpdateDatasetLicenses",
8057 ),
8058 );
8059 self.inner.unary(req, path, codec).await
8060 }
8061 pub async fn update_dataset_title(
8067 &mut self,
8068 request: impl tonic::IntoRequest<super::UpdateDatasetTitleRequest>,
8069 ) -> std::result::Result<
8070 tonic::Response<super::UpdateDatasetTitleResponse>,
8071 tonic::Status,
8072 > {
8073 self.inner
8074 .ready()
8075 .await
8076 .map_err(|e| {
8077 tonic::Status::new(
8078 tonic::Code::Unknown,
8079 format!("Service was not ready: {}", e.into()),
8080 )
8081 })?;
8082 let codec = tonic::codec::ProstCodec::default();
8083 let path = http::uri::PathAndQuery::from_static(
8084 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetTitle",
8085 );
8086 let mut req = request.into_request();
8087 req.extensions_mut()
8088 .insert(
8089 GrpcMethod::new(
8090 "aruna.api.storage.services.v2.DatasetService",
8091 "UpdateDatasetTitle",
8092 ),
8093 );
8094 self.inner.unary(req, path, codec).await
8095 }
8096 pub async fn update_dataset_authors(
8102 &mut self,
8103 request: impl tonic::IntoRequest<super::UpdateDatasetAuthorsRequest>,
8104 ) -> std::result::Result<
8105 tonic::Response<super::UpdateDatasetAuthorsResponse>,
8106 tonic::Status,
8107 > {
8108 self.inner
8109 .ready()
8110 .await
8111 .map_err(|e| {
8112 tonic::Status::new(
8113 tonic::Code::Unknown,
8114 format!("Service was not ready: {}", e.into()),
8115 )
8116 })?;
8117 let codec = tonic::codec::ProstCodec::default();
8118 let path = http::uri::PathAndQuery::from_static(
8119 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetAuthors",
8120 );
8121 let mut req = request.into_request();
8122 req.extensions_mut()
8123 .insert(
8124 GrpcMethod::new(
8125 "aruna.api.storage.services.v2.DatasetService",
8126 "UpdateDatasetAuthors",
8127 ),
8128 );
8129 self.inner.unary(req, path, codec).await
8130 }
8131 }
8132}
8133pub mod dataset_service_server {
8135 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
8136 use tonic::codegen::*;
8137 #[async_trait]
8139 pub trait DatasetService: Send + Sync + 'static {
8140 async fn create_dataset(
8146 &self,
8147 request: tonic::Request<super::CreateDatasetRequest>,
8148 ) -> std::result::Result<
8149 tonic::Response<super::CreateDatasetResponse>,
8150 tonic::Status,
8151 >;
8152 async fn get_dataset(
8158 &self,
8159 request: tonic::Request<super::GetDatasetRequest>,
8160 ) -> std::result::Result<
8161 tonic::Response<super::GetDatasetResponse>,
8162 tonic::Status,
8163 >;
8164 async fn get_datasets(
8170 &self,
8171 request: tonic::Request<super::GetDatasetsRequest>,
8172 ) -> std::result::Result<
8173 tonic::Response<super::GetDatasetsResponse>,
8174 tonic::Status,
8175 >;
8176 async fn delete_dataset(
8182 &self,
8183 request: tonic::Request<super::DeleteDatasetRequest>,
8184 ) -> std::result::Result<
8185 tonic::Response<super::DeleteDatasetResponse>,
8186 tonic::Status,
8187 >;
8188 async fn update_dataset_name(
8194 &self,
8195 request: tonic::Request<super::UpdateDatasetNameRequest>,
8196 ) -> std::result::Result<
8197 tonic::Response<super::UpdateDatasetNameResponse>,
8198 tonic::Status,
8199 >;
8200 async fn update_dataset_description(
8206 &self,
8207 request: tonic::Request<super::UpdateDatasetDescriptionRequest>,
8208 ) -> std::result::Result<
8209 tonic::Response<super::UpdateDatasetDescriptionResponse>,
8210 tonic::Status,
8211 >;
8212 async fn update_dataset_key_values(
8218 &self,
8219 request: tonic::Request<super::UpdateDatasetKeyValuesRequest>,
8220 ) -> std::result::Result<
8221 tonic::Response<super::UpdateDatasetKeyValuesResponse>,
8222 tonic::Status,
8223 >;
8224 async fn update_dataset_data_class(
8230 &self,
8231 request: tonic::Request<super::UpdateDatasetDataClassRequest>,
8232 ) -> std::result::Result<
8233 tonic::Response<super::UpdateDatasetDataClassResponse>,
8234 tonic::Status,
8235 >;
8236 async fn snapshot_dataset(
8242 &self,
8243 request: tonic::Request<super::SnapshotDatasetRequest>,
8244 ) -> std::result::Result<
8245 tonic::Response<super::SnapshotDatasetResponse>,
8246 tonic::Status,
8247 >;
8248 async fn update_dataset_licenses(
8254 &self,
8255 request: tonic::Request<super::UpdateDatasetLicensesRequest>,
8256 ) -> std::result::Result<
8257 tonic::Response<super::UpdateDatasetLicensesResponse>,
8258 tonic::Status,
8259 >;
8260 async fn update_dataset_title(
8266 &self,
8267 request: tonic::Request<super::UpdateDatasetTitleRequest>,
8268 ) -> std::result::Result<
8269 tonic::Response<super::UpdateDatasetTitleResponse>,
8270 tonic::Status,
8271 >;
8272 async fn update_dataset_authors(
8278 &self,
8279 request: tonic::Request<super::UpdateDatasetAuthorsRequest>,
8280 ) -> std::result::Result<
8281 tonic::Response<super::UpdateDatasetAuthorsResponse>,
8282 tonic::Status,
8283 >;
8284 }
8285 #[derive(Debug)]
8289 pub struct DatasetServiceServer<T: DatasetService> {
8290 inner: _Inner<T>,
8291 accept_compression_encodings: EnabledCompressionEncodings,
8292 send_compression_encodings: EnabledCompressionEncodings,
8293 max_decoding_message_size: Option<usize>,
8294 max_encoding_message_size: Option<usize>,
8295 }
8296 struct _Inner<T>(Arc<T>);
8297 impl<T: DatasetService> DatasetServiceServer<T> {
8298 pub fn new(inner: T) -> Self {
8299 Self::from_arc(Arc::new(inner))
8300 }
8301 pub fn from_arc(inner: Arc<T>) -> Self {
8302 let inner = _Inner(inner);
8303 Self {
8304 inner,
8305 accept_compression_encodings: Default::default(),
8306 send_compression_encodings: Default::default(),
8307 max_decoding_message_size: None,
8308 max_encoding_message_size: None,
8309 }
8310 }
8311 pub fn with_interceptor<F>(
8312 inner: T,
8313 interceptor: F,
8314 ) -> InterceptedService<Self, F>
8315 where
8316 F: tonic::service::Interceptor,
8317 {
8318 InterceptedService::new(Self::new(inner), interceptor)
8319 }
8320 #[must_use]
8322 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
8323 self.accept_compression_encodings.enable(encoding);
8324 self
8325 }
8326 #[must_use]
8328 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
8329 self.send_compression_encodings.enable(encoding);
8330 self
8331 }
8332 #[must_use]
8336 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
8337 self.max_decoding_message_size = Some(limit);
8338 self
8339 }
8340 #[must_use]
8344 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
8345 self.max_encoding_message_size = Some(limit);
8346 self
8347 }
8348 }
8349 impl<T, B> tonic::codegen::Service<http::Request<B>> for DatasetServiceServer<T>
8350 where
8351 T: DatasetService,
8352 B: Body + Send + 'static,
8353 B::Error: Into<StdError> + Send + 'static,
8354 {
8355 type Response = http::Response<tonic::body::BoxBody>;
8356 type Error = std::convert::Infallible;
8357 type Future = BoxFuture<Self::Response, Self::Error>;
8358 fn poll_ready(
8359 &mut self,
8360 _cx: &mut Context<'_>,
8361 ) -> Poll<std::result::Result<(), Self::Error>> {
8362 Poll::Ready(Ok(()))
8363 }
8364 fn call(&mut self, req: http::Request<B>) -> Self::Future {
8365 let inner = self.inner.clone();
8366 match req.uri().path() {
8367 "/aruna.api.storage.services.v2.DatasetService/CreateDataset" => {
8368 #[allow(non_camel_case_types)]
8369 struct CreateDatasetSvc<T: DatasetService>(pub Arc<T>);
8370 impl<
8371 T: DatasetService,
8372 > tonic::server::UnaryService<super::CreateDatasetRequest>
8373 for CreateDatasetSvc<T> {
8374 type Response = super::CreateDatasetResponse;
8375 type Future = BoxFuture<
8376 tonic::Response<Self::Response>,
8377 tonic::Status,
8378 >;
8379 fn call(
8380 &mut self,
8381 request: tonic::Request<super::CreateDatasetRequest>,
8382 ) -> Self::Future {
8383 let inner = Arc::clone(&self.0);
8384 let fut = async move {
8385 <T as DatasetService>::create_dataset(&inner, request).await
8386 };
8387 Box::pin(fut)
8388 }
8389 }
8390 let accept_compression_encodings = self.accept_compression_encodings;
8391 let send_compression_encodings = self.send_compression_encodings;
8392 let max_decoding_message_size = self.max_decoding_message_size;
8393 let max_encoding_message_size = self.max_encoding_message_size;
8394 let inner = self.inner.clone();
8395 let fut = async move {
8396 let inner = inner.0;
8397 let method = CreateDatasetSvc(inner);
8398 let codec = tonic::codec::ProstCodec::default();
8399 let mut grpc = tonic::server::Grpc::new(codec)
8400 .apply_compression_config(
8401 accept_compression_encodings,
8402 send_compression_encodings,
8403 )
8404 .apply_max_message_size_config(
8405 max_decoding_message_size,
8406 max_encoding_message_size,
8407 );
8408 let res = grpc.unary(method, req).await;
8409 Ok(res)
8410 };
8411 Box::pin(fut)
8412 }
8413 "/aruna.api.storage.services.v2.DatasetService/GetDataset" => {
8414 #[allow(non_camel_case_types)]
8415 struct GetDatasetSvc<T: DatasetService>(pub Arc<T>);
8416 impl<
8417 T: DatasetService,
8418 > tonic::server::UnaryService<super::GetDatasetRequest>
8419 for GetDatasetSvc<T> {
8420 type Response = super::GetDatasetResponse;
8421 type Future = BoxFuture<
8422 tonic::Response<Self::Response>,
8423 tonic::Status,
8424 >;
8425 fn call(
8426 &mut self,
8427 request: tonic::Request<super::GetDatasetRequest>,
8428 ) -> Self::Future {
8429 let inner = Arc::clone(&self.0);
8430 let fut = async move {
8431 <T as DatasetService>::get_dataset(&inner, request).await
8432 };
8433 Box::pin(fut)
8434 }
8435 }
8436 let accept_compression_encodings = self.accept_compression_encodings;
8437 let send_compression_encodings = self.send_compression_encodings;
8438 let max_decoding_message_size = self.max_decoding_message_size;
8439 let max_encoding_message_size = self.max_encoding_message_size;
8440 let inner = self.inner.clone();
8441 let fut = async move {
8442 let inner = inner.0;
8443 let method = GetDatasetSvc(inner);
8444 let codec = tonic::codec::ProstCodec::default();
8445 let mut grpc = tonic::server::Grpc::new(codec)
8446 .apply_compression_config(
8447 accept_compression_encodings,
8448 send_compression_encodings,
8449 )
8450 .apply_max_message_size_config(
8451 max_decoding_message_size,
8452 max_encoding_message_size,
8453 );
8454 let res = grpc.unary(method, req).await;
8455 Ok(res)
8456 };
8457 Box::pin(fut)
8458 }
8459 "/aruna.api.storage.services.v2.DatasetService/GetDatasets" => {
8460 #[allow(non_camel_case_types)]
8461 struct GetDatasetsSvc<T: DatasetService>(pub Arc<T>);
8462 impl<
8463 T: DatasetService,
8464 > tonic::server::UnaryService<super::GetDatasetsRequest>
8465 for GetDatasetsSvc<T> {
8466 type Response = super::GetDatasetsResponse;
8467 type Future = BoxFuture<
8468 tonic::Response<Self::Response>,
8469 tonic::Status,
8470 >;
8471 fn call(
8472 &mut self,
8473 request: tonic::Request<super::GetDatasetsRequest>,
8474 ) -> Self::Future {
8475 let inner = Arc::clone(&self.0);
8476 let fut = async move {
8477 <T as DatasetService>::get_datasets(&inner, request).await
8478 };
8479 Box::pin(fut)
8480 }
8481 }
8482 let accept_compression_encodings = self.accept_compression_encodings;
8483 let send_compression_encodings = self.send_compression_encodings;
8484 let max_decoding_message_size = self.max_decoding_message_size;
8485 let max_encoding_message_size = self.max_encoding_message_size;
8486 let inner = self.inner.clone();
8487 let fut = async move {
8488 let inner = inner.0;
8489 let method = GetDatasetsSvc(inner);
8490 let codec = tonic::codec::ProstCodec::default();
8491 let mut grpc = tonic::server::Grpc::new(codec)
8492 .apply_compression_config(
8493 accept_compression_encodings,
8494 send_compression_encodings,
8495 )
8496 .apply_max_message_size_config(
8497 max_decoding_message_size,
8498 max_encoding_message_size,
8499 );
8500 let res = grpc.unary(method, req).await;
8501 Ok(res)
8502 };
8503 Box::pin(fut)
8504 }
8505 "/aruna.api.storage.services.v2.DatasetService/DeleteDataset" => {
8506 #[allow(non_camel_case_types)]
8507 struct DeleteDatasetSvc<T: DatasetService>(pub Arc<T>);
8508 impl<
8509 T: DatasetService,
8510 > tonic::server::UnaryService<super::DeleteDatasetRequest>
8511 for DeleteDatasetSvc<T> {
8512 type Response = super::DeleteDatasetResponse;
8513 type Future = BoxFuture<
8514 tonic::Response<Self::Response>,
8515 tonic::Status,
8516 >;
8517 fn call(
8518 &mut self,
8519 request: tonic::Request<super::DeleteDatasetRequest>,
8520 ) -> Self::Future {
8521 let inner = Arc::clone(&self.0);
8522 let fut = async move {
8523 <T as DatasetService>::delete_dataset(&inner, request).await
8524 };
8525 Box::pin(fut)
8526 }
8527 }
8528 let accept_compression_encodings = self.accept_compression_encodings;
8529 let send_compression_encodings = self.send_compression_encodings;
8530 let max_decoding_message_size = self.max_decoding_message_size;
8531 let max_encoding_message_size = self.max_encoding_message_size;
8532 let inner = self.inner.clone();
8533 let fut = async move {
8534 let inner = inner.0;
8535 let method = DeleteDatasetSvc(inner);
8536 let codec = tonic::codec::ProstCodec::default();
8537 let mut grpc = tonic::server::Grpc::new(codec)
8538 .apply_compression_config(
8539 accept_compression_encodings,
8540 send_compression_encodings,
8541 )
8542 .apply_max_message_size_config(
8543 max_decoding_message_size,
8544 max_encoding_message_size,
8545 );
8546 let res = grpc.unary(method, req).await;
8547 Ok(res)
8548 };
8549 Box::pin(fut)
8550 }
8551 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetName" => {
8552 #[allow(non_camel_case_types)]
8553 struct UpdateDatasetNameSvc<T: DatasetService>(pub Arc<T>);
8554 impl<
8555 T: DatasetService,
8556 > tonic::server::UnaryService<super::UpdateDatasetNameRequest>
8557 for UpdateDatasetNameSvc<T> {
8558 type Response = super::UpdateDatasetNameResponse;
8559 type Future = BoxFuture<
8560 tonic::Response<Self::Response>,
8561 tonic::Status,
8562 >;
8563 fn call(
8564 &mut self,
8565 request: tonic::Request<super::UpdateDatasetNameRequest>,
8566 ) -> Self::Future {
8567 let inner = Arc::clone(&self.0);
8568 let fut = async move {
8569 <T as DatasetService>::update_dataset_name(&inner, request)
8570 .await
8571 };
8572 Box::pin(fut)
8573 }
8574 }
8575 let accept_compression_encodings = self.accept_compression_encodings;
8576 let send_compression_encodings = self.send_compression_encodings;
8577 let max_decoding_message_size = self.max_decoding_message_size;
8578 let max_encoding_message_size = self.max_encoding_message_size;
8579 let inner = self.inner.clone();
8580 let fut = async move {
8581 let inner = inner.0;
8582 let method = UpdateDatasetNameSvc(inner);
8583 let codec = tonic::codec::ProstCodec::default();
8584 let mut grpc = tonic::server::Grpc::new(codec)
8585 .apply_compression_config(
8586 accept_compression_encodings,
8587 send_compression_encodings,
8588 )
8589 .apply_max_message_size_config(
8590 max_decoding_message_size,
8591 max_encoding_message_size,
8592 );
8593 let res = grpc.unary(method, req).await;
8594 Ok(res)
8595 };
8596 Box::pin(fut)
8597 }
8598 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetDescription" => {
8599 #[allow(non_camel_case_types)]
8600 struct UpdateDatasetDescriptionSvc<T: DatasetService>(pub Arc<T>);
8601 impl<
8602 T: DatasetService,
8603 > tonic::server::UnaryService<super::UpdateDatasetDescriptionRequest>
8604 for UpdateDatasetDescriptionSvc<T> {
8605 type Response = super::UpdateDatasetDescriptionResponse;
8606 type Future = BoxFuture<
8607 tonic::Response<Self::Response>,
8608 tonic::Status,
8609 >;
8610 fn call(
8611 &mut self,
8612 request: tonic::Request<
8613 super::UpdateDatasetDescriptionRequest,
8614 >,
8615 ) -> Self::Future {
8616 let inner = Arc::clone(&self.0);
8617 let fut = async move {
8618 <T as DatasetService>::update_dataset_description(
8619 &inner,
8620 request,
8621 )
8622 .await
8623 };
8624 Box::pin(fut)
8625 }
8626 }
8627 let accept_compression_encodings = self.accept_compression_encodings;
8628 let send_compression_encodings = self.send_compression_encodings;
8629 let max_decoding_message_size = self.max_decoding_message_size;
8630 let max_encoding_message_size = self.max_encoding_message_size;
8631 let inner = self.inner.clone();
8632 let fut = async move {
8633 let inner = inner.0;
8634 let method = UpdateDatasetDescriptionSvc(inner);
8635 let codec = tonic::codec::ProstCodec::default();
8636 let mut grpc = tonic::server::Grpc::new(codec)
8637 .apply_compression_config(
8638 accept_compression_encodings,
8639 send_compression_encodings,
8640 )
8641 .apply_max_message_size_config(
8642 max_decoding_message_size,
8643 max_encoding_message_size,
8644 );
8645 let res = grpc.unary(method, req).await;
8646 Ok(res)
8647 };
8648 Box::pin(fut)
8649 }
8650 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetKeyValues" => {
8651 #[allow(non_camel_case_types)]
8652 struct UpdateDatasetKeyValuesSvc<T: DatasetService>(pub Arc<T>);
8653 impl<
8654 T: DatasetService,
8655 > tonic::server::UnaryService<super::UpdateDatasetKeyValuesRequest>
8656 for UpdateDatasetKeyValuesSvc<T> {
8657 type Response = super::UpdateDatasetKeyValuesResponse;
8658 type Future = BoxFuture<
8659 tonic::Response<Self::Response>,
8660 tonic::Status,
8661 >;
8662 fn call(
8663 &mut self,
8664 request: tonic::Request<super::UpdateDatasetKeyValuesRequest>,
8665 ) -> Self::Future {
8666 let inner = Arc::clone(&self.0);
8667 let fut = async move {
8668 <T as DatasetService>::update_dataset_key_values(
8669 &inner,
8670 request,
8671 )
8672 .await
8673 };
8674 Box::pin(fut)
8675 }
8676 }
8677 let accept_compression_encodings = self.accept_compression_encodings;
8678 let send_compression_encodings = self.send_compression_encodings;
8679 let max_decoding_message_size = self.max_decoding_message_size;
8680 let max_encoding_message_size = self.max_encoding_message_size;
8681 let inner = self.inner.clone();
8682 let fut = async move {
8683 let inner = inner.0;
8684 let method = UpdateDatasetKeyValuesSvc(inner);
8685 let codec = tonic::codec::ProstCodec::default();
8686 let mut grpc = tonic::server::Grpc::new(codec)
8687 .apply_compression_config(
8688 accept_compression_encodings,
8689 send_compression_encodings,
8690 )
8691 .apply_max_message_size_config(
8692 max_decoding_message_size,
8693 max_encoding_message_size,
8694 );
8695 let res = grpc.unary(method, req).await;
8696 Ok(res)
8697 };
8698 Box::pin(fut)
8699 }
8700 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetDataClass" => {
8701 #[allow(non_camel_case_types)]
8702 struct UpdateDatasetDataClassSvc<T: DatasetService>(pub Arc<T>);
8703 impl<
8704 T: DatasetService,
8705 > tonic::server::UnaryService<super::UpdateDatasetDataClassRequest>
8706 for UpdateDatasetDataClassSvc<T> {
8707 type Response = super::UpdateDatasetDataClassResponse;
8708 type Future = BoxFuture<
8709 tonic::Response<Self::Response>,
8710 tonic::Status,
8711 >;
8712 fn call(
8713 &mut self,
8714 request: tonic::Request<super::UpdateDatasetDataClassRequest>,
8715 ) -> Self::Future {
8716 let inner = Arc::clone(&self.0);
8717 let fut = async move {
8718 <T as DatasetService>::update_dataset_data_class(
8719 &inner,
8720 request,
8721 )
8722 .await
8723 };
8724 Box::pin(fut)
8725 }
8726 }
8727 let accept_compression_encodings = self.accept_compression_encodings;
8728 let send_compression_encodings = self.send_compression_encodings;
8729 let max_decoding_message_size = self.max_decoding_message_size;
8730 let max_encoding_message_size = self.max_encoding_message_size;
8731 let inner = self.inner.clone();
8732 let fut = async move {
8733 let inner = inner.0;
8734 let method = UpdateDatasetDataClassSvc(inner);
8735 let codec = tonic::codec::ProstCodec::default();
8736 let mut grpc = tonic::server::Grpc::new(codec)
8737 .apply_compression_config(
8738 accept_compression_encodings,
8739 send_compression_encodings,
8740 )
8741 .apply_max_message_size_config(
8742 max_decoding_message_size,
8743 max_encoding_message_size,
8744 );
8745 let res = grpc.unary(method, req).await;
8746 Ok(res)
8747 };
8748 Box::pin(fut)
8749 }
8750 "/aruna.api.storage.services.v2.DatasetService/SnapshotDataset" => {
8751 #[allow(non_camel_case_types)]
8752 struct SnapshotDatasetSvc<T: DatasetService>(pub Arc<T>);
8753 impl<
8754 T: DatasetService,
8755 > tonic::server::UnaryService<super::SnapshotDatasetRequest>
8756 for SnapshotDatasetSvc<T> {
8757 type Response = super::SnapshotDatasetResponse;
8758 type Future = BoxFuture<
8759 tonic::Response<Self::Response>,
8760 tonic::Status,
8761 >;
8762 fn call(
8763 &mut self,
8764 request: tonic::Request<super::SnapshotDatasetRequest>,
8765 ) -> Self::Future {
8766 let inner = Arc::clone(&self.0);
8767 let fut = async move {
8768 <T as DatasetService>::snapshot_dataset(&inner, request)
8769 .await
8770 };
8771 Box::pin(fut)
8772 }
8773 }
8774 let accept_compression_encodings = self.accept_compression_encodings;
8775 let send_compression_encodings = self.send_compression_encodings;
8776 let max_decoding_message_size = self.max_decoding_message_size;
8777 let max_encoding_message_size = self.max_encoding_message_size;
8778 let inner = self.inner.clone();
8779 let fut = async move {
8780 let inner = inner.0;
8781 let method = SnapshotDatasetSvc(inner);
8782 let codec = tonic::codec::ProstCodec::default();
8783 let mut grpc = tonic::server::Grpc::new(codec)
8784 .apply_compression_config(
8785 accept_compression_encodings,
8786 send_compression_encodings,
8787 )
8788 .apply_max_message_size_config(
8789 max_decoding_message_size,
8790 max_encoding_message_size,
8791 );
8792 let res = grpc.unary(method, req).await;
8793 Ok(res)
8794 };
8795 Box::pin(fut)
8796 }
8797 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetLicenses" => {
8798 #[allow(non_camel_case_types)]
8799 struct UpdateDatasetLicensesSvc<T: DatasetService>(pub Arc<T>);
8800 impl<
8801 T: DatasetService,
8802 > tonic::server::UnaryService<super::UpdateDatasetLicensesRequest>
8803 for UpdateDatasetLicensesSvc<T> {
8804 type Response = super::UpdateDatasetLicensesResponse;
8805 type Future = BoxFuture<
8806 tonic::Response<Self::Response>,
8807 tonic::Status,
8808 >;
8809 fn call(
8810 &mut self,
8811 request: tonic::Request<super::UpdateDatasetLicensesRequest>,
8812 ) -> Self::Future {
8813 let inner = Arc::clone(&self.0);
8814 let fut = async move {
8815 <T as DatasetService>::update_dataset_licenses(
8816 &inner,
8817 request,
8818 )
8819 .await
8820 };
8821 Box::pin(fut)
8822 }
8823 }
8824 let accept_compression_encodings = self.accept_compression_encodings;
8825 let send_compression_encodings = self.send_compression_encodings;
8826 let max_decoding_message_size = self.max_decoding_message_size;
8827 let max_encoding_message_size = self.max_encoding_message_size;
8828 let inner = self.inner.clone();
8829 let fut = async move {
8830 let inner = inner.0;
8831 let method = UpdateDatasetLicensesSvc(inner);
8832 let codec = tonic::codec::ProstCodec::default();
8833 let mut grpc = tonic::server::Grpc::new(codec)
8834 .apply_compression_config(
8835 accept_compression_encodings,
8836 send_compression_encodings,
8837 )
8838 .apply_max_message_size_config(
8839 max_decoding_message_size,
8840 max_encoding_message_size,
8841 );
8842 let res = grpc.unary(method, req).await;
8843 Ok(res)
8844 };
8845 Box::pin(fut)
8846 }
8847 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetTitle" => {
8848 #[allow(non_camel_case_types)]
8849 struct UpdateDatasetTitleSvc<T: DatasetService>(pub Arc<T>);
8850 impl<
8851 T: DatasetService,
8852 > tonic::server::UnaryService<super::UpdateDatasetTitleRequest>
8853 for UpdateDatasetTitleSvc<T> {
8854 type Response = super::UpdateDatasetTitleResponse;
8855 type Future = BoxFuture<
8856 tonic::Response<Self::Response>,
8857 tonic::Status,
8858 >;
8859 fn call(
8860 &mut self,
8861 request: tonic::Request<super::UpdateDatasetTitleRequest>,
8862 ) -> Self::Future {
8863 let inner = Arc::clone(&self.0);
8864 let fut = async move {
8865 <T as DatasetService>::update_dataset_title(&inner, request)
8866 .await
8867 };
8868 Box::pin(fut)
8869 }
8870 }
8871 let accept_compression_encodings = self.accept_compression_encodings;
8872 let send_compression_encodings = self.send_compression_encodings;
8873 let max_decoding_message_size = self.max_decoding_message_size;
8874 let max_encoding_message_size = self.max_encoding_message_size;
8875 let inner = self.inner.clone();
8876 let fut = async move {
8877 let inner = inner.0;
8878 let method = UpdateDatasetTitleSvc(inner);
8879 let codec = tonic::codec::ProstCodec::default();
8880 let mut grpc = tonic::server::Grpc::new(codec)
8881 .apply_compression_config(
8882 accept_compression_encodings,
8883 send_compression_encodings,
8884 )
8885 .apply_max_message_size_config(
8886 max_decoding_message_size,
8887 max_encoding_message_size,
8888 );
8889 let res = grpc.unary(method, req).await;
8890 Ok(res)
8891 };
8892 Box::pin(fut)
8893 }
8894 "/aruna.api.storage.services.v2.DatasetService/UpdateDatasetAuthors" => {
8895 #[allow(non_camel_case_types)]
8896 struct UpdateDatasetAuthorsSvc<T: DatasetService>(pub Arc<T>);
8897 impl<
8898 T: DatasetService,
8899 > tonic::server::UnaryService<super::UpdateDatasetAuthorsRequest>
8900 for UpdateDatasetAuthorsSvc<T> {
8901 type Response = super::UpdateDatasetAuthorsResponse;
8902 type Future = BoxFuture<
8903 tonic::Response<Self::Response>,
8904 tonic::Status,
8905 >;
8906 fn call(
8907 &mut self,
8908 request: tonic::Request<super::UpdateDatasetAuthorsRequest>,
8909 ) -> Self::Future {
8910 let inner = Arc::clone(&self.0);
8911 let fut = async move {
8912 <T as DatasetService>::update_dataset_authors(
8913 &inner,
8914 request,
8915 )
8916 .await
8917 };
8918 Box::pin(fut)
8919 }
8920 }
8921 let accept_compression_encodings = self.accept_compression_encodings;
8922 let send_compression_encodings = self.send_compression_encodings;
8923 let max_decoding_message_size = self.max_decoding_message_size;
8924 let max_encoding_message_size = self.max_encoding_message_size;
8925 let inner = self.inner.clone();
8926 let fut = async move {
8927 let inner = inner.0;
8928 let method = UpdateDatasetAuthorsSvc(inner);
8929 let codec = tonic::codec::ProstCodec::default();
8930 let mut grpc = tonic::server::Grpc::new(codec)
8931 .apply_compression_config(
8932 accept_compression_encodings,
8933 send_compression_encodings,
8934 )
8935 .apply_max_message_size_config(
8936 max_decoding_message_size,
8937 max_encoding_message_size,
8938 );
8939 let res = grpc.unary(method, req).await;
8940 Ok(res)
8941 };
8942 Box::pin(fut)
8943 }
8944 _ => {
8945 Box::pin(async move {
8946 Ok(
8947 http::Response::builder()
8948 .status(200)
8949 .header("grpc-status", "12")
8950 .header("content-type", "application/grpc")
8951 .body(empty_body())
8952 .unwrap(),
8953 )
8954 })
8955 }
8956 }
8957 }
8958 }
8959 impl<T: DatasetService> Clone for DatasetServiceServer<T> {
8960 fn clone(&self) -> Self {
8961 let inner = self.inner.clone();
8962 Self {
8963 inner,
8964 accept_compression_encodings: self.accept_compression_encodings,
8965 send_compression_encodings: self.send_compression_encodings,
8966 max_decoding_message_size: self.max_decoding_message_size,
8967 max_encoding_message_size: self.max_encoding_message_size,
8968 }
8969 }
8970 }
8971 impl<T: DatasetService> Clone for _Inner<T> {
8972 fn clone(&self) -> Self {
8973 Self(Arc::clone(&self.0))
8974 }
8975 }
8976 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
8977 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
8978 write!(f, "{:?}", self.0)
8979 }
8980 }
8981 impl<T: DatasetService> tonic::server::NamedService for DatasetServiceServer<T> {
8982 const NAME: &'static str = "aruna.api.storage.services.v2.DatasetService";
8983 }
8984}
8985#[derive(serde::Deserialize, serde::Serialize)]
8986#[allow(clippy::derive_partial_eq_without_eq)]
8987#[derive(Clone, PartialEq, ::prost::Message)]
8988pub struct CreateRuleRequest {
8989 #[prost(string, tag = "1")]
8990 pub rule: ::prost::alloc::string::String,
8991 #[prost(string, tag = "2")]
8992 pub description: ::prost::alloc::string::String,
8993 #[prost(bool, tag = "3")]
8994 pub public: bool,
8995}
8996#[derive(serde::Deserialize, serde::Serialize)]
8997#[allow(clippy::derive_partial_eq_without_eq)]
8998#[derive(Clone, PartialEq, ::prost::Message)]
8999pub struct CreateRuleResponse {
9000 #[prost(string, tag = "1")]
9001 pub id: ::prost::alloc::string::String,
9002}
9003#[derive(serde::Deserialize, serde::Serialize)]
9004#[allow(clippy::derive_partial_eq_without_eq)]
9005#[derive(Clone, PartialEq, ::prost::Message)]
9006pub struct GetRuleRequest {
9007 #[prost(string, tag = "1")]
9008 pub id: ::prost::alloc::string::String,
9009}
9010#[derive(serde::Deserialize, serde::Serialize)]
9011#[allow(clippy::derive_partial_eq_without_eq)]
9012#[derive(Clone, PartialEq, ::prost::Message)]
9013pub struct Rule {
9014 #[prost(string, tag = "1")]
9015 pub id: ::prost::alloc::string::String,
9016 #[prost(string, tag = "2")]
9017 pub rule: ::prost::alloc::string::String,
9018 #[prost(string, tag = "3")]
9019 pub description: ::prost::alloc::string::String,
9020 #[prost(bool, tag = "4")]
9021 pub public: bool,
9022 #[prost(string, tag = "5")]
9023 pub owner: ::prost::alloc::string::String,
9024}
9025#[derive(serde::Deserialize, serde::Serialize)]
9026#[allow(clippy::derive_partial_eq_without_eq)]
9027#[derive(Clone, PartialEq, ::prost::Message)]
9028pub struct GetRuleResponse {
9029 #[prost(message, optional, tag = "1")]
9030 pub rule: ::core::option::Option<Rule>,
9031}
9032#[derive(serde::Deserialize, serde::Serialize)]
9033#[allow(clippy::derive_partial_eq_without_eq)]
9034#[derive(Clone, PartialEq, ::prost::Message)]
9035pub struct ListRuleRequest {}
9036#[derive(serde::Deserialize, serde::Serialize)]
9037#[allow(clippy::derive_partial_eq_without_eq)]
9038#[derive(Clone, PartialEq, ::prost::Message)]
9039pub struct ListRuleResponse {
9040 #[prost(message, repeated, tag = "1")]
9041 pub rules: ::prost::alloc::vec::Vec<Rule>,
9042}
9043#[derive(serde::Deserialize, serde::Serialize)]
9044#[allow(clippy::derive_partial_eq_without_eq)]
9045#[derive(Clone, PartialEq, ::prost::Message)]
9046pub struct UpdateRuleRequest {
9047 #[prost(string, tag = "1")]
9048 pub id: ::prost::alloc::string::String,
9049 #[prost(string, tag = "2")]
9050 pub rule: ::prost::alloc::string::String,
9051 #[prost(string, tag = "3")]
9052 pub description: ::prost::alloc::string::String,
9053 #[prost(bool, tag = "4")]
9054 pub public: bool,
9055}
9056#[derive(serde::Deserialize, serde::Serialize)]
9057#[allow(clippy::derive_partial_eq_without_eq)]
9058#[derive(Clone, PartialEq, ::prost::Message)]
9059pub struct UpdateRuleResponse {
9060 #[prost(message, optional, tag = "1")]
9061 pub rule: ::core::option::Option<Rule>,
9062}
9063#[derive(serde::Deserialize, serde::Serialize)]
9064#[allow(clippy::derive_partial_eq_without_eq)]
9065#[derive(Clone, PartialEq, ::prost::Message)]
9066pub struct DeleteRuleRequest {
9067 #[prost(string, tag = "1")]
9068 pub id: ::prost::alloc::string::String,
9069}
9070#[derive(serde::Deserialize, serde::Serialize)]
9071#[allow(clippy::derive_partial_eq_without_eq)]
9072#[derive(Clone, PartialEq, ::prost::Message)]
9073pub struct DeleteRuleResponse {}
9074#[derive(serde::Deserialize, serde::Serialize)]
9075#[allow(clippy::derive_partial_eq_without_eq)]
9076#[derive(Clone, PartialEq, ::prost::Message)]
9077pub struct CreateRuleBindingRequest {
9078 #[prost(string, tag = "1")]
9079 pub rule_id: ::prost::alloc::string::String,
9080 #[prost(string, tag = "2")]
9081 pub object_id: ::prost::alloc::string::String,
9082 #[prost(bool, tag = "3")]
9083 pub cascading: bool,
9084}
9085#[derive(serde::Deserialize, serde::Serialize)]
9086#[allow(clippy::derive_partial_eq_without_eq)]
9087#[derive(Clone, PartialEq, ::prost::Message)]
9088pub struct CreateRuleBindingResponse {
9089 #[prost(string, tag = "1")]
9090 pub rule_id: ::prost::alloc::string::String,
9091 #[prost(string, tag = "2")]
9092 pub object_id: ::prost::alloc::string::String,
9093 #[prost(bool, tag = "3")]
9094 pub cascading: bool,
9095}
9096#[derive(serde::Deserialize, serde::Serialize)]
9097#[allow(clippy::derive_partial_eq_without_eq)]
9098#[derive(Clone, PartialEq, ::prost::Message)]
9099pub struct DeleteRuleBindingRequest {
9100 #[prost(string, tag = "1")]
9101 pub rule_id: ::prost::alloc::string::String,
9102 #[prost(string, tag = "2")]
9103 pub object_id: ::prost::alloc::string::String,
9104}
9105#[derive(serde::Deserialize, serde::Serialize)]
9106#[allow(clippy::derive_partial_eq_without_eq)]
9107#[derive(Clone, PartialEq, ::prost::Message)]
9108pub struct DeleteRuleBindingResponse {}
9109pub mod rules_service_client {
9111 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
9112 use tonic::codegen::*;
9113 use tonic::codegen::http::Uri;
9114 #[derive(Debug, Clone)]
9120 pub struct RulesServiceClient<T> {
9121 inner: tonic::client::Grpc<T>,
9122 }
9123 impl RulesServiceClient<tonic::transport::Channel> {
9124 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
9126 where
9127 D: TryInto<tonic::transport::Endpoint>,
9128 D::Error: Into<StdError>,
9129 {
9130 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
9131 Ok(Self::new(conn))
9132 }
9133 }
9134 impl<T> RulesServiceClient<T>
9135 where
9136 T: tonic::client::GrpcService<tonic::body::BoxBody>,
9137 T::Error: Into<StdError>,
9138 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
9139 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
9140 {
9141 pub fn new(inner: T) -> Self {
9142 let inner = tonic::client::Grpc::new(inner);
9143 Self { inner }
9144 }
9145 pub fn with_origin(inner: T, origin: Uri) -> Self {
9146 let inner = tonic::client::Grpc::with_origin(inner, origin);
9147 Self { inner }
9148 }
9149 pub fn with_interceptor<F>(
9150 inner: T,
9151 interceptor: F,
9152 ) -> RulesServiceClient<InterceptedService<T, F>>
9153 where
9154 F: tonic::service::Interceptor,
9155 T::ResponseBody: Default,
9156 T: tonic::codegen::Service<
9157 http::Request<tonic::body::BoxBody>,
9158 Response = http::Response<
9159 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
9160 >,
9161 >,
9162 <T as tonic::codegen::Service<
9163 http::Request<tonic::body::BoxBody>,
9164 >>::Error: Into<StdError> + Send + Sync,
9165 {
9166 RulesServiceClient::new(InterceptedService::new(inner, interceptor))
9167 }
9168 #[must_use]
9173 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
9174 self.inner = self.inner.send_compressed(encoding);
9175 self
9176 }
9177 #[must_use]
9179 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
9180 self.inner = self.inner.accept_compressed(encoding);
9181 self
9182 }
9183 #[must_use]
9187 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
9188 self.inner = self.inner.max_decoding_message_size(limit);
9189 self
9190 }
9191 #[must_use]
9195 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
9196 self.inner = self.inner.max_encoding_message_size(limit);
9197 self
9198 }
9199 pub async fn create_rule(
9205 &mut self,
9206 request: impl tonic::IntoRequest<super::CreateRuleRequest>,
9207 ) -> std::result::Result<
9208 tonic::Response<super::CreateRuleResponse>,
9209 tonic::Status,
9210 > {
9211 self.inner
9212 .ready()
9213 .await
9214 .map_err(|e| {
9215 tonic::Status::new(
9216 tonic::Code::Unknown,
9217 format!("Service was not ready: {}", e.into()),
9218 )
9219 })?;
9220 let codec = tonic::codec::ProstCodec::default();
9221 let path = http::uri::PathAndQuery::from_static(
9222 "/aruna.api.storage.services.v2.RulesService/CreateRule",
9223 );
9224 let mut req = request.into_request();
9225 req.extensions_mut()
9226 .insert(
9227 GrpcMethod::new(
9228 "aruna.api.storage.services.v2.RulesService",
9229 "CreateRule",
9230 ),
9231 );
9232 self.inner.unary(req, path, codec).await
9233 }
9234 pub async fn get_rule(
9240 &mut self,
9241 request: impl tonic::IntoRequest<super::GetRuleRequest>,
9242 ) -> std::result::Result<
9243 tonic::Response<super::GetRuleResponse>,
9244 tonic::Status,
9245 > {
9246 self.inner
9247 .ready()
9248 .await
9249 .map_err(|e| {
9250 tonic::Status::new(
9251 tonic::Code::Unknown,
9252 format!("Service was not ready: {}", e.into()),
9253 )
9254 })?;
9255 let codec = tonic::codec::ProstCodec::default();
9256 let path = http::uri::PathAndQuery::from_static(
9257 "/aruna.api.storage.services.v2.RulesService/GetRule",
9258 );
9259 let mut req = request.into_request();
9260 req.extensions_mut()
9261 .insert(
9262 GrpcMethod::new(
9263 "aruna.api.storage.services.v2.RulesService",
9264 "GetRule",
9265 ),
9266 );
9267 self.inner.unary(req, path, codec).await
9268 }
9269 pub async fn list_rule(
9275 &mut self,
9276 request: impl tonic::IntoRequest<super::ListRuleRequest>,
9277 ) -> std::result::Result<
9278 tonic::Response<super::ListRuleResponse>,
9279 tonic::Status,
9280 > {
9281 self.inner
9282 .ready()
9283 .await
9284 .map_err(|e| {
9285 tonic::Status::new(
9286 tonic::Code::Unknown,
9287 format!("Service was not ready: {}", e.into()),
9288 )
9289 })?;
9290 let codec = tonic::codec::ProstCodec::default();
9291 let path = http::uri::PathAndQuery::from_static(
9292 "/aruna.api.storage.services.v2.RulesService/ListRule",
9293 );
9294 let mut req = request.into_request();
9295 req.extensions_mut()
9296 .insert(
9297 GrpcMethod::new(
9298 "aruna.api.storage.services.v2.RulesService",
9299 "ListRule",
9300 ),
9301 );
9302 self.inner.unary(req, path, codec).await
9303 }
9304 pub async fn update_rule(
9310 &mut self,
9311 request: impl tonic::IntoRequest<super::UpdateRuleRequest>,
9312 ) -> std::result::Result<
9313 tonic::Response<super::UpdateRuleResponse>,
9314 tonic::Status,
9315 > {
9316 self.inner
9317 .ready()
9318 .await
9319 .map_err(|e| {
9320 tonic::Status::new(
9321 tonic::Code::Unknown,
9322 format!("Service was not ready: {}", e.into()),
9323 )
9324 })?;
9325 let codec = tonic::codec::ProstCodec::default();
9326 let path = http::uri::PathAndQuery::from_static(
9327 "/aruna.api.storage.services.v2.RulesService/UpdateRule",
9328 );
9329 let mut req = request.into_request();
9330 req.extensions_mut()
9331 .insert(
9332 GrpcMethod::new(
9333 "aruna.api.storage.services.v2.RulesService",
9334 "UpdateRule",
9335 ),
9336 );
9337 self.inner.unary(req, path, codec).await
9338 }
9339 pub async fn delete_rule(
9345 &mut self,
9346 request: impl tonic::IntoRequest<super::DeleteRuleRequest>,
9347 ) -> std::result::Result<
9348 tonic::Response<super::DeleteRuleResponse>,
9349 tonic::Status,
9350 > {
9351 self.inner
9352 .ready()
9353 .await
9354 .map_err(|e| {
9355 tonic::Status::new(
9356 tonic::Code::Unknown,
9357 format!("Service was not ready: {}", e.into()),
9358 )
9359 })?;
9360 let codec = tonic::codec::ProstCodec::default();
9361 let path = http::uri::PathAndQuery::from_static(
9362 "/aruna.api.storage.services.v2.RulesService/DeleteRule",
9363 );
9364 let mut req = request.into_request();
9365 req.extensions_mut()
9366 .insert(
9367 GrpcMethod::new(
9368 "aruna.api.storage.services.v2.RulesService",
9369 "DeleteRule",
9370 ),
9371 );
9372 self.inner.unary(req, path, codec).await
9373 }
9374 pub async fn create_rule_binding(
9380 &mut self,
9381 request: impl tonic::IntoRequest<super::CreateRuleBindingRequest>,
9382 ) -> std::result::Result<
9383 tonic::Response<super::CreateRuleBindingResponse>,
9384 tonic::Status,
9385 > {
9386 self.inner
9387 .ready()
9388 .await
9389 .map_err(|e| {
9390 tonic::Status::new(
9391 tonic::Code::Unknown,
9392 format!("Service was not ready: {}", e.into()),
9393 )
9394 })?;
9395 let codec = tonic::codec::ProstCodec::default();
9396 let path = http::uri::PathAndQuery::from_static(
9397 "/aruna.api.storage.services.v2.RulesService/CreateRuleBinding",
9398 );
9399 let mut req = request.into_request();
9400 req.extensions_mut()
9401 .insert(
9402 GrpcMethod::new(
9403 "aruna.api.storage.services.v2.RulesService",
9404 "CreateRuleBinding",
9405 ),
9406 );
9407 self.inner.unary(req, path, codec).await
9408 }
9409 pub async fn delete_rule_binding(
9415 &mut self,
9416 request: impl tonic::IntoRequest<super::DeleteRuleBindingRequest>,
9417 ) -> std::result::Result<
9418 tonic::Response<super::DeleteRuleBindingResponse>,
9419 tonic::Status,
9420 > {
9421 self.inner
9422 .ready()
9423 .await
9424 .map_err(|e| {
9425 tonic::Status::new(
9426 tonic::Code::Unknown,
9427 format!("Service was not ready: {}", e.into()),
9428 )
9429 })?;
9430 let codec = tonic::codec::ProstCodec::default();
9431 let path = http::uri::PathAndQuery::from_static(
9432 "/aruna.api.storage.services.v2.RulesService/DeleteRuleBinding",
9433 );
9434 let mut req = request.into_request();
9435 req.extensions_mut()
9436 .insert(
9437 GrpcMethod::new(
9438 "aruna.api.storage.services.v2.RulesService",
9439 "DeleteRuleBinding",
9440 ),
9441 );
9442 self.inner.unary(req, path, codec).await
9443 }
9444 }
9445}
9446pub mod rules_service_server {
9448 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
9449 use tonic::codegen::*;
9450 #[async_trait]
9452 pub trait RulesService: Send + Sync + 'static {
9453 async fn create_rule(
9459 &self,
9460 request: tonic::Request<super::CreateRuleRequest>,
9461 ) -> std::result::Result<
9462 tonic::Response<super::CreateRuleResponse>,
9463 tonic::Status,
9464 >;
9465 async fn get_rule(
9471 &self,
9472 request: tonic::Request<super::GetRuleRequest>,
9473 ) -> std::result::Result<tonic::Response<super::GetRuleResponse>, tonic::Status>;
9474 async fn list_rule(
9480 &self,
9481 request: tonic::Request<super::ListRuleRequest>,
9482 ) -> std::result::Result<
9483 tonic::Response<super::ListRuleResponse>,
9484 tonic::Status,
9485 >;
9486 async fn update_rule(
9492 &self,
9493 request: tonic::Request<super::UpdateRuleRequest>,
9494 ) -> std::result::Result<
9495 tonic::Response<super::UpdateRuleResponse>,
9496 tonic::Status,
9497 >;
9498 async fn delete_rule(
9504 &self,
9505 request: tonic::Request<super::DeleteRuleRequest>,
9506 ) -> std::result::Result<
9507 tonic::Response<super::DeleteRuleResponse>,
9508 tonic::Status,
9509 >;
9510 async fn create_rule_binding(
9516 &self,
9517 request: tonic::Request<super::CreateRuleBindingRequest>,
9518 ) -> std::result::Result<
9519 tonic::Response<super::CreateRuleBindingResponse>,
9520 tonic::Status,
9521 >;
9522 async fn delete_rule_binding(
9528 &self,
9529 request: tonic::Request<super::DeleteRuleBindingRequest>,
9530 ) -> std::result::Result<
9531 tonic::Response<super::DeleteRuleBindingResponse>,
9532 tonic::Status,
9533 >;
9534 }
9535 #[derive(Debug)]
9541 pub struct RulesServiceServer<T: RulesService> {
9542 inner: _Inner<T>,
9543 accept_compression_encodings: EnabledCompressionEncodings,
9544 send_compression_encodings: EnabledCompressionEncodings,
9545 max_decoding_message_size: Option<usize>,
9546 max_encoding_message_size: Option<usize>,
9547 }
9548 struct _Inner<T>(Arc<T>);
9549 impl<T: RulesService> RulesServiceServer<T> {
9550 pub fn new(inner: T) -> Self {
9551 Self::from_arc(Arc::new(inner))
9552 }
9553 pub fn from_arc(inner: Arc<T>) -> Self {
9554 let inner = _Inner(inner);
9555 Self {
9556 inner,
9557 accept_compression_encodings: Default::default(),
9558 send_compression_encodings: Default::default(),
9559 max_decoding_message_size: None,
9560 max_encoding_message_size: None,
9561 }
9562 }
9563 pub fn with_interceptor<F>(
9564 inner: T,
9565 interceptor: F,
9566 ) -> InterceptedService<Self, F>
9567 where
9568 F: tonic::service::Interceptor,
9569 {
9570 InterceptedService::new(Self::new(inner), interceptor)
9571 }
9572 #[must_use]
9574 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
9575 self.accept_compression_encodings.enable(encoding);
9576 self
9577 }
9578 #[must_use]
9580 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
9581 self.send_compression_encodings.enable(encoding);
9582 self
9583 }
9584 #[must_use]
9588 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
9589 self.max_decoding_message_size = Some(limit);
9590 self
9591 }
9592 #[must_use]
9596 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
9597 self.max_encoding_message_size = Some(limit);
9598 self
9599 }
9600 }
9601 impl<T, B> tonic::codegen::Service<http::Request<B>> for RulesServiceServer<T>
9602 where
9603 T: RulesService,
9604 B: Body + Send + 'static,
9605 B::Error: Into<StdError> + Send + 'static,
9606 {
9607 type Response = http::Response<tonic::body::BoxBody>;
9608 type Error = std::convert::Infallible;
9609 type Future = BoxFuture<Self::Response, Self::Error>;
9610 fn poll_ready(
9611 &mut self,
9612 _cx: &mut Context<'_>,
9613 ) -> Poll<std::result::Result<(), Self::Error>> {
9614 Poll::Ready(Ok(()))
9615 }
9616 fn call(&mut self, req: http::Request<B>) -> Self::Future {
9617 let inner = self.inner.clone();
9618 match req.uri().path() {
9619 "/aruna.api.storage.services.v2.RulesService/CreateRule" => {
9620 #[allow(non_camel_case_types)]
9621 struct CreateRuleSvc<T: RulesService>(pub Arc<T>);
9622 impl<
9623 T: RulesService,
9624 > tonic::server::UnaryService<super::CreateRuleRequest>
9625 for CreateRuleSvc<T> {
9626 type Response = super::CreateRuleResponse;
9627 type Future = BoxFuture<
9628 tonic::Response<Self::Response>,
9629 tonic::Status,
9630 >;
9631 fn call(
9632 &mut self,
9633 request: tonic::Request<super::CreateRuleRequest>,
9634 ) -> Self::Future {
9635 let inner = Arc::clone(&self.0);
9636 let fut = async move {
9637 <T as RulesService>::create_rule(&inner, request).await
9638 };
9639 Box::pin(fut)
9640 }
9641 }
9642 let accept_compression_encodings = self.accept_compression_encodings;
9643 let send_compression_encodings = self.send_compression_encodings;
9644 let max_decoding_message_size = self.max_decoding_message_size;
9645 let max_encoding_message_size = self.max_encoding_message_size;
9646 let inner = self.inner.clone();
9647 let fut = async move {
9648 let inner = inner.0;
9649 let method = CreateRuleSvc(inner);
9650 let codec = tonic::codec::ProstCodec::default();
9651 let mut grpc = tonic::server::Grpc::new(codec)
9652 .apply_compression_config(
9653 accept_compression_encodings,
9654 send_compression_encodings,
9655 )
9656 .apply_max_message_size_config(
9657 max_decoding_message_size,
9658 max_encoding_message_size,
9659 );
9660 let res = grpc.unary(method, req).await;
9661 Ok(res)
9662 };
9663 Box::pin(fut)
9664 }
9665 "/aruna.api.storage.services.v2.RulesService/GetRule" => {
9666 #[allow(non_camel_case_types)]
9667 struct GetRuleSvc<T: RulesService>(pub Arc<T>);
9668 impl<
9669 T: RulesService,
9670 > tonic::server::UnaryService<super::GetRuleRequest>
9671 for GetRuleSvc<T> {
9672 type Response = super::GetRuleResponse;
9673 type Future = BoxFuture<
9674 tonic::Response<Self::Response>,
9675 tonic::Status,
9676 >;
9677 fn call(
9678 &mut self,
9679 request: tonic::Request<super::GetRuleRequest>,
9680 ) -> Self::Future {
9681 let inner = Arc::clone(&self.0);
9682 let fut = async move {
9683 <T as RulesService>::get_rule(&inner, request).await
9684 };
9685 Box::pin(fut)
9686 }
9687 }
9688 let accept_compression_encodings = self.accept_compression_encodings;
9689 let send_compression_encodings = self.send_compression_encodings;
9690 let max_decoding_message_size = self.max_decoding_message_size;
9691 let max_encoding_message_size = self.max_encoding_message_size;
9692 let inner = self.inner.clone();
9693 let fut = async move {
9694 let inner = inner.0;
9695 let method = GetRuleSvc(inner);
9696 let codec = tonic::codec::ProstCodec::default();
9697 let mut grpc = tonic::server::Grpc::new(codec)
9698 .apply_compression_config(
9699 accept_compression_encodings,
9700 send_compression_encodings,
9701 )
9702 .apply_max_message_size_config(
9703 max_decoding_message_size,
9704 max_encoding_message_size,
9705 );
9706 let res = grpc.unary(method, req).await;
9707 Ok(res)
9708 };
9709 Box::pin(fut)
9710 }
9711 "/aruna.api.storage.services.v2.RulesService/ListRule" => {
9712 #[allow(non_camel_case_types)]
9713 struct ListRuleSvc<T: RulesService>(pub Arc<T>);
9714 impl<
9715 T: RulesService,
9716 > tonic::server::UnaryService<super::ListRuleRequest>
9717 for ListRuleSvc<T> {
9718 type Response = super::ListRuleResponse;
9719 type Future = BoxFuture<
9720 tonic::Response<Self::Response>,
9721 tonic::Status,
9722 >;
9723 fn call(
9724 &mut self,
9725 request: tonic::Request<super::ListRuleRequest>,
9726 ) -> Self::Future {
9727 let inner = Arc::clone(&self.0);
9728 let fut = async move {
9729 <T as RulesService>::list_rule(&inner, request).await
9730 };
9731 Box::pin(fut)
9732 }
9733 }
9734 let accept_compression_encodings = self.accept_compression_encodings;
9735 let send_compression_encodings = self.send_compression_encodings;
9736 let max_decoding_message_size = self.max_decoding_message_size;
9737 let max_encoding_message_size = self.max_encoding_message_size;
9738 let inner = self.inner.clone();
9739 let fut = async move {
9740 let inner = inner.0;
9741 let method = ListRuleSvc(inner);
9742 let codec = tonic::codec::ProstCodec::default();
9743 let mut grpc = tonic::server::Grpc::new(codec)
9744 .apply_compression_config(
9745 accept_compression_encodings,
9746 send_compression_encodings,
9747 )
9748 .apply_max_message_size_config(
9749 max_decoding_message_size,
9750 max_encoding_message_size,
9751 );
9752 let res = grpc.unary(method, req).await;
9753 Ok(res)
9754 };
9755 Box::pin(fut)
9756 }
9757 "/aruna.api.storage.services.v2.RulesService/UpdateRule" => {
9758 #[allow(non_camel_case_types)]
9759 struct UpdateRuleSvc<T: RulesService>(pub Arc<T>);
9760 impl<
9761 T: RulesService,
9762 > tonic::server::UnaryService<super::UpdateRuleRequest>
9763 for UpdateRuleSvc<T> {
9764 type Response = super::UpdateRuleResponse;
9765 type Future = BoxFuture<
9766 tonic::Response<Self::Response>,
9767 tonic::Status,
9768 >;
9769 fn call(
9770 &mut self,
9771 request: tonic::Request<super::UpdateRuleRequest>,
9772 ) -> Self::Future {
9773 let inner = Arc::clone(&self.0);
9774 let fut = async move {
9775 <T as RulesService>::update_rule(&inner, request).await
9776 };
9777 Box::pin(fut)
9778 }
9779 }
9780 let accept_compression_encodings = self.accept_compression_encodings;
9781 let send_compression_encodings = self.send_compression_encodings;
9782 let max_decoding_message_size = self.max_decoding_message_size;
9783 let max_encoding_message_size = self.max_encoding_message_size;
9784 let inner = self.inner.clone();
9785 let fut = async move {
9786 let inner = inner.0;
9787 let method = UpdateRuleSvc(inner);
9788 let codec = tonic::codec::ProstCodec::default();
9789 let mut grpc = tonic::server::Grpc::new(codec)
9790 .apply_compression_config(
9791 accept_compression_encodings,
9792 send_compression_encodings,
9793 )
9794 .apply_max_message_size_config(
9795 max_decoding_message_size,
9796 max_encoding_message_size,
9797 );
9798 let res = grpc.unary(method, req).await;
9799 Ok(res)
9800 };
9801 Box::pin(fut)
9802 }
9803 "/aruna.api.storage.services.v2.RulesService/DeleteRule" => {
9804 #[allow(non_camel_case_types)]
9805 struct DeleteRuleSvc<T: RulesService>(pub Arc<T>);
9806 impl<
9807 T: RulesService,
9808 > tonic::server::UnaryService<super::DeleteRuleRequest>
9809 for DeleteRuleSvc<T> {
9810 type Response = super::DeleteRuleResponse;
9811 type Future = BoxFuture<
9812 tonic::Response<Self::Response>,
9813 tonic::Status,
9814 >;
9815 fn call(
9816 &mut self,
9817 request: tonic::Request<super::DeleteRuleRequest>,
9818 ) -> Self::Future {
9819 let inner = Arc::clone(&self.0);
9820 let fut = async move {
9821 <T as RulesService>::delete_rule(&inner, request).await
9822 };
9823 Box::pin(fut)
9824 }
9825 }
9826 let accept_compression_encodings = self.accept_compression_encodings;
9827 let send_compression_encodings = self.send_compression_encodings;
9828 let max_decoding_message_size = self.max_decoding_message_size;
9829 let max_encoding_message_size = self.max_encoding_message_size;
9830 let inner = self.inner.clone();
9831 let fut = async move {
9832 let inner = inner.0;
9833 let method = DeleteRuleSvc(inner);
9834 let codec = tonic::codec::ProstCodec::default();
9835 let mut grpc = tonic::server::Grpc::new(codec)
9836 .apply_compression_config(
9837 accept_compression_encodings,
9838 send_compression_encodings,
9839 )
9840 .apply_max_message_size_config(
9841 max_decoding_message_size,
9842 max_encoding_message_size,
9843 );
9844 let res = grpc.unary(method, req).await;
9845 Ok(res)
9846 };
9847 Box::pin(fut)
9848 }
9849 "/aruna.api.storage.services.v2.RulesService/CreateRuleBinding" => {
9850 #[allow(non_camel_case_types)]
9851 struct CreateRuleBindingSvc<T: RulesService>(pub Arc<T>);
9852 impl<
9853 T: RulesService,
9854 > tonic::server::UnaryService<super::CreateRuleBindingRequest>
9855 for CreateRuleBindingSvc<T> {
9856 type Response = super::CreateRuleBindingResponse;
9857 type Future = BoxFuture<
9858 tonic::Response<Self::Response>,
9859 tonic::Status,
9860 >;
9861 fn call(
9862 &mut self,
9863 request: tonic::Request<super::CreateRuleBindingRequest>,
9864 ) -> Self::Future {
9865 let inner = Arc::clone(&self.0);
9866 let fut = async move {
9867 <T as RulesService>::create_rule_binding(&inner, request)
9868 .await
9869 };
9870 Box::pin(fut)
9871 }
9872 }
9873 let accept_compression_encodings = self.accept_compression_encodings;
9874 let send_compression_encodings = self.send_compression_encodings;
9875 let max_decoding_message_size = self.max_decoding_message_size;
9876 let max_encoding_message_size = self.max_encoding_message_size;
9877 let inner = self.inner.clone();
9878 let fut = async move {
9879 let inner = inner.0;
9880 let method = CreateRuleBindingSvc(inner);
9881 let codec = tonic::codec::ProstCodec::default();
9882 let mut grpc = tonic::server::Grpc::new(codec)
9883 .apply_compression_config(
9884 accept_compression_encodings,
9885 send_compression_encodings,
9886 )
9887 .apply_max_message_size_config(
9888 max_decoding_message_size,
9889 max_encoding_message_size,
9890 );
9891 let res = grpc.unary(method, req).await;
9892 Ok(res)
9893 };
9894 Box::pin(fut)
9895 }
9896 "/aruna.api.storage.services.v2.RulesService/DeleteRuleBinding" => {
9897 #[allow(non_camel_case_types)]
9898 struct DeleteRuleBindingSvc<T: RulesService>(pub Arc<T>);
9899 impl<
9900 T: RulesService,
9901 > tonic::server::UnaryService<super::DeleteRuleBindingRequest>
9902 for DeleteRuleBindingSvc<T> {
9903 type Response = super::DeleteRuleBindingResponse;
9904 type Future = BoxFuture<
9905 tonic::Response<Self::Response>,
9906 tonic::Status,
9907 >;
9908 fn call(
9909 &mut self,
9910 request: tonic::Request<super::DeleteRuleBindingRequest>,
9911 ) -> Self::Future {
9912 let inner = Arc::clone(&self.0);
9913 let fut = async move {
9914 <T as RulesService>::delete_rule_binding(&inner, request)
9915 .await
9916 };
9917 Box::pin(fut)
9918 }
9919 }
9920 let accept_compression_encodings = self.accept_compression_encodings;
9921 let send_compression_encodings = self.send_compression_encodings;
9922 let max_decoding_message_size = self.max_decoding_message_size;
9923 let max_encoding_message_size = self.max_encoding_message_size;
9924 let inner = self.inner.clone();
9925 let fut = async move {
9926 let inner = inner.0;
9927 let method = DeleteRuleBindingSvc(inner);
9928 let codec = tonic::codec::ProstCodec::default();
9929 let mut grpc = tonic::server::Grpc::new(codec)
9930 .apply_compression_config(
9931 accept_compression_encodings,
9932 send_compression_encodings,
9933 )
9934 .apply_max_message_size_config(
9935 max_decoding_message_size,
9936 max_encoding_message_size,
9937 );
9938 let res = grpc.unary(method, req).await;
9939 Ok(res)
9940 };
9941 Box::pin(fut)
9942 }
9943 _ => {
9944 Box::pin(async move {
9945 Ok(
9946 http::Response::builder()
9947 .status(200)
9948 .header("grpc-status", "12")
9949 .header("content-type", "application/grpc")
9950 .body(empty_body())
9951 .unwrap(),
9952 )
9953 })
9954 }
9955 }
9956 }
9957 }
9958 impl<T: RulesService> Clone for RulesServiceServer<T> {
9959 fn clone(&self) -> Self {
9960 let inner = self.inner.clone();
9961 Self {
9962 inner,
9963 accept_compression_encodings: self.accept_compression_encodings,
9964 send_compression_encodings: self.send_compression_encodings,
9965 max_decoding_message_size: self.max_decoding_message_size,
9966 max_encoding_message_size: self.max_encoding_message_size,
9967 }
9968 }
9969 }
9970 impl<T: RulesService> Clone for _Inner<T> {
9971 fn clone(&self) -> Self {
9972 Self(Arc::clone(&self.0))
9973 }
9974 }
9975 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
9976 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
9977 write!(f, "{:?}", self.0)
9978 }
9979 }
9980 impl<T: RulesService> tonic::server::NamedService for RulesServiceServer<T> {
9981 const NAME: &'static str = "aruna.api.storage.services.v2.RulesService";
9982 }
9983}
9984#[derive(serde::Deserialize, serde::Serialize)]
9985#[allow(clippy::derive_partial_eq_without_eq)]
9986#[derive(Clone, PartialEq, ::prost::Message)]
9987pub struct CreateWorkspaceTemplateRequest {
9988 #[prost(string, tag = "1")]
9990 pub owner_id: ::prost::alloc::string::String,
9991 #[prost(string, tag = "2")]
9993 pub prefix: ::prost::alloc::string::String,
9994 #[prost(string, tag = "3")]
9996 pub name: ::prost::alloc::string::String,
9997 #[prost(string, repeated, tag = "5")]
9999 pub hook_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
10000 #[prost(string, tag = "6")]
10002 pub description: ::prost::alloc::string::String,
10003 #[prost(string, repeated, tag = "7")]
10005 pub endpoint_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
10006 #[prost(string, repeated, tag = "8")]
10008 pub rules: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
10009}
10010#[derive(serde::Deserialize, serde::Serialize)]
10011#[allow(clippy::derive_partial_eq_without_eq)]
10012#[derive(Clone, PartialEq, ::prost::Message)]
10013pub struct CreateWorkspaceTemplateResponse {
10014 #[prost(string, tag = "1")]
10015 pub template_id: ::prost::alloc::string::String,
10016}
10017#[derive(serde::Deserialize, serde::Serialize)]
10018#[allow(clippy::derive_partial_eq_without_eq)]
10019#[derive(Clone, PartialEq, ::prost::Message)]
10020pub struct GetWorkspaceTemplateRequest {
10021 #[prost(string, tag = "1")]
10022 pub template_id: ::prost::alloc::string::String,
10023}
10024#[derive(serde::Deserialize, serde::Serialize)]
10025#[allow(clippy::derive_partial_eq_without_eq)]
10026#[derive(Clone, PartialEq, ::prost::Message)]
10027pub struct GetWorkspaceTemplateResponse {
10028 #[prost(message, optional, tag = "1")]
10029 pub workspace: ::core::option::Option<WorkspaceInfo>,
10030}
10031#[derive(serde::Deserialize, serde::Serialize)]
10032#[allow(clippy::derive_partial_eq_without_eq)]
10033#[derive(Clone, PartialEq, ::prost::Message)]
10034pub struct DeleteWorkspaceTemplateRequest {
10035 #[prost(string, tag = "1")]
10036 pub template_id: ::prost::alloc::string::String,
10037}
10038#[derive(serde::Deserialize, serde::Serialize)]
10039#[allow(clippy::derive_partial_eq_without_eq)]
10040#[derive(Clone, PartialEq, ::prost::Message)]
10041pub struct DeleteWorkspaceTemplateResponse {}
10042#[derive(serde::Deserialize, serde::Serialize)]
10043#[allow(clippy::derive_partial_eq_without_eq)]
10044#[derive(Clone, PartialEq, ::prost::Message)]
10045pub struct ListOwnedWorkspaceTemplatesRequest {}
10046#[derive(serde::Deserialize, serde::Serialize)]
10047#[allow(clippy::derive_partial_eq_without_eq)]
10048#[derive(Clone, PartialEq, ::prost::Message)]
10049pub struct ListOwnedWorkspaceTemplatesResponse {
10050 #[prost(message, repeated, tag = "1")]
10051 pub workspaces: ::prost::alloc::vec::Vec<WorkspaceInfo>,
10052}
10053#[derive(serde::Deserialize, serde::Serialize)]
10054#[allow(clippy::derive_partial_eq_without_eq)]
10055#[derive(Clone, PartialEq, ::prost::Message)]
10056pub struct WorkspaceInfo {
10057 #[prost(string, tag = "1")]
10058 pub workspace_id: ::prost::alloc::string::String,
10059 #[prost(string, tag = "2")]
10060 pub name: ::prost::alloc::string::String,
10061 #[prost(string, tag = "3")]
10062 pub description: ::prost::alloc::string::String,
10063 #[prost(string, tag = "4")]
10064 pub owner: ::prost::alloc::string::String,
10065 #[prost(string, tag = "5")]
10066 pub prefix: ::prost::alloc::string::String,
10067 #[prost(string, tag = "6")]
10068 pub hook_ids: ::prost::alloc::string::String,
10069 #[prost(string, tag = "7")]
10070 pub endpoint_ids: ::prost::alloc::string::String,
10071}
10072#[derive(serde::Deserialize, serde::Serialize)]
10073#[allow(clippy::derive_partial_eq_without_eq)]
10074#[derive(Clone, PartialEq, ::prost::Message)]
10075pub struct CreateWorkspaceRequest {
10076 #[prost(string, tag = "1")]
10078 pub workspace_template: ::prost::alloc::string::String,
10079 #[prost(string, tag = "2")]
10081 pub description: ::prost::alloc::string::String,
10082}
10083#[derive(serde::Deserialize, serde::Serialize)]
10084#[allow(clippy::derive_partial_eq_without_eq)]
10085#[derive(Clone, PartialEq, ::prost::Message)]
10086pub struct CreateWorkspaceResponse {
10087 #[prost(string, tag = "1")]
10088 pub workspace_id: ::prost::alloc::string::String,
10089 #[prost(string, tag = "2")]
10090 pub token: ::prost::alloc::string::String,
10091 #[prost(string, tag = "3")]
10092 pub access_key: ::prost::alloc::string::String,
10093 #[prost(string, tag = "4")]
10094 pub secret_key: ::prost::alloc::string::String,
10095}
10096#[derive(serde::Deserialize, serde::Serialize)]
10097#[allow(clippy::derive_partial_eq_without_eq)]
10098#[derive(Clone, PartialEq, ::prost::Message)]
10099pub struct DeleteWorkspaceRequest {
10100 #[prost(string, tag = "1")]
10101 pub workspace_id: ::prost::alloc::string::String,
10102}
10103#[derive(serde::Deserialize, serde::Serialize)]
10104#[allow(clippy::derive_partial_eq_without_eq)]
10105#[derive(Clone, PartialEq, ::prost::Message)]
10106pub struct DeleteWorkspaceResponse {}
10107#[derive(serde::Deserialize, serde::Serialize)]
10108#[allow(clippy::derive_partial_eq_without_eq)]
10109#[derive(Clone, PartialEq, ::prost::Message)]
10110pub struct ClaimWorkspaceRequest {
10111 #[prost(string, tag = "1")]
10115 pub workspace_id: ::prost::alloc::string::String,
10116 #[prost(string, tag = "2")]
10117 pub token: ::prost::alloc::string::String,
10118}
10119#[derive(serde::Deserialize, serde::Serialize)]
10120#[allow(clippy::derive_partial_eq_without_eq)]
10121#[derive(Clone, PartialEq, ::prost::Message)]
10122pub struct ClaimWorkspaceResponse {}
10123pub mod workspace_service_client {
10125 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
10126 use tonic::codegen::*;
10127 use tonic::codegen::http::Uri;
10128 #[derive(Debug, Clone)]
10134 pub struct WorkspaceServiceClient<T> {
10135 inner: tonic::client::Grpc<T>,
10136 }
10137 impl WorkspaceServiceClient<tonic::transport::Channel> {
10138 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
10140 where
10141 D: TryInto<tonic::transport::Endpoint>,
10142 D::Error: Into<StdError>,
10143 {
10144 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
10145 Ok(Self::new(conn))
10146 }
10147 }
10148 impl<T> WorkspaceServiceClient<T>
10149 where
10150 T: tonic::client::GrpcService<tonic::body::BoxBody>,
10151 T::Error: Into<StdError>,
10152 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
10153 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
10154 {
10155 pub fn new(inner: T) -> Self {
10156 let inner = tonic::client::Grpc::new(inner);
10157 Self { inner }
10158 }
10159 pub fn with_origin(inner: T, origin: Uri) -> Self {
10160 let inner = tonic::client::Grpc::with_origin(inner, origin);
10161 Self { inner }
10162 }
10163 pub fn with_interceptor<F>(
10164 inner: T,
10165 interceptor: F,
10166 ) -> WorkspaceServiceClient<InterceptedService<T, F>>
10167 where
10168 F: tonic::service::Interceptor,
10169 T::ResponseBody: Default,
10170 T: tonic::codegen::Service<
10171 http::Request<tonic::body::BoxBody>,
10172 Response = http::Response<
10173 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
10174 >,
10175 >,
10176 <T as tonic::codegen::Service<
10177 http::Request<tonic::body::BoxBody>,
10178 >>::Error: Into<StdError> + Send + Sync,
10179 {
10180 WorkspaceServiceClient::new(InterceptedService::new(inner, interceptor))
10181 }
10182 #[must_use]
10187 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
10188 self.inner = self.inner.send_compressed(encoding);
10189 self
10190 }
10191 #[must_use]
10193 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
10194 self.inner = self.inner.accept_compressed(encoding);
10195 self
10196 }
10197 #[must_use]
10201 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
10202 self.inner = self.inner.max_decoding_message_size(limit);
10203 self
10204 }
10205 #[must_use]
10209 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
10210 self.inner = self.inner.max_encoding_message_size(limit);
10211 self
10212 }
10213 pub async fn create_workspace_template(
10219 &mut self,
10220 request: impl tonic::IntoRequest<super::CreateWorkspaceTemplateRequest>,
10221 ) -> std::result::Result<
10222 tonic::Response<super::CreateWorkspaceTemplateResponse>,
10223 tonic::Status,
10224 > {
10225 self.inner
10226 .ready()
10227 .await
10228 .map_err(|e| {
10229 tonic::Status::new(
10230 tonic::Code::Unknown,
10231 format!("Service was not ready: {}", e.into()),
10232 )
10233 })?;
10234 let codec = tonic::codec::ProstCodec::default();
10235 let path = http::uri::PathAndQuery::from_static(
10236 "/aruna.api.storage.services.v2.WorkspaceService/CreateWorkspaceTemplate",
10237 );
10238 let mut req = request.into_request();
10239 req.extensions_mut()
10240 .insert(
10241 GrpcMethod::new(
10242 "aruna.api.storage.services.v2.WorkspaceService",
10243 "CreateWorkspaceTemplate",
10244 ),
10245 );
10246 self.inner.unary(req, path, codec).await
10247 }
10248 pub async fn get_workspace_template(
10254 &mut self,
10255 request: impl tonic::IntoRequest<super::GetWorkspaceTemplateRequest>,
10256 ) -> std::result::Result<
10257 tonic::Response<super::GetWorkspaceTemplateResponse>,
10258 tonic::Status,
10259 > {
10260 self.inner
10261 .ready()
10262 .await
10263 .map_err(|e| {
10264 tonic::Status::new(
10265 tonic::Code::Unknown,
10266 format!("Service was not ready: {}", e.into()),
10267 )
10268 })?;
10269 let codec = tonic::codec::ProstCodec::default();
10270 let path = http::uri::PathAndQuery::from_static(
10271 "/aruna.api.storage.services.v2.WorkspaceService/GetWorkspaceTemplate",
10272 );
10273 let mut req = request.into_request();
10274 req.extensions_mut()
10275 .insert(
10276 GrpcMethod::new(
10277 "aruna.api.storage.services.v2.WorkspaceService",
10278 "GetWorkspaceTemplate",
10279 ),
10280 );
10281 self.inner.unary(req, path, codec).await
10282 }
10283 pub async fn list_owned_workspace_templates(
10289 &mut self,
10290 request: impl tonic::IntoRequest<super::ListOwnedWorkspaceTemplatesRequest>,
10291 ) -> std::result::Result<
10292 tonic::Response<super::ListOwnedWorkspaceTemplatesResponse>,
10293 tonic::Status,
10294 > {
10295 self.inner
10296 .ready()
10297 .await
10298 .map_err(|e| {
10299 tonic::Status::new(
10300 tonic::Code::Unknown,
10301 format!("Service was not ready: {}", e.into()),
10302 )
10303 })?;
10304 let codec = tonic::codec::ProstCodec::default();
10305 let path = http::uri::PathAndQuery::from_static(
10306 "/aruna.api.storage.services.v2.WorkspaceService/ListOwnedWorkspaceTemplates",
10307 );
10308 let mut req = request.into_request();
10309 req.extensions_mut()
10310 .insert(
10311 GrpcMethod::new(
10312 "aruna.api.storage.services.v2.WorkspaceService",
10313 "ListOwnedWorkspaceTemplates",
10314 ),
10315 );
10316 self.inner.unary(req, path, codec).await
10317 }
10318 pub async fn delete_workspace_template(
10324 &mut self,
10325 request: impl tonic::IntoRequest<super::DeleteWorkspaceTemplateRequest>,
10326 ) -> std::result::Result<
10327 tonic::Response<super::DeleteWorkspaceTemplateResponse>,
10328 tonic::Status,
10329 > {
10330 self.inner
10331 .ready()
10332 .await
10333 .map_err(|e| {
10334 tonic::Status::new(
10335 tonic::Code::Unknown,
10336 format!("Service was not ready: {}", e.into()),
10337 )
10338 })?;
10339 let codec = tonic::codec::ProstCodec::default();
10340 let path = http::uri::PathAndQuery::from_static(
10341 "/aruna.api.storage.services.v2.WorkspaceService/DeleteWorkspaceTemplate",
10342 );
10343 let mut req = request.into_request();
10344 req.extensions_mut()
10345 .insert(
10346 GrpcMethod::new(
10347 "aruna.api.storage.services.v2.WorkspaceService",
10348 "DeleteWorkspaceTemplate",
10349 ),
10350 );
10351 self.inner.unary(req, path, codec).await
10352 }
10353 pub async fn create_workspace(
10359 &mut self,
10360 request: impl tonic::IntoRequest<super::CreateWorkspaceRequest>,
10361 ) -> std::result::Result<
10362 tonic::Response<super::CreateWorkspaceResponse>,
10363 tonic::Status,
10364 > {
10365 self.inner
10366 .ready()
10367 .await
10368 .map_err(|e| {
10369 tonic::Status::new(
10370 tonic::Code::Unknown,
10371 format!("Service was not ready: {}", e.into()),
10372 )
10373 })?;
10374 let codec = tonic::codec::ProstCodec::default();
10375 let path = http::uri::PathAndQuery::from_static(
10376 "/aruna.api.storage.services.v2.WorkspaceService/CreateWorkspace",
10377 );
10378 let mut req = request.into_request();
10379 req.extensions_mut()
10380 .insert(
10381 GrpcMethod::new(
10382 "aruna.api.storage.services.v2.WorkspaceService",
10383 "CreateWorkspace",
10384 ),
10385 );
10386 self.inner.unary(req, path, codec).await
10387 }
10388 pub async fn delete_workspace(
10394 &mut self,
10395 request: impl tonic::IntoRequest<super::DeleteWorkspaceRequest>,
10396 ) -> std::result::Result<
10397 tonic::Response<super::DeleteWorkspaceResponse>,
10398 tonic::Status,
10399 > {
10400 self.inner
10401 .ready()
10402 .await
10403 .map_err(|e| {
10404 tonic::Status::new(
10405 tonic::Code::Unknown,
10406 format!("Service was not ready: {}", e.into()),
10407 )
10408 })?;
10409 let codec = tonic::codec::ProstCodec::default();
10410 let path = http::uri::PathAndQuery::from_static(
10411 "/aruna.api.storage.services.v2.WorkspaceService/DeleteWorkspace",
10412 );
10413 let mut req = request.into_request();
10414 req.extensions_mut()
10415 .insert(
10416 GrpcMethod::new(
10417 "aruna.api.storage.services.v2.WorkspaceService",
10418 "DeleteWorkspace",
10419 ),
10420 );
10421 self.inner.unary(req, path, codec).await
10422 }
10423 pub async fn claim_workspace(
10429 &mut self,
10430 request: impl tonic::IntoRequest<super::ClaimWorkspaceRequest>,
10431 ) -> std::result::Result<
10432 tonic::Response<super::ClaimWorkspaceResponse>,
10433 tonic::Status,
10434 > {
10435 self.inner
10436 .ready()
10437 .await
10438 .map_err(|e| {
10439 tonic::Status::new(
10440 tonic::Code::Unknown,
10441 format!("Service was not ready: {}", e.into()),
10442 )
10443 })?;
10444 let codec = tonic::codec::ProstCodec::default();
10445 let path = http::uri::PathAndQuery::from_static(
10446 "/aruna.api.storage.services.v2.WorkspaceService/ClaimWorkspace",
10447 );
10448 let mut req = request.into_request();
10449 req.extensions_mut()
10450 .insert(
10451 GrpcMethod::new(
10452 "aruna.api.storage.services.v2.WorkspaceService",
10453 "ClaimWorkspace",
10454 ),
10455 );
10456 self.inner.unary(req, path, codec).await
10457 }
10458 }
10459}
10460pub mod workspace_service_server {
10462 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
10463 use tonic::codegen::*;
10464 #[async_trait]
10466 pub trait WorkspaceService: Send + Sync + 'static {
10467 async fn create_workspace_template(
10473 &self,
10474 request: tonic::Request<super::CreateWorkspaceTemplateRequest>,
10475 ) -> std::result::Result<
10476 tonic::Response<super::CreateWorkspaceTemplateResponse>,
10477 tonic::Status,
10478 >;
10479 async fn get_workspace_template(
10485 &self,
10486 request: tonic::Request<super::GetWorkspaceTemplateRequest>,
10487 ) -> std::result::Result<
10488 tonic::Response<super::GetWorkspaceTemplateResponse>,
10489 tonic::Status,
10490 >;
10491 async fn list_owned_workspace_templates(
10497 &self,
10498 request: tonic::Request<super::ListOwnedWorkspaceTemplatesRequest>,
10499 ) -> std::result::Result<
10500 tonic::Response<super::ListOwnedWorkspaceTemplatesResponse>,
10501 tonic::Status,
10502 >;
10503 async fn delete_workspace_template(
10509 &self,
10510 request: tonic::Request<super::DeleteWorkspaceTemplateRequest>,
10511 ) -> std::result::Result<
10512 tonic::Response<super::DeleteWorkspaceTemplateResponse>,
10513 tonic::Status,
10514 >;
10515 async fn create_workspace(
10521 &self,
10522 request: tonic::Request<super::CreateWorkspaceRequest>,
10523 ) -> std::result::Result<
10524 tonic::Response<super::CreateWorkspaceResponse>,
10525 tonic::Status,
10526 >;
10527 async fn delete_workspace(
10533 &self,
10534 request: tonic::Request<super::DeleteWorkspaceRequest>,
10535 ) -> std::result::Result<
10536 tonic::Response<super::DeleteWorkspaceResponse>,
10537 tonic::Status,
10538 >;
10539 async fn claim_workspace(
10545 &self,
10546 request: tonic::Request<super::ClaimWorkspaceRequest>,
10547 ) -> std::result::Result<
10548 tonic::Response<super::ClaimWorkspaceResponse>,
10549 tonic::Status,
10550 >;
10551 }
10552 #[derive(Debug)]
10558 pub struct WorkspaceServiceServer<T: WorkspaceService> {
10559 inner: _Inner<T>,
10560 accept_compression_encodings: EnabledCompressionEncodings,
10561 send_compression_encodings: EnabledCompressionEncodings,
10562 max_decoding_message_size: Option<usize>,
10563 max_encoding_message_size: Option<usize>,
10564 }
10565 struct _Inner<T>(Arc<T>);
10566 impl<T: WorkspaceService> WorkspaceServiceServer<T> {
10567 pub fn new(inner: T) -> Self {
10568 Self::from_arc(Arc::new(inner))
10569 }
10570 pub fn from_arc(inner: Arc<T>) -> Self {
10571 let inner = _Inner(inner);
10572 Self {
10573 inner,
10574 accept_compression_encodings: Default::default(),
10575 send_compression_encodings: Default::default(),
10576 max_decoding_message_size: None,
10577 max_encoding_message_size: None,
10578 }
10579 }
10580 pub fn with_interceptor<F>(
10581 inner: T,
10582 interceptor: F,
10583 ) -> InterceptedService<Self, F>
10584 where
10585 F: tonic::service::Interceptor,
10586 {
10587 InterceptedService::new(Self::new(inner), interceptor)
10588 }
10589 #[must_use]
10591 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
10592 self.accept_compression_encodings.enable(encoding);
10593 self
10594 }
10595 #[must_use]
10597 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
10598 self.send_compression_encodings.enable(encoding);
10599 self
10600 }
10601 #[must_use]
10605 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
10606 self.max_decoding_message_size = Some(limit);
10607 self
10608 }
10609 #[must_use]
10613 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
10614 self.max_encoding_message_size = Some(limit);
10615 self
10616 }
10617 }
10618 impl<T, B> tonic::codegen::Service<http::Request<B>> for WorkspaceServiceServer<T>
10619 where
10620 T: WorkspaceService,
10621 B: Body + Send + 'static,
10622 B::Error: Into<StdError> + Send + 'static,
10623 {
10624 type Response = http::Response<tonic::body::BoxBody>;
10625 type Error = std::convert::Infallible;
10626 type Future = BoxFuture<Self::Response, Self::Error>;
10627 fn poll_ready(
10628 &mut self,
10629 _cx: &mut Context<'_>,
10630 ) -> Poll<std::result::Result<(), Self::Error>> {
10631 Poll::Ready(Ok(()))
10632 }
10633 fn call(&mut self, req: http::Request<B>) -> Self::Future {
10634 let inner = self.inner.clone();
10635 match req.uri().path() {
10636 "/aruna.api.storage.services.v2.WorkspaceService/CreateWorkspaceTemplate" => {
10637 #[allow(non_camel_case_types)]
10638 struct CreateWorkspaceTemplateSvc<T: WorkspaceService>(pub Arc<T>);
10639 impl<
10640 T: WorkspaceService,
10641 > tonic::server::UnaryService<super::CreateWorkspaceTemplateRequest>
10642 for CreateWorkspaceTemplateSvc<T> {
10643 type Response = super::CreateWorkspaceTemplateResponse;
10644 type Future = BoxFuture<
10645 tonic::Response<Self::Response>,
10646 tonic::Status,
10647 >;
10648 fn call(
10649 &mut self,
10650 request: tonic::Request<
10651 super::CreateWorkspaceTemplateRequest,
10652 >,
10653 ) -> Self::Future {
10654 let inner = Arc::clone(&self.0);
10655 let fut = async move {
10656 <T as WorkspaceService>::create_workspace_template(
10657 &inner,
10658 request,
10659 )
10660 .await
10661 };
10662 Box::pin(fut)
10663 }
10664 }
10665 let accept_compression_encodings = self.accept_compression_encodings;
10666 let send_compression_encodings = self.send_compression_encodings;
10667 let max_decoding_message_size = self.max_decoding_message_size;
10668 let max_encoding_message_size = self.max_encoding_message_size;
10669 let inner = self.inner.clone();
10670 let fut = async move {
10671 let inner = inner.0;
10672 let method = CreateWorkspaceTemplateSvc(inner);
10673 let codec = tonic::codec::ProstCodec::default();
10674 let mut grpc = tonic::server::Grpc::new(codec)
10675 .apply_compression_config(
10676 accept_compression_encodings,
10677 send_compression_encodings,
10678 )
10679 .apply_max_message_size_config(
10680 max_decoding_message_size,
10681 max_encoding_message_size,
10682 );
10683 let res = grpc.unary(method, req).await;
10684 Ok(res)
10685 };
10686 Box::pin(fut)
10687 }
10688 "/aruna.api.storage.services.v2.WorkspaceService/GetWorkspaceTemplate" => {
10689 #[allow(non_camel_case_types)]
10690 struct GetWorkspaceTemplateSvc<T: WorkspaceService>(pub Arc<T>);
10691 impl<
10692 T: WorkspaceService,
10693 > tonic::server::UnaryService<super::GetWorkspaceTemplateRequest>
10694 for GetWorkspaceTemplateSvc<T> {
10695 type Response = super::GetWorkspaceTemplateResponse;
10696 type Future = BoxFuture<
10697 tonic::Response<Self::Response>,
10698 tonic::Status,
10699 >;
10700 fn call(
10701 &mut self,
10702 request: tonic::Request<super::GetWorkspaceTemplateRequest>,
10703 ) -> Self::Future {
10704 let inner = Arc::clone(&self.0);
10705 let fut = async move {
10706 <T as WorkspaceService>::get_workspace_template(
10707 &inner,
10708 request,
10709 )
10710 .await
10711 };
10712 Box::pin(fut)
10713 }
10714 }
10715 let accept_compression_encodings = self.accept_compression_encodings;
10716 let send_compression_encodings = self.send_compression_encodings;
10717 let max_decoding_message_size = self.max_decoding_message_size;
10718 let max_encoding_message_size = self.max_encoding_message_size;
10719 let inner = self.inner.clone();
10720 let fut = async move {
10721 let inner = inner.0;
10722 let method = GetWorkspaceTemplateSvc(inner);
10723 let codec = tonic::codec::ProstCodec::default();
10724 let mut grpc = tonic::server::Grpc::new(codec)
10725 .apply_compression_config(
10726 accept_compression_encodings,
10727 send_compression_encodings,
10728 )
10729 .apply_max_message_size_config(
10730 max_decoding_message_size,
10731 max_encoding_message_size,
10732 );
10733 let res = grpc.unary(method, req).await;
10734 Ok(res)
10735 };
10736 Box::pin(fut)
10737 }
10738 "/aruna.api.storage.services.v2.WorkspaceService/ListOwnedWorkspaceTemplates" => {
10739 #[allow(non_camel_case_types)]
10740 struct ListOwnedWorkspaceTemplatesSvc<T: WorkspaceService>(
10741 pub Arc<T>,
10742 );
10743 impl<
10744 T: WorkspaceService,
10745 > tonic::server::UnaryService<
10746 super::ListOwnedWorkspaceTemplatesRequest,
10747 > for ListOwnedWorkspaceTemplatesSvc<T> {
10748 type Response = super::ListOwnedWorkspaceTemplatesResponse;
10749 type Future = BoxFuture<
10750 tonic::Response<Self::Response>,
10751 tonic::Status,
10752 >;
10753 fn call(
10754 &mut self,
10755 request: tonic::Request<
10756 super::ListOwnedWorkspaceTemplatesRequest,
10757 >,
10758 ) -> Self::Future {
10759 let inner = Arc::clone(&self.0);
10760 let fut = async move {
10761 <T as WorkspaceService>::list_owned_workspace_templates(
10762 &inner,
10763 request,
10764 )
10765 .await
10766 };
10767 Box::pin(fut)
10768 }
10769 }
10770 let accept_compression_encodings = self.accept_compression_encodings;
10771 let send_compression_encodings = self.send_compression_encodings;
10772 let max_decoding_message_size = self.max_decoding_message_size;
10773 let max_encoding_message_size = self.max_encoding_message_size;
10774 let inner = self.inner.clone();
10775 let fut = async move {
10776 let inner = inner.0;
10777 let method = ListOwnedWorkspaceTemplatesSvc(inner);
10778 let codec = tonic::codec::ProstCodec::default();
10779 let mut grpc = tonic::server::Grpc::new(codec)
10780 .apply_compression_config(
10781 accept_compression_encodings,
10782 send_compression_encodings,
10783 )
10784 .apply_max_message_size_config(
10785 max_decoding_message_size,
10786 max_encoding_message_size,
10787 );
10788 let res = grpc.unary(method, req).await;
10789 Ok(res)
10790 };
10791 Box::pin(fut)
10792 }
10793 "/aruna.api.storage.services.v2.WorkspaceService/DeleteWorkspaceTemplate" => {
10794 #[allow(non_camel_case_types)]
10795 struct DeleteWorkspaceTemplateSvc<T: WorkspaceService>(pub Arc<T>);
10796 impl<
10797 T: WorkspaceService,
10798 > tonic::server::UnaryService<super::DeleteWorkspaceTemplateRequest>
10799 for DeleteWorkspaceTemplateSvc<T> {
10800 type Response = super::DeleteWorkspaceTemplateResponse;
10801 type Future = BoxFuture<
10802 tonic::Response<Self::Response>,
10803 tonic::Status,
10804 >;
10805 fn call(
10806 &mut self,
10807 request: tonic::Request<
10808 super::DeleteWorkspaceTemplateRequest,
10809 >,
10810 ) -> Self::Future {
10811 let inner = Arc::clone(&self.0);
10812 let fut = async move {
10813 <T as WorkspaceService>::delete_workspace_template(
10814 &inner,
10815 request,
10816 )
10817 .await
10818 };
10819 Box::pin(fut)
10820 }
10821 }
10822 let accept_compression_encodings = self.accept_compression_encodings;
10823 let send_compression_encodings = self.send_compression_encodings;
10824 let max_decoding_message_size = self.max_decoding_message_size;
10825 let max_encoding_message_size = self.max_encoding_message_size;
10826 let inner = self.inner.clone();
10827 let fut = async move {
10828 let inner = inner.0;
10829 let method = DeleteWorkspaceTemplateSvc(inner);
10830 let codec = tonic::codec::ProstCodec::default();
10831 let mut grpc = tonic::server::Grpc::new(codec)
10832 .apply_compression_config(
10833 accept_compression_encodings,
10834 send_compression_encodings,
10835 )
10836 .apply_max_message_size_config(
10837 max_decoding_message_size,
10838 max_encoding_message_size,
10839 );
10840 let res = grpc.unary(method, req).await;
10841 Ok(res)
10842 };
10843 Box::pin(fut)
10844 }
10845 "/aruna.api.storage.services.v2.WorkspaceService/CreateWorkspace" => {
10846 #[allow(non_camel_case_types)]
10847 struct CreateWorkspaceSvc<T: WorkspaceService>(pub Arc<T>);
10848 impl<
10849 T: WorkspaceService,
10850 > tonic::server::UnaryService<super::CreateWorkspaceRequest>
10851 for CreateWorkspaceSvc<T> {
10852 type Response = super::CreateWorkspaceResponse;
10853 type Future = BoxFuture<
10854 tonic::Response<Self::Response>,
10855 tonic::Status,
10856 >;
10857 fn call(
10858 &mut self,
10859 request: tonic::Request<super::CreateWorkspaceRequest>,
10860 ) -> Self::Future {
10861 let inner = Arc::clone(&self.0);
10862 let fut = async move {
10863 <T as WorkspaceService>::create_workspace(&inner, request)
10864 .await
10865 };
10866 Box::pin(fut)
10867 }
10868 }
10869 let accept_compression_encodings = self.accept_compression_encodings;
10870 let send_compression_encodings = self.send_compression_encodings;
10871 let max_decoding_message_size = self.max_decoding_message_size;
10872 let max_encoding_message_size = self.max_encoding_message_size;
10873 let inner = self.inner.clone();
10874 let fut = async move {
10875 let inner = inner.0;
10876 let method = CreateWorkspaceSvc(inner);
10877 let codec = tonic::codec::ProstCodec::default();
10878 let mut grpc = tonic::server::Grpc::new(codec)
10879 .apply_compression_config(
10880 accept_compression_encodings,
10881 send_compression_encodings,
10882 )
10883 .apply_max_message_size_config(
10884 max_decoding_message_size,
10885 max_encoding_message_size,
10886 );
10887 let res = grpc.unary(method, req).await;
10888 Ok(res)
10889 };
10890 Box::pin(fut)
10891 }
10892 "/aruna.api.storage.services.v2.WorkspaceService/DeleteWorkspace" => {
10893 #[allow(non_camel_case_types)]
10894 struct DeleteWorkspaceSvc<T: WorkspaceService>(pub Arc<T>);
10895 impl<
10896 T: WorkspaceService,
10897 > tonic::server::UnaryService<super::DeleteWorkspaceRequest>
10898 for DeleteWorkspaceSvc<T> {
10899 type Response = super::DeleteWorkspaceResponse;
10900 type Future = BoxFuture<
10901 tonic::Response<Self::Response>,
10902 tonic::Status,
10903 >;
10904 fn call(
10905 &mut self,
10906 request: tonic::Request<super::DeleteWorkspaceRequest>,
10907 ) -> Self::Future {
10908 let inner = Arc::clone(&self.0);
10909 let fut = async move {
10910 <T as WorkspaceService>::delete_workspace(&inner, request)
10911 .await
10912 };
10913 Box::pin(fut)
10914 }
10915 }
10916 let accept_compression_encodings = self.accept_compression_encodings;
10917 let send_compression_encodings = self.send_compression_encodings;
10918 let max_decoding_message_size = self.max_decoding_message_size;
10919 let max_encoding_message_size = self.max_encoding_message_size;
10920 let inner = self.inner.clone();
10921 let fut = async move {
10922 let inner = inner.0;
10923 let method = DeleteWorkspaceSvc(inner);
10924 let codec = tonic::codec::ProstCodec::default();
10925 let mut grpc = tonic::server::Grpc::new(codec)
10926 .apply_compression_config(
10927 accept_compression_encodings,
10928 send_compression_encodings,
10929 )
10930 .apply_max_message_size_config(
10931 max_decoding_message_size,
10932 max_encoding_message_size,
10933 );
10934 let res = grpc.unary(method, req).await;
10935 Ok(res)
10936 };
10937 Box::pin(fut)
10938 }
10939 "/aruna.api.storage.services.v2.WorkspaceService/ClaimWorkspace" => {
10940 #[allow(non_camel_case_types)]
10941 struct ClaimWorkspaceSvc<T: WorkspaceService>(pub Arc<T>);
10942 impl<
10943 T: WorkspaceService,
10944 > tonic::server::UnaryService<super::ClaimWorkspaceRequest>
10945 for ClaimWorkspaceSvc<T> {
10946 type Response = super::ClaimWorkspaceResponse;
10947 type Future = BoxFuture<
10948 tonic::Response<Self::Response>,
10949 tonic::Status,
10950 >;
10951 fn call(
10952 &mut self,
10953 request: tonic::Request<super::ClaimWorkspaceRequest>,
10954 ) -> Self::Future {
10955 let inner = Arc::clone(&self.0);
10956 let fut = async move {
10957 <T as WorkspaceService>::claim_workspace(&inner, request)
10958 .await
10959 };
10960 Box::pin(fut)
10961 }
10962 }
10963 let accept_compression_encodings = self.accept_compression_encodings;
10964 let send_compression_encodings = self.send_compression_encodings;
10965 let max_decoding_message_size = self.max_decoding_message_size;
10966 let max_encoding_message_size = self.max_encoding_message_size;
10967 let inner = self.inner.clone();
10968 let fut = async move {
10969 let inner = inner.0;
10970 let method = ClaimWorkspaceSvc(inner);
10971 let codec = tonic::codec::ProstCodec::default();
10972 let mut grpc = tonic::server::Grpc::new(codec)
10973 .apply_compression_config(
10974 accept_compression_encodings,
10975 send_compression_encodings,
10976 )
10977 .apply_max_message_size_config(
10978 max_decoding_message_size,
10979 max_encoding_message_size,
10980 );
10981 let res = grpc.unary(method, req).await;
10982 Ok(res)
10983 };
10984 Box::pin(fut)
10985 }
10986 _ => {
10987 Box::pin(async move {
10988 Ok(
10989 http::Response::builder()
10990 .status(200)
10991 .header("grpc-status", "12")
10992 .header("content-type", "application/grpc")
10993 .body(empty_body())
10994 .unwrap(),
10995 )
10996 })
10997 }
10998 }
10999 }
11000 }
11001 impl<T: WorkspaceService> Clone for WorkspaceServiceServer<T> {
11002 fn clone(&self) -> Self {
11003 let inner = self.inner.clone();
11004 Self {
11005 inner,
11006 accept_compression_encodings: self.accept_compression_encodings,
11007 send_compression_encodings: self.send_compression_encodings,
11008 max_decoding_message_size: self.max_decoding_message_size,
11009 max_encoding_message_size: self.max_encoding_message_size,
11010 }
11011 }
11012 }
11013 impl<T: WorkspaceService> Clone for _Inner<T> {
11014 fn clone(&self) -> Self {
11015 Self(Arc::clone(&self.0))
11016 }
11017 }
11018 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
11019 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
11020 write!(f, "{:?}", self.0)
11021 }
11022 }
11023 impl<T: WorkspaceService> tonic::server::NamedService for WorkspaceServiceServer<T> {
11024 const NAME: &'static str = "aruna.api.storage.services.v2.WorkspaceService";
11025 }
11026}
11027#[derive(serde::Deserialize, serde::Serialize)]
11028#[allow(clippy::derive_partial_eq_without_eq)]
11029#[derive(Clone, PartialEq, ::prost::Message)]
11030pub struct ModifyRelationsRequest {
11031 #[prost(string, tag = "1")]
11032 pub resource_id: ::prost::alloc::string::String,
11033 #[prost(message, repeated, tag = "2")]
11034 pub add_relations: ::prost::alloc::vec::Vec<super::super::models::v2::Relation>,
11035 #[prost(message, repeated, tag = "3")]
11036 pub remove_relations: ::prost::alloc::vec::Vec<super::super::models::v2::Relation>,
11037}
11038#[derive(serde::Deserialize, serde::Serialize)]
11039#[allow(clippy::derive_partial_eq_without_eq)]
11040#[derive(Clone, PartialEq, ::prost::Message)]
11041pub struct ModifyRelationsResponse {}
11042#[derive(serde::Deserialize, serde::Serialize)]
11043#[allow(clippy::derive_partial_eq_without_eq)]
11044#[derive(Clone, PartialEq, ::prost::Message)]
11045pub struct GetHierarchyRequest {
11046 #[prost(string, tag = "1")]
11047 pub resource_id: ::prost::alloc::string::String,
11048}
11049#[derive(serde::Deserialize, serde::Serialize)]
11050#[allow(clippy::derive_partial_eq_without_eq)]
11051#[derive(Clone, PartialEq, ::prost::Message)]
11052pub struct DatasetRelations {
11053 #[prost(string, tag = "1")]
11054 pub origin: ::prost::alloc::string::String,
11055 #[prost(string, repeated, tag = "2")]
11056 pub object_children: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
11057}
11058#[derive(serde::Deserialize, serde::Serialize)]
11059#[allow(clippy::derive_partial_eq_without_eq)]
11060#[derive(Clone, PartialEq, ::prost::Message)]
11061pub struct CollectionRelations {
11062 #[prost(string, tag = "1")]
11063 pub origin: ::prost::alloc::string::String,
11064 #[prost(message, repeated, tag = "2")]
11065 pub dataset_children: ::prost::alloc::vec::Vec<DatasetRelations>,
11066 #[prost(string, repeated, tag = "3")]
11067 pub object_children: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
11068}
11069#[derive(serde::Deserialize, serde::Serialize)]
11070#[allow(clippy::derive_partial_eq_without_eq)]
11071#[derive(Clone, PartialEq, ::prost::Message)]
11072pub struct ProjectRelations {
11073 #[prost(string, tag = "1")]
11074 pub origin: ::prost::alloc::string::String,
11075 #[prost(message, repeated, tag = "2")]
11076 pub collection_children: ::prost::alloc::vec::Vec<CollectionRelations>,
11077 #[prost(message, repeated, tag = "3")]
11078 pub dataset_children: ::prost::alloc::vec::Vec<DatasetRelations>,
11079 #[prost(string, repeated, tag = "4")]
11080 pub object_children: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
11081}
11082#[derive(serde::Deserialize, serde::Serialize)]
11083#[allow(clippy::derive_partial_eq_without_eq)]
11084#[derive(Clone, PartialEq, ::prost::Message)]
11085pub struct GetHierarchyResponse {
11086 #[prost(oneof = "get_hierarchy_response::Graph", tags = "1, 2, 3")]
11087 pub graph: ::core::option::Option<get_hierarchy_response::Graph>,
11088}
11089pub mod get_hierarchy_response {
11091 #[derive(serde::Deserialize, serde::Serialize)]
11092 #[allow(clippy::derive_partial_eq_without_eq)]
11093 #[derive(Clone, PartialEq, ::prost::Oneof)]
11094 pub enum Graph {
11095 #[prost(message, tag = "1")]
11096 Project(super::ProjectRelations),
11097 #[prost(message, tag = "2")]
11098 Collection(super::CollectionRelations),
11099 #[prost(message, tag = "3")]
11100 Dataset(super::DatasetRelations),
11101 }
11102}
11103pub mod relations_service_client {
11105 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
11106 use tonic::codegen::*;
11107 use tonic::codegen::http::Uri;
11108 #[derive(Debug, Clone)]
11114 pub struct RelationsServiceClient<T> {
11115 inner: tonic::client::Grpc<T>,
11116 }
11117 impl RelationsServiceClient<tonic::transport::Channel> {
11118 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
11120 where
11121 D: TryInto<tonic::transport::Endpoint>,
11122 D::Error: Into<StdError>,
11123 {
11124 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
11125 Ok(Self::new(conn))
11126 }
11127 }
11128 impl<T> RelationsServiceClient<T>
11129 where
11130 T: tonic::client::GrpcService<tonic::body::BoxBody>,
11131 T::Error: Into<StdError>,
11132 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
11133 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
11134 {
11135 pub fn new(inner: T) -> Self {
11136 let inner = tonic::client::Grpc::new(inner);
11137 Self { inner }
11138 }
11139 pub fn with_origin(inner: T, origin: Uri) -> Self {
11140 let inner = tonic::client::Grpc::with_origin(inner, origin);
11141 Self { inner }
11142 }
11143 pub fn with_interceptor<F>(
11144 inner: T,
11145 interceptor: F,
11146 ) -> RelationsServiceClient<InterceptedService<T, F>>
11147 where
11148 F: tonic::service::Interceptor,
11149 T::ResponseBody: Default,
11150 T: tonic::codegen::Service<
11151 http::Request<tonic::body::BoxBody>,
11152 Response = http::Response<
11153 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
11154 >,
11155 >,
11156 <T as tonic::codegen::Service<
11157 http::Request<tonic::body::BoxBody>,
11158 >>::Error: Into<StdError> + Send + Sync,
11159 {
11160 RelationsServiceClient::new(InterceptedService::new(inner, interceptor))
11161 }
11162 #[must_use]
11167 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
11168 self.inner = self.inner.send_compressed(encoding);
11169 self
11170 }
11171 #[must_use]
11173 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
11174 self.inner = self.inner.accept_compressed(encoding);
11175 self
11176 }
11177 #[must_use]
11181 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
11182 self.inner = self.inner.max_decoding_message_size(limit);
11183 self
11184 }
11185 #[must_use]
11189 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
11190 self.inner = self.inner.max_encoding_message_size(limit);
11191 self
11192 }
11193 pub async fn modify_relations(
11200 &mut self,
11201 request: impl tonic::IntoRequest<super::ModifyRelationsRequest>,
11202 ) -> std::result::Result<
11203 tonic::Response<super::ModifyRelationsResponse>,
11204 tonic::Status,
11205 > {
11206 self.inner
11207 .ready()
11208 .await
11209 .map_err(|e| {
11210 tonic::Status::new(
11211 tonic::Code::Unknown,
11212 format!("Service was not ready: {}", e.into()),
11213 )
11214 })?;
11215 let codec = tonic::codec::ProstCodec::default();
11216 let path = http::uri::PathAndQuery::from_static(
11217 "/aruna.api.storage.services.v2.RelationsService/ModifyRelations",
11218 );
11219 let mut req = request.into_request();
11220 req.extensions_mut()
11221 .insert(
11222 GrpcMethod::new(
11223 "aruna.api.storage.services.v2.RelationsService",
11224 "ModifyRelations",
11225 ),
11226 );
11227 self.inner.unary(req, path, codec).await
11228 }
11229 pub async fn get_hierarchy(
11236 &mut self,
11237 request: impl tonic::IntoRequest<super::GetHierarchyRequest>,
11238 ) -> std::result::Result<
11239 tonic::Response<super::GetHierarchyResponse>,
11240 tonic::Status,
11241 > {
11242 self.inner
11243 .ready()
11244 .await
11245 .map_err(|e| {
11246 tonic::Status::new(
11247 tonic::Code::Unknown,
11248 format!("Service was not ready: {}", e.into()),
11249 )
11250 })?;
11251 let codec = tonic::codec::ProstCodec::default();
11252 let path = http::uri::PathAndQuery::from_static(
11253 "/aruna.api.storage.services.v2.RelationsService/GetHierarchy",
11254 );
11255 let mut req = request.into_request();
11256 req.extensions_mut()
11257 .insert(
11258 GrpcMethod::new(
11259 "aruna.api.storage.services.v2.RelationsService",
11260 "GetHierarchy",
11261 ),
11262 );
11263 self.inner.unary(req, path, codec).await
11264 }
11265 }
11266}
11267pub mod relations_service_server {
11269 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
11270 use tonic::codegen::*;
11271 #[async_trait]
11273 pub trait RelationsService: Send + Sync + 'static {
11274 async fn modify_relations(
11281 &self,
11282 request: tonic::Request<super::ModifyRelationsRequest>,
11283 ) -> std::result::Result<
11284 tonic::Response<super::ModifyRelationsResponse>,
11285 tonic::Status,
11286 >;
11287 async fn get_hierarchy(
11294 &self,
11295 request: tonic::Request<super::GetHierarchyRequest>,
11296 ) -> std::result::Result<
11297 tonic::Response<super::GetHierarchyResponse>,
11298 tonic::Status,
11299 >;
11300 }
11301 #[derive(Debug)]
11307 pub struct RelationsServiceServer<T: RelationsService> {
11308 inner: _Inner<T>,
11309 accept_compression_encodings: EnabledCompressionEncodings,
11310 send_compression_encodings: EnabledCompressionEncodings,
11311 max_decoding_message_size: Option<usize>,
11312 max_encoding_message_size: Option<usize>,
11313 }
11314 struct _Inner<T>(Arc<T>);
11315 impl<T: RelationsService> RelationsServiceServer<T> {
11316 pub fn new(inner: T) -> Self {
11317 Self::from_arc(Arc::new(inner))
11318 }
11319 pub fn from_arc(inner: Arc<T>) -> Self {
11320 let inner = _Inner(inner);
11321 Self {
11322 inner,
11323 accept_compression_encodings: Default::default(),
11324 send_compression_encodings: Default::default(),
11325 max_decoding_message_size: None,
11326 max_encoding_message_size: None,
11327 }
11328 }
11329 pub fn with_interceptor<F>(
11330 inner: T,
11331 interceptor: F,
11332 ) -> InterceptedService<Self, F>
11333 where
11334 F: tonic::service::Interceptor,
11335 {
11336 InterceptedService::new(Self::new(inner), interceptor)
11337 }
11338 #[must_use]
11340 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
11341 self.accept_compression_encodings.enable(encoding);
11342 self
11343 }
11344 #[must_use]
11346 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
11347 self.send_compression_encodings.enable(encoding);
11348 self
11349 }
11350 #[must_use]
11354 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
11355 self.max_decoding_message_size = Some(limit);
11356 self
11357 }
11358 #[must_use]
11362 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
11363 self.max_encoding_message_size = Some(limit);
11364 self
11365 }
11366 }
11367 impl<T, B> tonic::codegen::Service<http::Request<B>> for RelationsServiceServer<T>
11368 where
11369 T: RelationsService,
11370 B: Body + Send + 'static,
11371 B::Error: Into<StdError> + Send + 'static,
11372 {
11373 type Response = http::Response<tonic::body::BoxBody>;
11374 type Error = std::convert::Infallible;
11375 type Future = BoxFuture<Self::Response, Self::Error>;
11376 fn poll_ready(
11377 &mut self,
11378 _cx: &mut Context<'_>,
11379 ) -> Poll<std::result::Result<(), Self::Error>> {
11380 Poll::Ready(Ok(()))
11381 }
11382 fn call(&mut self, req: http::Request<B>) -> Self::Future {
11383 let inner = self.inner.clone();
11384 match req.uri().path() {
11385 "/aruna.api.storage.services.v2.RelationsService/ModifyRelations" => {
11386 #[allow(non_camel_case_types)]
11387 struct ModifyRelationsSvc<T: RelationsService>(pub Arc<T>);
11388 impl<
11389 T: RelationsService,
11390 > tonic::server::UnaryService<super::ModifyRelationsRequest>
11391 for ModifyRelationsSvc<T> {
11392 type Response = super::ModifyRelationsResponse;
11393 type Future = BoxFuture<
11394 tonic::Response<Self::Response>,
11395 tonic::Status,
11396 >;
11397 fn call(
11398 &mut self,
11399 request: tonic::Request<super::ModifyRelationsRequest>,
11400 ) -> Self::Future {
11401 let inner = Arc::clone(&self.0);
11402 let fut = async move {
11403 <T as RelationsService>::modify_relations(&inner, request)
11404 .await
11405 };
11406 Box::pin(fut)
11407 }
11408 }
11409 let accept_compression_encodings = self.accept_compression_encodings;
11410 let send_compression_encodings = self.send_compression_encodings;
11411 let max_decoding_message_size = self.max_decoding_message_size;
11412 let max_encoding_message_size = self.max_encoding_message_size;
11413 let inner = self.inner.clone();
11414 let fut = async move {
11415 let inner = inner.0;
11416 let method = ModifyRelationsSvc(inner);
11417 let codec = tonic::codec::ProstCodec::default();
11418 let mut grpc = tonic::server::Grpc::new(codec)
11419 .apply_compression_config(
11420 accept_compression_encodings,
11421 send_compression_encodings,
11422 )
11423 .apply_max_message_size_config(
11424 max_decoding_message_size,
11425 max_encoding_message_size,
11426 );
11427 let res = grpc.unary(method, req).await;
11428 Ok(res)
11429 };
11430 Box::pin(fut)
11431 }
11432 "/aruna.api.storage.services.v2.RelationsService/GetHierarchy" => {
11433 #[allow(non_camel_case_types)]
11434 struct GetHierarchySvc<T: RelationsService>(pub Arc<T>);
11435 impl<
11436 T: RelationsService,
11437 > tonic::server::UnaryService<super::GetHierarchyRequest>
11438 for GetHierarchySvc<T> {
11439 type Response = super::GetHierarchyResponse;
11440 type Future = BoxFuture<
11441 tonic::Response<Self::Response>,
11442 tonic::Status,
11443 >;
11444 fn call(
11445 &mut self,
11446 request: tonic::Request<super::GetHierarchyRequest>,
11447 ) -> Self::Future {
11448 let inner = Arc::clone(&self.0);
11449 let fut = async move {
11450 <T as RelationsService>::get_hierarchy(&inner, request)
11451 .await
11452 };
11453 Box::pin(fut)
11454 }
11455 }
11456 let accept_compression_encodings = self.accept_compression_encodings;
11457 let send_compression_encodings = self.send_compression_encodings;
11458 let max_decoding_message_size = self.max_decoding_message_size;
11459 let max_encoding_message_size = self.max_encoding_message_size;
11460 let inner = self.inner.clone();
11461 let fut = async move {
11462 let inner = inner.0;
11463 let method = GetHierarchySvc(inner);
11464 let codec = tonic::codec::ProstCodec::default();
11465 let mut grpc = tonic::server::Grpc::new(codec)
11466 .apply_compression_config(
11467 accept_compression_encodings,
11468 send_compression_encodings,
11469 )
11470 .apply_max_message_size_config(
11471 max_decoding_message_size,
11472 max_encoding_message_size,
11473 );
11474 let res = grpc.unary(method, req).await;
11475 Ok(res)
11476 };
11477 Box::pin(fut)
11478 }
11479 _ => {
11480 Box::pin(async move {
11481 Ok(
11482 http::Response::builder()
11483 .status(200)
11484 .header("grpc-status", "12")
11485 .header("content-type", "application/grpc")
11486 .body(empty_body())
11487 .unwrap(),
11488 )
11489 })
11490 }
11491 }
11492 }
11493 }
11494 impl<T: RelationsService> Clone for RelationsServiceServer<T> {
11495 fn clone(&self) -> Self {
11496 let inner = self.inner.clone();
11497 Self {
11498 inner,
11499 accept_compression_encodings: self.accept_compression_encodings,
11500 send_compression_encodings: self.send_compression_encodings,
11501 max_decoding_message_size: self.max_decoding_message_size,
11502 max_encoding_message_size: self.max_encoding_message_size,
11503 }
11504 }
11505 }
11506 impl<T: RelationsService> Clone for _Inner<T> {
11507 fn clone(&self) -> Self {
11508 Self(Arc::clone(&self.0))
11509 }
11510 }
11511 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
11512 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
11513 write!(f, "{:?}", self.0)
11514 }
11515 }
11516 impl<T: RelationsService> tonic::server::NamedService for RelationsServiceServer<T> {
11517 const NAME: &'static str = "aruna.api.storage.services.v2.RelationsService";
11518 }
11519}
11520#[derive(serde::Deserialize, serde::Serialize)]
11521#[allow(clippy::derive_partial_eq_without_eq)]
11522#[derive(Clone, PartialEq, ::prost::Message)]
11523pub struct GetStorageVersionRequest {}
11524#[derive(serde::Deserialize, serde::Serialize)]
11525#[allow(clippy::derive_partial_eq_without_eq)]
11526#[derive(Clone, PartialEq, ::prost::Message)]
11527pub struct SemanticVersion {
11528 #[prost(string, tag = "1")]
11530 pub version_string: ::prost::alloc::string::String,
11531 #[prost(int32, tag = "2")]
11533 pub major: i32,
11534 #[prost(int32, tag = "3")]
11535 pub minor: i32,
11536 #[prost(int32, tag = "4")]
11537 pub patch: i32,
11538 #[prost(string, tag = "5")]
11539 pub labels: ::prost::alloc::string::String,
11540}
11541#[derive(serde::Deserialize, serde::Serialize)]
11542#[allow(clippy::derive_partial_eq_without_eq)]
11543#[derive(Clone, PartialEq, ::prost::Message)]
11544pub struct LocationVersion {
11545 #[prost(string, tag = "1")]
11547 pub location: ::prost::alloc::string::String,
11548 #[prost(message, repeated, tag = "2")]
11549 pub version: ::prost::alloc::vec::Vec<ComponentVersion>,
11550}
11551#[derive(serde::Deserialize, serde::Serialize)]
11552#[allow(clippy::derive_partial_eq_without_eq)]
11553#[derive(Clone, PartialEq, ::prost::Message)]
11554pub struct ComponentVersion {
11555 #[prost(string, tag = "1")]
11557 pub name: ::prost::alloc::string::String,
11558 #[prost(message, optional, tag = "2")]
11559 pub version: ::core::option::Option<SemanticVersion>,
11560}
11561#[derive(serde::Deserialize, serde::Serialize)]
11563#[allow(clippy::derive_partial_eq_without_eq)]
11564#[derive(Clone, PartialEq, ::prost::Message)]
11565pub struct GetStorageVersionResponse {
11566 #[prost(message, repeated, tag = "1")]
11567 pub location_version: ::prost::alloc::vec::Vec<LocationVersion>,
11568}
11569#[derive(serde::Deserialize, serde::Serialize)]
11570#[allow(clippy::derive_partial_eq_without_eq)]
11571#[derive(Clone, PartialEq, ::prost::Message)]
11572pub struct GetStorageStatusRequest {}
11573#[derive(serde::Deserialize, serde::Serialize)]
11574#[allow(clippy::derive_partial_eq_without_eq)]
11575#[derive(Clone, PartialEq, ::prost::Message)]
11576pub struct LocationStatus {
11577 #[prost(string, tag = "1")]
11579 pub location: ::prost::alloc::string::String,
11580 #[prost(message, repeated, tag = "2")]
11581 pub component_status: ::prost::alloc::vec::Vec<ComponentStatus>,
11582}
11583#[derive(serde::Deserialize, serde::Serialize)]
11584#[allow(clippy::derive_partial_eq_without_eq)]
11585#[derive(Clone, PartialEq, ::prost::Message)]
11586pub struct ComponentStatus {
11587 #[prost(string, tag = "1")]
11589 pub name: ::prost::alloc::string::String,
11590 #[prost(enumeration = "super::super::models::v2::ComponentStatus", tag = "2")]
11591 pub status: i32,
11592}
11593#[derive(serde::Deserialize, serde::Serialize)]
11594#[allow(clippy::derive_partial_eq_without_eq)]
11595#[derive(Clone, PartialEq, ::prost::Message)]
11596pub struct GetStorageStatusResponse {
11597 #[prost(message, repeated, tag = "1")]
11599 pub location_status: ::prost::alloc::vec::Vec<LocationStatus>,
11600}
11601#[derive(serde::Deserialize, serde::Serialize)]
11602#[allow(clippy::derive_partial_eq_without_eq)]
11603#[derive(Clone, PartialEq, ::prost::Message)]
11604pub struct GetPubkeysRequest {}
11605#[derive(serde::Deserialize, serde::Serialize)]
11606#[allow(clippy::derive_partial_eq_without_eq)]
11607#[derive(Clone, PartialEq, ::prost::Message)]
11608pub struct GetPubkeysResponse {
11609 #[prost(message, repeated, tag = "1")]
11610 pub pubkeys: ::prost::alloc::vec::Vec<super::super::models::v2::Pubkey>,
11611}
11612#[derive(serde::Deserialize, serde::Serialize)]
11614#[allow(clippy::derive_partial_eq_without_eq)]
11615#[derive(Clone, PartialEq, ::prost::Message)]
11616pub struct Announcement {
11617 #[prost(string, tag = "1")]
11619 pub announcement_id: ::prost::alloc::string::String,
11620 #[prost(enumeration = "super::super::models::v2::AnnouncementType", tag = "2")]
11622 pub announcement_type: i32,
11623 #[prost(string, tag = "3")]
11625 pub title: ::prost::alloc::string::String,
11626 #[prost(string, tag = "4")]
11628 pub teaser: ::prost::alloc::string::String,
11629 #[prost(string, tag = "5")]
11631 pub image_url: ::prost::alloc::string::String,
11632 #[prost(string, tag = "6")]
11634 pub content: ::prost::alloc::string::String,
11635 #[prost(string, tag = "7")]
11637 pub created_by: ::prost::alloc::string::String,
11638 #[prost(message, optional, tag = "8")]
11640 pub created_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
11641 #[prost(string, tag = "9")]
11643 pub modified_by: ::prost::alloc::string::String,
11644 #[prost(message, optional, tag = "10")]
11646 pub modified_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
11647}
11648#[derive(serde::Deserialize, serde::Serialize)]
11649#[allow(clippy::derive_partial_eq_without_eq)]
11650#[derive(Clone, PartialEq, ::prost::Message)]
11651pub struct SetAnnouncementsRequest {
11652 #[prost(message, repeated, tag = "1")]
11653 pub announcements_upsert: ::prost::alloc::vec::Vec<Announcement>,
11654 #[prost(string, repeated, tag = "2")]
11655 pub announcements_delete: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
11656}
11657#[derive(serde::Deserialize, serde::Serialize)]
11658#[allow(clippy::derive_partial_eq_without_eq)]
11659#[derive(Clone, PartialEq, ::prost::Message)]
11660pub struct SetAnnouncementsResponse {
11661 #[prost(message, repeated, tag = "1")]
11662 pub announcements: ::prost::alloc::vec::Vec<Announcement>,
11663}
11664#[derive(serde::Deserialize, serde::Serialize)]
11665#[allow(clippy::derive_partial_eq_without_eq)]
11666#[derive(Clone, PartialEq, ::prost::Message)]
11667pub struct GetAnnouncementsRequest {
11668 #[prost(string, repeated, tag = "1")]
11669 pub announcement_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
11670 #[prost(message, optional, tag = "2")]
11671 pub page: ::core::option::Option<super::super::models::v2::PageRequest>,
11672}
11673#[derive(serde::Deserialize, serde::Serialize)]
11674#[allow(clippy::derive_partial_eq_without_eq)]
11675#[derive(Clone, PartialEq, ::prost::Message)]
11676pub struct GetAnnouncementsResponse {
11677 #[prost(message, repeated, tag = "1")]
11678 pub announcements: ::prost::alloc::vec::Vec<Announcement>,
11679}
11680#[derive(serde::Deserialize, serde::Serialize)]
11681#[allow(clippy::derive_partial_eq_without_eq)]
11682#[derive(Clone, PartialEq, ::prost::Message)]
11683pub struct GetAnnouncementsByTypeRequest {
11684 #[prost(enumeration = "super::super::models::v2::AnnouncementType", tag = "1")]
11685 pub announcement_type: i32,
11686 #[prost(message, optional, tag = "2")]
11687 pub page: ::core::option::Option<super::super::models::v2::PageRequest>,
11688}
11689#[derive(serde::Deserialize, serde::Serialize)]
11690#[allow(clippy::derive_partial_eq_without_eq)]
11691#[derive(Clone, PartialEq, ::prost::Message)]
11692pub struct GetAnnouncementsByTypeResponse {
11693 #[prost(message, repeated, tag = "1")]
11694 pub announcements: ::prost::alloc::vec::Vec<Announcement>,
11695}
11696#[derive(serde::Deserialize, serde::Serialize)]
11697#[allow(clippy::derive_partial_eq_without_eq)]
11698#[derive(Clone, PartialEq, ::prost::Message)]
11699pub struct GetAnnouncementRequest {
11700 #[prost(string, tag = "1")]
11701 pub announcement_id: ::prost::alloc::string::String,
11702}
11703#[derive(serde::Deserialize, serde::Serialize)]
11704#[allow(clippy::derive_partial_eq_without_eq)]
11705#[derive(Clone, PartialEq, ::prost::Message)]
11706pub struct GetAnnouncementResponse {
11707 #[prost(message, optional, tag = "1")]
11708 pub announcement: ::core::option::Option<Announcement>,
11709}
11710pub mod storage_status_service_client {
11712 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
11713 use tonic::codegen::*;
11714 use tonic::codegen::http::Uri;
11715 #[derive(Debug, Clone)]
11723 pub struct StorageStatusServiceClient<T> {
11724 inner: tonic::client::Grpc<T>,
11725 }
11726 impl StorageStatusServiceClient<tonic::transport::Channel> {
11727 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
11729 where
11730 D: TryInto<tonic::transport::Endpoint>,
11731 D::Error: Into<StdError>,
11732 {
11733 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
11734 Ok(Self::new(conn))
11735 }
11736 }
11737 impl<T> StorageStatusServiceClient<T>
11738 where
11739 T: tonic::client::GrpcService<tonic::body::BoxBody>,
11740 T::Error: Into<StdError>,
11741 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
11742 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
11743 {
11744 pub fn new(inner: T) -> Self {
11745 let inner = tonic::client::Grpc::new(inner);
11746 Self { inner }
11747 }
11748 pub fn with_origin(inner: T, origin: Uri) -> Self {
11749 let inner = tonic::client::Grpc::with_origin(inner, origin);
11750 Self { inner }
11751 }
11752 pub fn with_interceptor<F>(
11753 inner: T,
11754 interceptor: F,
11755 ) -> StorageStatusServiceClient<InterceptedService<T, F>>
11756 where
11757 F: tonic::service::Interceptor,
11758 T::ResponseBody: Default,
11759 T: tonic::codegen::Service<
11760 http::Request<tonic::body::BoxBody>,
11761 Response = http::Response<
11762 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
11763 >,
11764 >,
11765 <T as tonic::codegen::Service<
11766 http::Request<tonic::body::BoxBody>,
11767 >>::Error: Into<StdError> + Send + Sync,
11768 {
11769 StorageStatusServiceClient::new(InterceptedService::new(inner, interceptor))
11770 }
11771 #[must_use]
11776 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
11777 self.inner = self.inner.send_compressed(encoding);
11778 self
11779 }
11780 #[must_use]
11782 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
11783 self.inner = self.inner.accept_compressed(encoding);
11784 self
11785 }
11786 #[must_use]
11790 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
11791 self.inner = self.inner.max_decoding_message_size(limit);
11792 self
11793 }
11794 #[must_use]
11798 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
11799 self.inner = self.inner.max_encoding_message_size(limit);
11800 self
11801 }
11802 pub async fn get_storage_version(
11809 &mut self,
11810 request: impl tonic::IntoRequest<super::GetStorageVersionRequest>,
11811 ) -> std::result::Result<
11812 tonic::Response<super::GetStorageVersionResponse>,
11813 tonic::Status,
11814 > {
11815 self.inner
11816 .ready()
11817 .await
11818 .map_err(|e| {
11819 tonic::Status::new(
11820 tonic::Code::Unknown,
11821 format!("Service was not ready: {}", e.into()),
11822 )
11823 })?;
11824 let codec = tonic::codec::ProstCodec::default();
11825 let path = http::uri::PathAndQuery::from_static(
11826 "/aruna.api.storage.services.v2.StorageStatusService/GetStorageVersion",
11827 );
11828 let mut req = request.into_request();
11829 req.extensions_mut()
11830 .insert(
11831 GrpcMethod::new(
11832 "aruna.api.storage.services.v2.StorageStatusService",
11833 "GetStorageVersion",
11834 ),
11835 );
11836 self.inner.unary(req, path, codec).await
11837 }
11838 pub async fn get_storage_status(
11844 &mut self,
11845 request: impl tonic::IntoRequest<super::GetStorageStatusRequest>,
11846 ) -> std::result::Result<
11847 tonic::Response<super::GetStorageStatusResponse>,
11848 tonic::Status,
11849 > {
11850 self.inner
11851 .ready()
11852 .await
11853 .map_err(|e| {
11854 tonic::Status::new(
11855 tonic::Code::Unknown,
11856 format!("Service was not ready: {}", e.into()),
11857 )
11858 })?;
11859 let codec = tonic::codec::ProstCodec::default();
11860 let path = http::uri::PathAndQuery::from_static(
11861 "/aruna.api.storage.services.v2.StorageStatusService/GetStorageStatus",
11862 );
11863 let mut req = request.into_request();
11864 req.extensions_mut()
11865 .insert(
11866 GrpcMethod::new(
11867 "aruna.api.storage.services.v2.StorageStatusService",
11868 "GetStorageStatus",
11869 ),
11870 );
11871 self.inner.unary(req, path, codec).await
11872 }
11873 pub async fn get_pubkeys(
11879 &mut self,
11880 request: impl tonic::IntoRequest<super::GetPubkeysRequest>,
11881 ) -> std::result::Result<
11882 tonic::Response<super::GetPubkeysResponse>,
11883 tonic::Status,
11884 > {
11885 self.inner
11886 .ready()
11887 .await
11888 .map_err(|e| {
11889 tonic::Status::new(
11890 tonic::Code::Unknown,
11891 format!("Service was not ready: {}", e.into()),
11892 )
11893 })?;
11894 let codec = tonic::codec::ProstCodec::default();
11895 let path = http::uri::PathAndQuery::from_static(
11896 "/aruna.api.storage.services.v2.StorageStatusService/GetPubkeys",
11897 );
11898 let mut req = request.into_request();
11899 req.extensions_mut()
11900 .insert(
11901 GrpcMethod::new(
11902 "aruna.api.storage.services.v2.StorageStatusService",
11903 "GetPubkeys",
11904 ),
11905 );
11906 self.inner.unary(req, path, codec).await
11907 }
11908 pub async fn get_announcements(
11916 &mut self,
11917 request: impl tonic::IntoRequest<super::GetAnnouncementsRequest>,
11918 ) -> std::result::Result<
11919 tonic::Response<super::GetAnnouncementsResponse>,
11920 tonic::Status,
11921 > {
11922 self.inner
11923 .ready()
11924 .await
11925 .map_err(|e| {
11926 tonic::Status::new(
11927 tonic::Code::Unknown,
11928 format!("Service was not ready: {}", e.into()),
11929 )
11930 })?;
11931 let codec = tonic::codec::ProstCodec::default();
11932 let path = http::uri::PathAndQuery::from_static(
11933 "/aruna.api.storage.services.v2.StorageStatusService/GetAnnouncements",
11934 );
11935 let mut req = request.into_request();
11936 req.extensions_mut()
11937 .insert(
11938 GrpcMethod::new(
11939 "aruna.api.storage.services.v2.StorageStatusService",
11940 "GetAnnouncements",
11941 ),
11942 );
11943 self.inner.unary(req, path, codec).await
11944 }
11945 pub async fn get_announcements_by_type(
11951 &mut self,
11952 request: impl tonic::IntoRequest<super::GetAnnouncementsByTypeRequest>,
11953 ) -> std::result::Result<
11954 tonic::Response<super::GetAnnouncementsByTypeResponse>,
11955 tonic::Status,
11956 > {
11957 self.inner
11958 .ready()
11959 .await
11960 .map_err(|e| {
11961 tonic::Status::new(
11962 tonic::Code::Unknown,
11963 format!("Service was not ready: {}", e.into()),
11964 )
11965 })?;
11966 let codec = tonic::codec::ProstCodec::default();
11967 let path = http::uri::PathAndQuery::from_static(
11968 "/aruna.api.storage.services.v2.StorageStatusService/GetAnnouncementsByType",
11969 );
11970 let mut req = request.into_request();
11971 req.extensions_mut()
11972 .insert(
11973 GrpcMethod::new(
11974 "aruna.api.storage.services.v2.StorageStatusService",
11975 "GetAnnouncementsByType",
11976 ),
11977 );
11978 self.inner.unary(req, path, codec).await
11979 }
11980 pub async fn get_announcement(
11986 &mut self,
11987 request: impl tonic::IntoRequest<super::GetAnnouncementRequest>,
11988 ) -> std::result::Result<
11989 tonic::Response<super::GetAnnouncementResponse>,
11990 tonic::Status,
11991 > {
11992 self.inner
11993 .ready()
11994 .await
11995 .map_err(|e| {
11996 tonic::Status::new(
11997 tonic::Code::Unknown,
11998 format!("Service was not ready: {}", e.into()),
11999 )
12000 })?;
12001 let codec = tonic::codec::ProstCodec::default();
12002 let path = http::uri::PathAndQuery::from_static(
12003 "/aruna.api.storage.services.v2.StorageStatusService/GetAnnouncement",
12004 );
12005 let mut req = request.into_request();
12006 req.extensions_mut()
12007 .insert(
12008 GrpcMethod::new(
12009 "aruna.api.storage.services.v2.StorageStatusService",
12010 "GetAnnouncement",
12011 ),
12012 );
12013 self.inner.unary(req, path, codec).await
12014 }
12015 pub async fn set_announcements(
12021 &mut self,
12022 request: impl tonic::IntoRequest<super::SetAnnouncementsRequest>,
12023 ) -> std::result::Result<
12024 tonic::Response<super::SetAnnouncementsResponse>,
12025 tonic::Status,
12026 > {
12027 self.inner
12028 .ready()
12029 .await
12030 .map_err(|e| {
12031 tonic::Status::new(
12032 tonic::Code::Unknown,
12033 format!("Service was not ready: {}", e.into()),
12034 )
12035 })?;
12036 let codec = tonic::codec::ProstCodec::default();
12037 let path = http::uri::PathAndQuery::from_static(
12038 "/aruna.api.storage.services.v2.StorageStatusService/SetAnnouncements",
12039 );
12040 let mut req = request.into_request();
12041 req.extensions_mut()
12042 .insert(
12043 GrpcMethod::new(
12044 "aruna.api.storage.services.v2.StorageStatusService",
12045 "SetAnnouncements",
12046 ),
12047 );
12048 self.inner.unary(req, path, codec).await
12049 }
12050 }
12051}
12052pub mod storage_status_service_server {
12054 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
12055 use tonic::codegen::*;
12056 #[async_trait]
12058 pub trait StorageStatusService: Send + Sync + 'static {
12059 async fn get_storage_version(
12066 &self,
12067 request: tonic::Request<super::GetStorageVersionRequest>,
12068 ) -> std::result::Result<
12069 tonic::Response<super::GetStorageVersionResponse>,
12070 tonic::Status,
12071 >;
12072 async fn get_storage_status(
12078 &self,
12079 request: tonic::Request<super::GetStorageStatusRequest>,
12080 ) -> std::result::Result<
12081 tonic::Response<super::GetStorageStatusResponse>,
12082 tonic::Status,
12083 >;
12084 async fn get_pubkeys(
12090 &self,
12091 request: tonic::Request<super::GetPubkeysRequest>,
12092 ) -> std::result::Result<
12093 tonic::Response<super::GetPubkeysResponse>,
12094 tonic::Status,
12095 >;
12096 async fn get_announcements(
12104 &self,
12105 request: tonic::Request<super::GetAnnouncementsRequest>,
12106 ) -> std::result::Result<
12107 tonic::Response<super::GetAnnouncementsResponse>,
12108 tonic::Status,
12109 >;
12110 async fn get_announcements_by_type(
12116 &self,
12117 request: tonic::Request<super::GetAnnouncementsByTypeRequest>,
12118 ) -> std::result::Result<
12119 tonic::Response<super::GetAnnouncementsByTypeResponse>,
12120 tonic::Status,
12121 >;
12122 async fn get_announcement(
12128 &self,
12129 request: tonic::Request<super::GetAnnouncementRequest>,
12130 ) -> std::result::Result<
12131 tonic::Response<super::GetAnnouncementResponse>,
12132 tonic::Status,
12133 >;
12134 async fn set_announcements(
12140 &self,
12141 request: tonic::Request<super::SetAnnouncementsRequest>,
12142 ) -> std::result::Result<
12143 tonic::Response<super::SetAnnouncementsResponse>,
12144 tonic::Status,
12145 >;
12146 }
12147 #[derive(Debug)]
12155 pub struct StorageStatusServiceServer<T: StorageStatusService> {
12156 inner: _Inner<T>,
12157 accept_compression_encodings: EnabledCompressionEncodings,
12158 send_compression_encodings: EnabledCompressionEncodings,
12159 max_decoding_message_size: Option<usize>,
12160 max_encoding_message_size: Option<usize>,
12161 }
12162 struct _Inner<T>(Arc<T>);
12163 impl<T: StorageStatusService> StorageStatusServiceServer<T> {
12164 pub fn new(inner: T) -> Self {
12165 Self::from_arc(Arc::new(inner))
12166 }
12167 pub fn from_arc(inner: Arc<T>) -> Self {
12168 let inner = _Inner(inner);
12169 Self {
12170 inner,
12171 accept_compression_encodings: Default::default(),
12172 send_compression_encodings: Default::default(),
12173 max_decoding_message_size: None,
12174 max_encoding_message_size: None,
12175 }
12176 }
12177 pub fn with_interceptor<F>(
12178 inner: T,
12179 interceptor: F,
12180 ) -> InterceptedService<Self, F>
12181 where
12182 F: tonic::service::Interceptor,
12183 {
12184 InterceptedService::new(Self::new(inner), interceptor)
12185 }
12186 #[must_use]
12188 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
12189 self.accept_compression_encodings.enable(encoding);
12190 self
12191 }
12192 #[must_use]
12194 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
12195 self.send_compression_encodings.enable(encoding);
12196 self
12197 }
12198 #[must_use]
12202 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
12203 self.max_decoding_message_size = Some(limit);
12204 self
12205 }
12206 #[must_use]
12210 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
12211 self.max_encoding_message_size = Some(limit);
12212 self
12213 }
12214 }
12215 impl<T, B> tonic::codegen::Service<http::Request<B>>
12216 for StorageStatusServiceServer<T>
12217 where
12218 T: StorageStatusService,
12219 B: Body + Send + 'static,
12220 B::Error: Into<StdError> + Send + 'static,
12221 {
12222 type Response = http::Response<tonic::body::BoxBody>;
12223 type Error = std::convert::Infallible;
12224 type Future = BoxFuture<Self::Response, Self::Error>;
12225 fn poll_ready(
12226 &mut self,
12227 _cx: &mut Context<'_>,
12228 ) -> Poll<std::result::Result<(), Self::Error>> {
12229 Poll::Ready(Ok(()))
12230 }
12231 fn call(&mut self, req: http::Request<B>) -> Self::Future {
12232 let inner = self.inner.clone();
12233 match req.uri().path() {
12234 "/aruna.api.storage.services.v2.StorageStatusService/GetStorageVersion" => {
12235 #[allow(non_camel_case_types)]
12236 struct GetStorageVersionSvc<T: StorageStatusService>(pub Arc<T>);
12237 impl<
12238 T: StorageStatusService,
12239 > tonic::server::UnaryService<super::GetStorageVersionRequest>
12240 for GetStorageVersionSvc<T> {
12241 type Response = super::GetStorageVersionResponse;
12242 type Future = BoxFuture<
12243 tonic::Response<Self::Response>,
12244 tonic::Status,
12245 >;
12246 fn call(
12247 &mut self,
12248 request: tonic::Request<super::GetStorageVersionRequest>,
12249 ) -> Self::Future {
12250 let inner = Arc::clone(&self.0);
12251 let fut = async move {
12252 <T as StorageStatusService>::get_storage_version(
12253 &inner,
12254 request,
12255 )
12256 .await
12257 };
12258 Box::pin(fut)
12259 }
12260 }
12261 let accept_compression_encodings = self.accept_compression_encodings;
12262 let send_compression_encodings = self.send_compression_encodings;
12263 let max_decoding_message_size = self.max_decoding_message_size;
12264 let max_encoding_message_size = self.max_encoding_message_size;
12265 let inner = self.inner.clone();
12266 let fut = async move {
12267 let inner = inner.0;
12268 let method = GetStorageVersionSvc(inner);
12269 let codec = tonic::codec::ProstCodec::default();
12270 let mut grpc = tonic::server::Grpc::new(codec)
12271 .apply_compression_config(
12272 accept_compression_encodings,
12273 send_compression_encodings,
12274 )
12275 .apply_max_message_size_config(
12276 max_decoding_message_size,
12277 max_encoding_message_size,
12278 );
12279 let res = grpc.unary(method, req).await;
12280 Ok(res)
12281 };
12282 Box::pin(fut)
12283 }
12284 "/aruna.api.storage.services.v2.StorageStatusService/GetStorageStatus" => {
12285 #[allow(non_camel_case_types)]
12286 struct GetStorageStatusSvc<T: StorageStatusService>(pub Arc<T>);
12287 impl<
12288 T: StorageStatusService,
12289 > tonic::server::UnaryService<super::GetStorageStatusRequest>
12290 for GetStorageStatusSvc<T> {
12291 type Response = super::GetStorageStatusResponse;
12292 type Future = BoxFuture<
12293 tonic::Response<Self::Response>,
12294 tonic::Status,
12295 >;
12296 fn call(
12297 &mut self,
12298 request: tonic::Request<super::GetStorageStatusRequest>,
12299 ) -> Self::Future {
12300 let inner = Arc::clone(&self.0);
12301 let fut = async move {
12302 <T as StorageStatusService>::get_storage_status(
12303 &inner,
12304 request,
12305 )
12306 .await
12307 };
12308 Box::pin(fut)
12309 }
12310 }
12311 let accept_compression_encodings = self.accept_compression_encodings;
12312 let send_compression_encodings = self.send_compression_encodings;
12313 let max_decoding_message_size = self.max_decoding_message_size;
12314 let max_encoding_message_size = self.max_encoding_message_size;
12315 let inner = self.inner.clone();
12316 let fut = async move {
12317 let inner = inner.0;
12318 let method = GetStorageStatusSvc(inner);
12319 let codec = tonic::codec::ProstCodec::default();
12320 let mut grpc = tonic::server::Grpc::new(codec)
12321 .apply_compression_config(
12322 accept_compression_encodings,
12323 send_compression_encodings,
12324 )
12325 .apply_max_message_size_config(
12326 max_decoding_message_size,
12327 max_encoding_message_size,
12328 );
12329 let res = grpc.unary(method, req).await;
12330 Ok(res)
12331 };
12332 Box::pin(fut)
12333 }
12334 "/aruna.api.storage.services.v2.StorageStatusService/GetPubkeys" => {
12335 #[allow(non_camel_case_types)]
12336 struct GetPubkeysSvc<T: StorageStatusService>(pub Arc<T>);
12337 impl<
12338 T: StorageStatusService,
12339 > tonic::server::UnaryService<super::GetPubkeysRequest>
12340 for GetPubkeysSvc<T> {
12341 type Response = super::GetPubkeysResponse;
12342 type Future = BoxFuture<
12343 tonic::Response<Self::Response>,
12344 tonic::Status,
12345 >;
12346 fn call(
12347 &mut self,
12348 request: tonic::Request<super::GetPubkeysRequest>,
12349 ) -> Self::Future {
12350 let inner = Arc::clone(&self.0);
12351 let fut = async move {
12352 <T as StorageStatusService>::get_pubkeys(&inner, request)
12353 .await
12354 };
12355 Box::pin(fut)
12356 }
12357 }
12358 let accept_compression_encodings = self.accept_compression_encodings;
12359 let send_compression_encodings = self.send_compression_encodings;
12360 let max_decoding_message_size = self.max_decoding_message_size;
12361 let max_encoding_message_size = self.max_encoding_message_size;
12362 let inner = self.inner.clone();
12363 let fut = async move {
12364 let inner = inner.0;
12365 let method = GetPubkeysSvc(inner);
12366 let codec = tonic::codec::ProstCodec::default();
12367 let mut grpc = tonic::server::Grpc::new(codec)
12368 .apply_compression_config(
12369 accept_compression_encodings,
12370 send_compression_encodings,
12371 )
12372 .apply_max_message_size_config(
12373 max_decoding_message_size,
12374 max_encoding_message_size,
12375 );
12376 let res = grpc.unary(method, req).await;
12377 Ok(res)
12378 };
12379 Box::pin(fut)
12380 }
12381 "/aruna.api.storage.services.v2.StorageStatusService/GetAnnouncements" => {
12382 #[allow(non_camel_case_types)]
12383 struct GetAnnouncementsSvc<T: StorageStatusService>(pub Arc<T>);
12384 impl<
12385 T: StorageStatusService,
12386 > tonic::server::UnaryService<super::GetAnnouncementsRequest>
12387 for GetAnnouncementsSvc<T> {
12388 type Response = super::GetAnnouncementsResponse;
12389 type Future = BoxFuture<
12390 tonic::Response<Self::Response>,
12391 tonic::Status,
12392 >;
12393 fn call(
12394 &mut self,
12395 request: tonic::Request<super::GetAnnouncementsRequest>,
12396 ) -> Self::Future {
12397 let inner = Arc::clone(&self.0);
12398 let fut = async move {
12399 <T as StorageStatusService>::get_announcements(
12400 &inner,
12401 request,
12402 )
12403 .await
12404 };
12405 Box::pin(fut)
12406 }
12407 }
12408 let accept_compression_encodings = self.accept_compression_encodings;
12409 let send_compression_encodings = self.send_compression_encodings;
12410 let max_decoding_message_size = self.max_decoding_message_size;
12411 let max_encoding_message_size = self.max_encoding_message_size;
12412 let inner = self.inner.clone();
12413 let fut = async move {
12414 let inner = inner.0;
12415 let method = GetAnnouncementsSvc(inner);
12416 let codec = tonic::codec::ProstCodec::default();
12417 let mut grpc = tonic::server::Grpc::new(codec)
12418 .apply_compression_config(
12419 accept_compression_encodings,
12420 send_compression_encodings,
12421 )
12422 .apply_max_message_size_config(
12423 max_decoding_message_size,
12424 max_encoding_message_size,
12425 );
12426 let res = grpc.unary(method, req).await;
12427 Ok(res)
12428 };
12429 Box::pin(fut)
12430 }
12431 "/aruna.api.storage.services.v2.StorageStatusService/GetAnnouncementsByType" => {
12432 #[allow(non_camel_case_types)]
12433 struct GetAnnouncementsByTypeSvc<T: StorageStatusService>(
12434 pub Arc<T>,
12435 );
12436 impl<
12437 T: StorageStatusService,
12438 > tonic::server::UnaryService<super::GetAnnouncementsByTypeRequest>
12439 for GetAnnouncementsByTypeSvc<T> {
12440 type Response = super::GetAnnouncementsByTypeResponse;
12441 type Future = BoxFuture<
12442 tonic::Response<Self::Response>,
12443 tonic::Status,
12444 >;
12445 fn call(
12446 &mut self,
12447 request: tonic::Request<super::GetAnnouncementsByTypeRequest>,
12448 ) -> Self::Future {
12449 let inner = Arc::clone(&self.0);
12450 let fut = async move {
12451 <T as StorageStatusService>::get_announcements_by_type(
12452 &inner,
12453 request,
12454 )
12455 .await
12456 };
12457 Box::pin(fut)
12458 }
12459 }
12460 let accept_compression_encodings = self.accept_compression_encodings;
12461 let send_compression_encodings = self.send_compression_encodings;
12462 let max_decoding_message_size = self.max_decoding_message_size;
12463 let max_encoding_message_size = self.max_encoding_message_size;
12464 let inner = self.inner.clone();
12465 let fut = async move {
12466 let inner = inner.0;
12467 let method = GetAnnouncementsByTypeSvc(inner);
12468 let codec = tonic::codec::ProstCodec::default();
12469 let mut grpc = tonic::server::Grpc::new(codec)
12470 .apply_compression_config(
12471 accept_compression_encodings,
12472 send_compression_encodings,
12473 )
12474 .apply_max_message_size_config(
12475 max_decoding_message_size,
12476 max_encoding_message_size,
12477 );
12478 let res = grpc.unary(method, req).await;
12479 Ok(res)
12480 };
12481 Box::pin(fut)
12482 }
12483 "/aruna.api.storage.services.v2.StorageStatusService/GetAnnouncement" => {
12484 #[allow(non_camel_case_types)]
12485 struct GetAnnouncementSvc<T: StorageStatusService>(pub Arc<T>);
12486 impl<
12487 T: StorageStatusService,
12488 > tonic::server::UnaryService<super::GetAnnouncementRequest>
12489 for GetAnnouncementSvc<T> {
12490 type Response = super::GetAnnouncementResponse;
12491 type Future = BoxFuture<
12492 tonic::Response<Self::Response>,
12493 tonic::Status,
12494 >;
12495 fn call(
12496 &mut self,
12497 request: tonic::Request<super::GetAnnouncementRequest>,
12498 ) -> Self::Future {
12499 let inner = Arc::clone(&self.0);
12500 let fut = async move {
12501 <T as StorageStatusService>::get_announcement(
12502 &inner,
12503 request,
12504 )
12505 .await
12506 };
12507 Box::pin(fut)
12508 }
12509 }
12510 let accept_compression_encodings = self.accept_compression_encodings;
12511 let send_compression_encodings = self.send_compression_encodings;
12512 let max_decoding_message_size = self.max_decoding_message_size;
12513 let max_encoding_message_size = self.max_encoding_message_size;
12514 let inner = self.inner.clone();
12515 let fut = async move {
12516 let inner = inner.0;
12517 let method = GetAnnouncementSvc(inner);
12518 let codec = tonic::codec::ProstCodec::default();
12519 let mut grpc = tonic::server::Grpc::new(codec)
12520 .apply_compression_config(
12521 accept_compression_encodings,
12522 send_compression_encodings,
12523 )
12524 .apply_max_message_size_config(
12525 max_decoding_message_size,
12526 max_encoding_message_size,
12527 );
12528 let res = grpc.unary(method, req).await;
12529 Ok(res)
12530 };
12531 Box::pin(fut)
12532 }
12533 "/aruna.api.storage.services.v2.StorageStatusService/SetAnnouncements" => {
12534 #[allow(non_camel_case_types)]
12535 struct SetAnnouncementsSvc<T: StorageStatusService>(pub Arc<T>);
12536 impl<
12537 T: StorageStatusService,
12538 > tonic::server::UnaryService<super::SetAnnouncementsRequest>
12539 for SetAnnouncementsSvc<T> {
12540 type Response = super::SetAnnouncementsResponse;
12541 type Future = BoxFuture<
12542 tonic::Response<Self::Response>,
12543 tonic::Status,
12544 >;
12545 fn call(
12546 &mut self,
12547 request: tonic::Request<super::SetAnnouncementsRequest>,
12548 ) -> Self::Future {
12549 let inner = Arc::clone(&self.0);
12550 let fut = async move {
12551 <T as StorageStatusService>::set_announcements(
12552 &inner,
12553 request,
12554 )
12555 .await
12556 };
12557 Box::pin(fut)
12558 }
12559 }
12560 let accept_compression_encodings = self.accept_compression_encodings;
12561 let send_compression_encodings = self.send_compression_encodings;
12562 let max_decoding_message_size = self.max_decoding_message_size;
12563 let max_encoding_message_size = self.max_encoding_message_size;
12564 let inner = self.inner.clone();
12565 let fut = async move {
12566 let inner = inner.0;
12567 let method = SetAnnouncementsSvc(inner);
12568 let codec = tonic::codec::ProstCodec::default();
12569 let mut grpc = tonic::server::Grpc::new(codec)
12570 .apply_compression_config(
12571 accept_compression_encodings,
12572 send_compression_encodings,
12573 )
12574 .apply_max_message_size_config(
12575 max_decoding_message_size,
12576 max_encoding_message_size,
12577 );
12578 let res = grpc.unary(method, req).await;
12579 Ok(res)
12580 };
12581 Box::pin(fut)
12582 }
12583 _ => {
12584 Box::pin(async move {
12585 Ok(
12586 http::Response::builder()
12587 .status(200)
12588 .header("grpc-status", "12")
12589 .header("content-type", "application/grpc")
12590 .body(empty_body())
12591 .unwrap(),
12592 )
12593 })
12594 }
12595 }
12596 }
12597 }
12598 impl<T: StorageStatusService> Clone for StorageStatusServiceServer<T> {
12599 fn clone(&self) -> Self {
12600 let inner = self.inner.clone();
12601 Self {
12602 inner,
12603 accept_compression_encodings: self.accept_compression_encodings,
12604 send_compression_encodings: self.send_compression_encodings,
12605 max_decoding_message_size: self.max_decoding_message_size,
12606 max_encoding_message_size: self.max_encoding_message_size,
12607 }
12608 }
12609 }
12610 impl<T: StorageStatusService> Clone for _Inner<T> {
12611 fn clone(&self) -> Self {
12612 Self(Arc::clone(&self.0))
12613 }
12614 }
12615 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
12616 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
12617 write!(f, "{:?}", self.0)
12618 }
12619 }
12620 impl<T: StorageStatusService> tonic::server::NamedService
12621 for StorageStatusServiceServer<T> {
12622 const NAME: &'static str = "aruna.api.storage.services.v2.StorageStatusService";
12623 }
12624}
12625#[derive(serde::Deserialize, serde::Serialize)]
12626#[allow(clippy::derive_partial_eq_without_eq)]
12627#[derive(Clone, PartialEq, ::prost::Message)]
12628pub struct UserPermission {
12629 #[prost(string, tag = "1")]
12630 pub user_id: ::prost::alloc::string::String,
12631 #[prost(string, tag = "2")]
12632 pub user_name: ::prost::alloc::string::String,
12633 #[prost(enumeration = "super::super::models::v2::PermissionLevel", tag = "3")]
12634 pub permission_level: i32,
12635}
12636#[derive(serde::Deserialize, serde::Serialize)]
12637#[allow(clippy::derive_partial_eq_without_eq)]
12638#[derive(Clone, PartialEq, ::prost::Message)]
12639pub struct ResourceAuthorization {
12640 #[prost(string, tag = "1")]
12641 pub resource_id: ::prost::alloc::string::String,
12642 #[prost(message, repeated, tag = "2")]
12643 pub user_permission: ::prost::alloc::vec::Vec<UserPermission>,
12644}
12645#[derive(serde::Deserialize, serde::Serialize)]
12646#[allow(clippy::derive_partial_eq_without_eq)]
12647#[derive(Clone, PartialEq, ::prost::Message)]
12648pub struct CreateAuthorizationRequest {
12649 #[prost(string, tag = "1")]
12650 pub resource_id: ::prost::alloc::string::String,
12651 #[prost(string, tag = "2")]
12652 pub user_id: ::prost::alloc::string::String,
12653 #[prost(enumeration = "super::super::models::v2::PermissionLevel", tag = "3")]
12655 pub permission_level: i32,
12656}
12657#[derive(serde::Deserialize, serde::Serialize)]
12658#[allow(clippy::derive_partial_eq_without_eq)]
12659#[derive(Clone, PartialEq, ::prost::Message)]
12660pub struct CreateAuthorizationResponse {
12661 #[prost(string, tag = "1")]
12662 pub resource_id: ::prost::alloc::string::String,
12663 #[prost(string, tag = "2")]
12664 pub user_id: ::prost::alloc::string::String,
12665 #[prost(string, tag = "3")]
12666 pub user_name: ::prost::alloc::string::String,
12667 #[prost(enumeration = "super::super::models::v2::PermissionLevel", tag = "4")]
12668 pub permission_level: i32,
12669}
12670#[derive(serde::Deserialize, serde::Serialize)]
12671#[allow(clippy::derive_partial_eq_without_eq)]
12672#[derive(Clone, PartialEq, ::prost::Message)]
12673pub struct GetAuthorizationsRequest {
12674 #[prost(string, tag = "1")]
12675 pub resource_id: ::prost::alloc::string::String,
12676 #[prost(bool, tag = "2")]
12677 pub recursive: bool,
12678}
12679#[derive(serde::Deserialize, serde::Serialize)]
12680#[allow(clippy::derive_partial_eq_without_eq)]
12681#[derive(Clone, PartialEq, ::prost::Message)]
12682pub struct GetAuthorizationsResponse {
12683 #[prost(message, repeated, tag = "1")]
12684 pub authorizations: ::prost::alloc::vec::Vec<ResourceAuthorization>,
12685}
12686#[derive(serde::Deserialize, serde::Serialize)]
12687#[allow(clippy::derive_partial_eq_without_eq)]
12688#[derive(Clone, PartialEq, ::prost::Message)]
12689pub struct DeleteAuthorizationRequest {
12690 #[prost(string, tag = "1")]
12691 pub resource_id: ::prost::alloc::string::String,
12692 #[prost(string, tag = "2")]
12693 pub user_id: ::prost::alloc::string::String,
12694}
12695#[derive(serde::Deserialize, serde::Serialize)]
12696#[allow(clippy::derive_partial_eq_without_eq)]
12697#[derive(Clone, PartialEq, ::prost::Message)]
12698pub struct DeleteAuthorizationResponse {}
12699#[derive(serde::Deserialize, serde::Serialize)]
12700#[allow(clippy::derive_partial_eq_without_eq)]
12701#[derive(Clone, PartialEq, ::prost::Message)]
12702pub struct UpdateAuthorizationRequest {
12703 #[prost(string, tag = "1")]
12704 pub resource_id: ::prost::alloc::string::String,
12705 #[prost(string, tag = "2")]
12706 pub user_id: ::prost::alloc::string::String,
12707 #[prost(enumeration = "super::super::models::v2::PermissionLevel", tag = "3")]
12708 pub permission_level: i32,
12709}
12710#[derive(serde::Deserialize, serde::Serialize)]
12711#[allow(clippy::derive_partial_eq_without_eq)]
12712#[derive(Clone, PartialEq, ::prost::Message)]
12713pub struct UpdateAuthorizationResponse {
12714 #[prost(message, optional, tag = "1")]
12715 pub user_permission: ::core::option::Option<UserPermission>,
12716}
12717pub mod authorization_service_client {
12719 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
12720 use tonic::codegen::*;
12721 use tonic::codegen::http::Uri;
12722 #[derive(Debug, Clone)]
12728 pub struct AuthorizationServiceClient<T> {
12729 inner: tonic::client::Grpc<T>,
12730 }
12731 impl AuthorizationServiceClient<tonic::transport::Channel> {
12732 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
12734 where
12735 D: TryInto<tonic::transport::Endpoint>,
12736 D::Error: Into<StdError>,
12737 {
12738 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
12739 Ok(Self::new(conn))
12740 }
12741 }
12742 impl<T> AuthorizationServiceClient<T>
12743 where
12744 T: tonic::client::GrpcService<tonic::body::BoxBody>,
12745 T::Error: Into<StdError>,
12746 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
12747 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
12748 {
12749 pub fn new(inner: T) -> Self {
12750 let inner = tonic::client::Grpc::new(inner);
12751 Self { inner }
12752 }
12753 pub fn with_origin(inner: T, origin: Uri) -> Self {
12754 let inner = tonic::client::Grpc::with_origin(inner, origin);
12755 Self { inner }
12756 }
12757 pub fn with_interceptor<F>(
12758 inner: T,
12759 interceptor: F,
12760 ) -> AuthorizationServiceClient<InterceptedService<T, F>>
12761 where
12762 F: tonic::service::Interceptor,
12763 T::ResponseBody: Default,
12764 T: tonic::codegen::Service<
12765 http::Request<tonic::body::BoxBody>,
12766 Response = http::Response<
12767 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
12768 >,
12769 >,
12770 <T as tonic::codegen::Service<
12771 http::Request<tonic::body::BoxBody>,
12772 >>::Error: Into<StdError> + Send + Sync,
12773 {
12774 AuthorizationServiceClient::new(InterceptedService::new(inner, interceptor))
12775 }
12776 #[must_use]
12781 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
12782 self.inner = self.inner.send_compressed(encoding);
12783 self
12784 }
12785 #[must_use]
12787 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
12788 self.inner = self.inner.accept_compressed(encoding);
12789 self
12790 }
12791 #[must_use]
12795 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
12796 self.inner = self.inner.max_decoding_message_size(limit);
12797 self
12798 }
12799 #[must_use]
12803 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
12804 self.inner = self.inner.max_encoding_message_size(limit);
12805 self
12806 }
12807 pub async fn create_authorization(
12814 &mut self,
12815 request: impl tonic::IntoRequest<super::CreateAuthorizationRequest>,
12816 ) -> std::result::Result<
12817 tonic::Response<super::CreateAuthorizationResponse>,
12818 tonic::Status,
12819 > {
12820 self.inner
12821 .ready()
12822 .await
12823 .map_err(|e| {
12824 tonic::Status::new(
12825 tonic::Code::Unknown,
12826 format!("Service was not ready: {}", e.into()),
12827 )
12828 })?;
12829 let codec = tonic::codec::ProstCodec::default();
12830 let path = http::uri::PathAndQuery::from_static(
12831 "/aruna.api.storage.services.v2.AuthorizationService/CreateAuthorization",
12832 );
12833 let mut req = request.into_request();
12834 req.extensions_mut()
12835 .insert(
12836 GrpcMethod::new(
12837 "aruna.api.storage.services.v2.AuthorizationService",
12838 "CreateAuthorization",
12839 ),
12840 );
12841 self.inner.unary(req, path, codec).await
12842 }
12843 pub async fn get_authorizations(
12849 &mut self,
12850 request: impl tonic::IntoRequest<super::GetAuthorizationsRequest>,
12851 ) -> std::result::Result<
12852 tonic::Response<super::GetAuthorizationsResponse>,
12853 tonic::Status,
12854 > {
12855 self.inner
12856 .ready()
12857 .await
12858 .map_err(|e| {
12859 tonic::Status::new(
12860 tonic::Code::Unknown,
12861 format!("Service was not ready: {}", e.into()),
12862 )
12863 })?;
12864 let codec = tonic::codec::ProstCodec::default();
12865 let path = http::uri::PathAndQuery::from_static(
12866 "/aruna.api.storage.services.v2.AuthorizationService/GetAuthorizations",
12867 );
12868 let mut req = request.into_request();
12869 req.extensions_mut()
12870 .insert(
12871 GrpcMethod::new(
12872 "aruna.api.storage.services.v2.AuthorizationService",
12873 "GetAuthorizations",
12874 ),
12875 );
12876 self.inner.unary(req, path, codec).await
12877 }
12878 pub async fn delete_authorization(
12885 &mut self,
12886 request: impl tonic::IntoRequest<super::DeleteAuthorizationRequest>,
12887 ) -> std::result::Result<
12888 tonic::Response<super::DeleteAuthorizationResponse>,
12889 tonic::Status,
12890 > {
12891 self.inner
12892 .ready()
12893 .await
12894 .map_err(|e| {
12895 tonic::Status::new(
12896 tonic::Code::Unknown,
12897 format!("Service was not ready: {}", e.into()),
12898 )
12899 })?;
12900 let codec = tonic::codec::ProstCodec::default();
12901 let path = http::uri::PathAndQuery::from_static(
12902 "/aruna.api.storage.services.v2.AuthorizationService/DeleteAuthorization",
12903 );
12904 let mut req = request.into_request();
12905 req.extensions_mut()
12906 .insert(
12907 GrpcMethod::new(
12908 "aruna.api.storage.services.v2.AuthorizationService",
12909 "DeleteAuthorization",
12910 ),
12911 );
12912 self.inner.unary(req, path, codec).await
12913 }
12914 pub async fn update_authorization(
12921 &mut self,
12922 request: impl tonic::IntoRequest<super::UpdateAuthorizationRequest>,
12923 ) -> std::result::Result<
12924 tonic::Response<super::UpdateAuthorizationResponse>,
12925 tonic::Status,
12926 > {
12927 self.inner
12928 .ready()
12929 .await
12930 .map_err(|e| {
12931 tonic::Status::new(
12932 tonic::Code::Unknown,
12933 format!("Service was not ready: {}", e.into()),
12934 )
12935 })?;
12936 let codec = tonic::codec::ProstCodec::default();
12937 let path = http::uri::PathAndQuery::from_static(
12938 "/aruna.api.storage.services.v2.AuthorizationService/UpdateAuthorization",
12939 );
12940 let mut req = request.into_request();
12941 req.extensions_mut()
12942 .insert(
12943 GrpcMethod::new(
12944 "aruna.api.storage.services.v2.AuthorizationService",
12945 "UpdateAuthorization",
12946 ),
12947 );
12948 self.inner.unary(req, path, codec).await
12949 }
12950 }
12951}
12952pub mod authorization_service_server {
12954 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
12955 use tonic::codegen::*;
12956 #[async_trait]
12958 pub trait AuthorizationService: Send + Sync + 'static {
12959 async fn create_authorization(
12966 &self,
12967 request: tonic::Request<super::CreateAuthorizationRequest>,
12968 ) -> std::result::Result<
12969 tonic::Response<super::CreateAuthorizationResponse>,
12970 tonic::Status,
12971 >;
12972 async fn get_authorizations(
12978 &self,
12979 request: tonic::Request<super::GetAuthorizationsRequest>,
12980 ) -> std::result::Result<
12981 tonic::Response<super::GetAuthorizationsResponse>,
12982 tonic::Status,
12983 >;
12984 async fn delete_authorization(
12991 &self,
12992 request: tonic::Request<super::DeleteAuthorizationRequest>,
12993 ) -> std::result::Result<
12994 tonic::Response<super::DeleteAuthorizationResponse>,
12995 tonic::Status,
12996 >;
12997 async fn update_authorization(
13004 &self,
13005 request: tonic::Request<super::UpdateAuthorizationRequest>,
13006 ) -> std::result::Result<
13007 tonic::Response<super::UpdateAuthorizationResponse>,
13008 tonic::Status,
13009 >;
13010 }
13011 #[derive(Debug)]
13017 pub struct AuthorizationServiceServer<T: AuthorizationService> {
13018 inner: _Inner<T>,
13019 accept_compression_encodings: EnabledCompressionEncodings,
13020 send_compression_encodings: EnabledCompressionEncodings,
13021 max_decoding_message_size: Option<usize>,
13022 max_encoding_message_size: Option<usize>,
13023 }
13024 struct _Inner<T>(Arc<T>);
13025 impl<T: AuthorizationService> AuthorizationServiceServer<T> {
13026 pub fn new(inner: T) -> Self {
13027 Self::from_arc(Arc::new(inner))
13028 }
13029 pub fn from_arc(inner: Arc<T>) -> Self {
13030 let inner = _Inner(inner);
13031 Self {
13032 inner,
13033 accept_compression_encodings: Default::default(),
13034 send_compression_encodings: Default::default(),
13035 max_decoding_message_size: None,
13036 max_encoding_message_size: None,
13037 }
13038 }
13039 pub fn with_interceptor<F>(
13040 inner: T,
13041 interceptor: F,
13042 ) -> InterceptedService<Self, F>
13043 where
13044 F: tonic::service::Interceptor,
13045 {
13046 InterceptedService::new(Self::new(inner), interceptor)
13047 }
13048 #[must_use]
13050 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
13051 self.accept_compression_encodings.enable(encoding);
13052 self
13053 }
13054 #[must_use]
13056 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
13057 self.send_compression_encodings.enable(encoding);
13058 self
13059 }
13060 #[must_use]
13064 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
13065 self.max_decoding_message_size = Some(limit);
13066 self
13067 }
13068 #[must_use]
13072 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
13073 self.max_encoding_message_size = Some(limit);
13074 self
13075 }
13076 }
13077 impl<T, B> tonic::codegen::Service<http::Request<B>>
13078 for AuthorizationServiceServer<T>
13079 where
13080 T: AuthorizationService,
13081 B: Body + Send + 'static,
13082 B::Error: Into<StdError> + Send + 'static,
13083 {
13084 type Response = http::Response<tonic::body::BoxBody>;
13085 type Error = std::convert::Infallible;
13086 type Future = BoxFuture<Self::Response, Self::Error>;
13087 fn poll_ready(
13088 &mut self,
13089 _cx: &mut Context<'_>,
13090 ) -> Poll<std::result::Result<(), Self::Error>> {
13091 Poll::Ready(Ok(()))
13092 }
13093 fn call(&mut self, req: http::Request<B>) -> Self::Future {
13094 let inner = self.inner.clone();
13095 match req.uri().path() {
13096 "/aruna.api.storage.services.v2.AuthorizationService/CreateAuthorization" => {
13097 #[allow(non_camel_case_types)]
13098 struct CreateAuthorizationSvc<T: AuthorizationService>(pub Arc<T>);
13099 impl<
13100 T: AuthorizationService,
13101 > tonic::server::UnaryService<super::CreateAuthorizationRequest>
13102 for CreateAuthorizationSvc<T> {
13103 type Response = super::CreateAuthorizationResponse;
13104 type Future = BoxFuture<
13105 tonic::Response<Self::Response>,
13106 tonic::Status,
13107 >;
13108 fn call(
13109 &mut self,
13110 request: tonic::Request<super::CreateAuthorizationRequest>,
13111 ) -> Self::Future {
13112 let inner = Arc::clone(&self.0);
13113 let fut = async move {
13114 <T as AuthorizationService>::create_authorization(
13115 &inner,
13116 request,
13117 )
13118 .await
13119 };
13120 Box::pin(fut)
13121 }
13122 }
13123 let accept_compression_encodings = self.accept_compression_encodings;
13124 let send_compression_encodings = self.send_compression_encodings;
13125 let max_decoding_message_size = self.max_decoding_message_size;
13126 let max_encoding_message_size = self.max_encoding_message_size;
13127 let inner = self.inner.clone();
13128 let fut = async move {
13129 let inner = inner.0;
13130 let method = CreateAuthorizationSvc(inner);
13131 let codec = tonic::codec::ProstCodec::default();
13132 let mut grpc = tonic::server::Grpc::new(codec)
13133 .apply_compression_config(
13134 accept_compression_encodings,
13135 send_compression_encodings,
13136 )
13137 .apply_max_message_size_config(
13138 max_decoding_message_size,
13139 max_encoding_message_size,
13140 );
13141 let res = grpc.unary(method, req).await;
13142 Ok(res)
13143 };
13144 Box::pin(fut)
13145 }
13146 "/aruna.api.storage.services.v2.AuthorizationService/GetAuthorizations" => {
13147 #[allow(non_camel_case_types)]
13148 struct GetAuthorizationsSvc<T: AuthorizationService>(pub Arc<T>);
13149 impl<
13150 T: AuthorizationService,
13151 > tonic::server::UnaryService<super::GetAuthorizationsRequest>
13152 for GetAuthorizationsSvc<T> {
13153 type Response = super::GetAuthorizationsResponse;
13154 type Future = BoxFuture<
13155 tonic::Response<Self::Response>,
13156 tonic::Status,
13157 >;
13158 fn call(
13159 &mut self,
13160 request: tonic::Request<super::GetAuthorizationsRequest>,
13161 ) -> Self::Future {
13162 let inner = Arc::clone(&self.0);
13163 let fut = async move {
13164 <T as AuthorizationService>::get_authorizations(
13165 &inner,
13166 request,
13167 )
13168 .await
13169 };
13170 Box::pin(fut)
13171 }
13172 }
13173 let accept_compression_encodings = self.accept_compression_encodings;
13174 let send_compression_encodings = self.send_compression_encodings;
13175 let max_decoding_message_size = self.max_decoding_message_size;
13176 let max_encoding_message_size = self.max_encoding_message_size;
13177 let inner = self.inner.clone();
13178 let fut = async move {
13179 let inner = inner.0;
13180 let method = GetAuthorizationsSvc(inner);
13181 let codec = tonic::codec::ProstCodec::default();
13182 let mut grpc = tonic::server::Grpc::new(codec)
13183 .apply_compression_config(
13184 accept_compression_encodings,
13185 send_compression_encodings,
13186 )
13187 .apply_max_message_size_config(
13188 max_decoding_message_size,
13189 max_encoding_message_size,
13190 );
13191 let res = grpc.unary(method, req).await;
13192 Ok(res)
13193 };
13194 Box::pin(fut)
13195 }
13196 "/aruna.api.storage.services.v2.AuthorizationService/DeleteAuthorization" => {
13197 #[allow(non_camel_case_types)]
13198 struct DeleteAuthorizationSvc<T: AuthorizationService>(pub Arc<T>);
13199 impl<
13200 T: AuthorizationService,
13201 > tonic::server::UnaryService<super::DeleteAuthorizationRequest>
13202 for DeleteAuthorizationSvc<T> {
13203 type Response = super::DeleteAuthorizationResponse;
13204 type Future = BoxFuture<
13205 tonic::Response<Self::Response>,
13206 tonic::Status,
13207 >;
13208 fn call(
13209 &mut self,
13210 request: tonic::Request<super::DeleteAuthorizationRequest>,
13211 ) -> Self::Future {
13212 let inner = Arc::clone(&self.0);
13213 let fut = async move {
13214 <T as AuthorizationService>::delete_authorization(
13215 &inner,
13216 request,
13217 )
13218 .await
13219 };
13220 Box::pin(fut)
13221 }
13222 }
13223 let accept_compression_encodings = self.accept_compression_encodings;
13224 let send_compression_encodings = self.send_compression_encodings;
13225 let max_decoding_message_size = self.max_decoding_message_size;
13226 let max_encoding_message_size = self.max_encoding_message_size;
13227 let inner = self.inner.clone();
13228 let fut = async move {
13229 let inner = inner.0;
13230 let method = DeleteAuthorizationSvc(inner);
13231 let codec = tonic::codec::ProstCodec::default();
13232 let mut grpc = tonic::server::Grpc::new(codec)
13233 .apply_compression_config(
13234 accept_compression_encodings,
13235 send_compression_encodings,
13236 )
13237 .apply_max_message_size_config(
13238 max_decoding_message_size,
13239 max_encoding_message_size,
13240 );
13241 let res = grpc.unary(method, req).await;
13242 Ok(res)
13243 };
13244 Box::pin(fut)
13245 }
13246 "/aruna.api.storage.services.v2.AuthorizationService/UpdateAuthorization" => {
13247 #[allow(non_camel_case_types)]
13248 struct UpdateAuthorizationSvc<T: AuthorizationService>(pub Arc<T>);
13249 impl<
13250 T: AuthorizationService,
13251 > tonic::server::UnaryService<super::UpdateAuthorizationRequest>
13252 for UpdateAuthorizationSvc<T> {
13253 type Response = super::UpdateAuthorizationResponse;
13254 type Future = BoxFuture<
13255 tonic::Response<Self::Response>,
13256 tonic::Status,
13257 >;
13258 fn call(
13259 &mut self,
13260 request: tonic::Request<super::UpdateAuthorizationRequest>,
13261 ) -> Self::Future {
13262 let inner = Arc::clone(&self.0);
13263 let fut = async move {
13264 <T as AuthorizationService>::update_authorization(
13265 &inner,
13266 request,
13267 )
13268 .await
13269 };
13270 Box::pin(fut)
13271 }
13272 }
13273 let accept_compression_encodings = self.accept_compression_encodings;
13274 let send_compression_encodings = self.send_compression_encodings;
13275 let max_decoding_message_size = self.max_decoding_message_size;
13276 let max_encoding_message_size = self.max_encoding_message_size;
13277 let inner = self.inner.clone();
13278 let fut = async move {
13279 let inner = inner.0;
13280 let method = UpdateAuthorizationSvc(inner);
13281 let codec = tonic::codec::ProstCodec::default();
13282 let mut grpc = tonic::server::Grpc::new(codec)
13283 .apply_compression_config(
13284 accept_compression_encodings,
13285 send_compression_encodings,
13286 )
13287 .apply_max_message_size_config(
13288 max_decoding_message_size,
13289 max_encoding_message_size,
13290 );
13291 let res = grpc.unary(method, req).await;
13292 Ok(res)
13293 };
13294 Box::pin(fut)
13295 }
13296 _ => {
13297 Box::pin(async move {
13298 Ok(
13299 http::Response::builder()
13300 .status(200)
13301 .header("grpc-status", "12")
13302 .header("content-type", "application/grpc")
13303 .body(empty_body())
13304 .unwrap(),
13305 )
13306 })
13307 }
13308 }
13309 }
13310 }
13311 impl<T: AuthorizationService> Clone for AuthorizationServiceServer<T> {
13312 fn clone(&self) -> Self {
13313 let inner = self.inner.clone();
13314 Self {
13315 inner,
13316 accept_compression_encodings: self.accept_compression_encodings,
13317 send_compression_encodings: self.send_compression_encodings,
13318 max_decoding_message_size: self.max_decoding_message_size,
13319 max_encoding_message_size: self.max_encoding_message_size,
13320 }
13321 }
13322 }
13323 impl<T: AuthorizationService> Clone for _Inner<T> {
13324 fn clone(&self) -> Self {
13325 Self(Arc::clone(&self.0))
13326 }
13327 }
13328 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
13329 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
13330 write!(f, "{:?}", self.0)
13331 }
13332 }
13333 impl<T: AuthorizationService> tonic::server::NamedService
13334 for AuthorizationServiceServer<T> {
13335 const NAME: &'static str = "aruna.api.storage.services.v2.AuthorizationService";
13336 }
13337}
13338#[derive(serde::Deserialize, serde::Serialize)]
13339#[allow(clippy::derive_partial_eq_without_eq)]
13340#[derive(Clone, PartialEq, ::prost::Message)]
13341pub struct SearchResourcesRequest {
13342 #[prost(string, tag = "1")]
13343 pub query: ::prost::alloc::string::String,
13344 #[prost(string, tag = "2")]
13345 pub filter: ::prost::alloc::string::String,
13346 #[prost(int64, tag = "3")]
13347 pub limit: i64,
13348 #[prost(int64, tag = "4")]
13349 pub offset: i64,
13350}
13351#[derive(serde::Deserialize, serde::Serialize)]
13352#[allow(clippy::derive_partial_eq_without_eq)]
13353#[derive(Clone, PartialEq, ::prost::Message)]
13354pub struct SearchResourcesResponse {
13355 #[prost(message, repeated, tag = "1")]
13357 pub resources: ::prost::alloc::vec::Vec<super::super::models::v2::GenericResource>,
13358 #[prost(int64, tag = "2")]
13360 pub estimated_total: i64,
13361 #[prost(int64, tag = "3")]
13363 pub last_index: i64,
13364}
13365#[derive(serde::Deserialize, serde::Serialize)]
13366#[allow(clippy::derive_partial_eq_without_eq)]
13367#[derive(Clone, PartialEq, ::prost::Message)]
13368pub struct GetResourceRequest {
13369 #[prost(string, tag = "1")]
13370 pub resource_id: ::prost::alloc::string::String,
13371}
13372#[derive(serde::Deserialize, serde::Serialize)]
13373#[allow(clippy::derive_partial_eq_without_eq)]
13374#[derive(Clone, PartialEq, ::prost::Message)]
13375pub struct ResourceWithPermission {
13376 #[prost(message, optional, tag = "1")]
13377 pub resource: ::core::option::Option<super::super::models::v2::GenericResource>,
13378 #[prost(enumeration = "super::super::models::v2::PermissionLevel", tag = "2")]
13379 pub permission: i32,
13380}
13381#[derive(serde::Deserialize, serde::Serialize)]
13382#[allow(clippy::derive_partial_eq_without_eq)]
13383#[derive(Clone, PartialEq, ::prost::Message)]
13384pub struct GetResourceResponse {
13385 #[prost(message, optional, tag = "1")]
13386 pub resource: ::core::option::Option<ResourceWithPermission>,
13387}
13388#[derive(serde::Deserialize, serde::Serialize)]
13389#[allow(clippy::derive_partial_eq_without_eq)]
13390#[derive(Clone, PartialEq, ::prost::Message)]
13391pub struct GetResourcesRequest {
13392 #[prost(string, repeated, tag = "1")]
13393 pub resource_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
13394}
13395#[derive(serde::Deserialize, serde::Serialize)]
13396#[allow(clippy::derive_partial_eq_without_eq)]
13397#[derive(Clone, PartialEq, ::prost::Message)]
13398pub struct GetResourcesResponse {
13399 #[prost(message, repeated, tag = "1")]
13400 pub resources: ::prost::alloc::vec::Vec<ResourceWithPermission>,
13401}
13402#[derive(serde::Deserialize, serde::Serialize)]
13403#[allow(clippy::derive_partial_eq_without_eq)]
13404#[derive(Clone, PartialEq, ::prost::Message)]
13405pub struct RequestResourceAccessRequest {
13406 #[prost(string, tag = "1")]
13407 pub resource_id: ::prost::alloc::string::String,
13408 #[prost(string, tag = "2")]
13409 pub message: ::prost::alloc::string::String,
13410}
13411#[derive(serde::Deserialize, serde::Serialize)]
13412#[allow(clippy::derive_partial_eq_without_eq)]
13413#[derive(Clone, PartialEq, ::prost::Message)]
13414pub struct RequestResourceAccessResponse {}
13415pub mod search_service_client {
13417 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
13418 use tonic::codegen::*;
13419 use tonic::codegen::http::Uri;
13420 #[derive(Debug, Clone)]
13426 pub struct SearchServiceClient<T> {
13427 inner: tonic::client::Grpc<T>,
13428 }
13429 impl SearchServiceClient<tonic::transport::Channel> {
13430 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
13432 where
13433 D: TryInto<tonic::transport::Endpoint>,
13434 D::Error: Into<StdError>,
13435 {
13436 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
13437 Ok(Self::new(conn))
13438 }
13439 }
13440 impl<T> SearchServiceClient<T>
13441 where
13442 T: tonic::client::GrpcService<tonic::body::BoxBody>,
13443 T::Error: Into<StdError>,
13444 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
13445 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
13446 {
13447 pub fn new(inner: T) -> Self {
13448 let inner = tonic::client::Grpc::new(inner);
13449 Self { inner }
13450 }
13451 pub fn with_origin(inner: T, origin: Uri) -> Self {
13452 let inner = tonic::client::Grpc::with_origin(inner, origin);
13453 Self { inner }
13454 }
13455 pub fn with_interceptor<F>(
13456 inner: T,
13457 interceptor: F,
13458 ) -> SearchServiceClient<InterceptedService<T, F>>
13459 where
13460 F: tonic::service::Interceptor,
13461 T::ResponseBody: Default,
13462 T: tonic::codegen::Service<
13463 http::Request<tonic::body::BoxBody>,
13464 Response = http::Response<
13465 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
13466 >,
13467 >,
13468 <T as tonic::codegen::Service<
13469 http::Request<tonic::body::BoxBody>,
13470 >>::Error: Into<StdError> + Send + Sync,
13471 {
13472 SearchServiceClient::new(InterceptedService::new(inner, interceptor))
13473 }
13474 #[must_use]
13479 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
13480 self.inner = self.inner.send_compressed(encoding);
13481 self
13482 }
13483 #[must_use]
13485 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
13486 self.inner = self.inner.accept_compressed(encoding);
13487 self
13488 }
13489 #[must_use]
13493 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
13494 self.inner = self.inner.max_decoding_message_size(limit);
13495 self
13496 }
13497 #[must_use]
13501 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
13502 self.inner = self.inner.max_encoding_message_size(limit);
13503 self
13504 }
13505 pub async fn search_resources(
13511 &mut self,
13512 request: impl tonic::IntoRequest<super::SearchResourcesRequest>,
13513 ) -> std::result::Result<
13514 tonic::Response<super::SearchResourcesResponse>,
13515 tonic::Status,
13516 > {
13517 self.inner
13518 .ready()
13519 .await
13520 .map_err(|e| {
13521 tonic::Status::new(
13522 tonic::Code::Unknown,
13523 format!("Service was not ready: {}", e.into()),
13524 )
13525 })?;
13526 let codec = tonic::codec::ProstCodec::default();
13527 let path = http::uri::PathAndQuery::from_static(
13528 "/aruna.api.storage.services.v2.SearchService/SearchResources",
13529 );
13530 let mut req = request.into_request();
13531 req.extensions_mut()
13532 .insert(
13533 GrpcMethod::new(
13534 "aruna.api.storage.services.v2.SearchService",
13535 "SearchResources",
13536 ),
13537 );
13538 self.inner.unary(req, path, codec).await
13539 }
13540 pub async fn get_resource(
13546 &mut self,
13547 request: impl tonic::IntoRequest<super::GetResourceRequest>,
13548 ) -> std::result::Result<
13549 tonic::Response<super::GetResourceResponse>,
13550 tonic::Status,
13551 > {
13552 self.inner
13553 .ready()
13554 .await
13555 .map_err(|e| {
13556 tonic::Status::new(
13557 tonic::Code::Unknown,
13558 format!("Service was not ready: {}", e.into()),
13559 )
13560 })?;
13561 let codec = tonic::codec::ProstCodec::default();
13562 let path = http::uri::PathAndQuery::from_static(
13563 "/aruna.api.storage.services.v2.SearchService/GetResource",
13564 );
13565 let mut req = request.into_request();
13566 req.extensions_mut()
13567 .insert(
13568 GrpcMethod::new(
13569 "aruna.api.storage.services.v2.SearchService",
13570 "GetResource",
13571 ),
13572 );
13573 self.inner.unary(req, path, codec).await
13574 }
13575 pub async fn get_resources(
13581 &mut self,
13582 request: impl tonic::IntoRequest<super::GetResourcesRequest>,
13583 ) -> std::result::Result<
13584 tonic::Response<super::GetResourcesResponse>,
13585 tonic::Status,
13586 > {
13587 self.inner
13588 .ready()
13589 .await
13590 .map_err(|e| {
13591 tonic::Status::new(
13592 tonic::Code::Unknown,
13593 format!("Service was not ready: {}", e.into()),
13594 )
13595 })?;
13596 let codec = tonic::codec::ProstCodec::default();
13597 let path = http::uri::PathAndQuery::from_static(
13598 "/aruna.api.storage.services.v2.SearchService/GetResources",
13599 );
13600 let mut req = request.into_request();
13601 req.extensions_mut()
13602 .insert(
13603 GrpcMethod::new(
13604 "aruna.api.storage.services.v2.SearchService",
13605 "GetResources",
13606 ),
13607 );
13608 self.inner.unary(req, path, codec).await
13609 }
13610 pub async fn request_resource_access(
13616 &mut self,
13617 request: impl tonic::IntoRequest<super::RequestResourceAccessRequest>,
13618 ) -> std::result::Result<
13619 tonic::Response<super::RequestResourceAccessResponse>,
13620 tonic::Status,
13621 > {
13622 self.inner
13623 .ready()
13624 .await
13625 .map_err(|e| {
13626 tonic::Status::new(
13627 tonic::Code::Unknown,
13628 format!("Service was not ready: {}", e.into()),
13629 )
13630 })?;
13631 let codec = tonic::codec::ProstCodec::default();
13632 let path = http::uri::PathAndQuery::from_static(
13633 "/aruna.api.storage.services.v2.SearchService/RequestResourceAccess",
13634 );
13635 let mut req = request.into_request();
13636 req.extensions_mut()
13637 .insert(
13638 GrpcMethod::new(
13639 "aruna.api.storage.services.v2.SearchService",
13640 "RequestResourceAccess",
13641 ),
13642 );
13643 self.inner.unary(req, path, codec).await
13644 }
13645 }
13646}
13647pub mod search_service_server {
13649 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
13650 use tonic::codegen::*;
13651 #[async_trait]
13653 pub trait SearchService: Send + Sync + 'static {
13654 async fn search_resources(
13660 &self,
13661 request: tonic::Request<super::SearchResourcesRequest>,
13662 ) -> std::result::Result<
13663 tonic::Response<super::SearchResourcesResponse>,
13664 tonic::Status,
13665 >;
13666 async fn get_resource(
13672 &self,
13673 request: tonic::Request<super::GetResourceRequest>,
13674 ) -> std::result::Result<
13675 tonic::Response<super::GetResourceResponse>,
13676 tonic::Status,
13677 >;
13678 async fn get_resources(
13684 &self,
13685 request: tonic::Request<super::GetResourcesRequest>,
13686 ) -> std::result::Result<
13687 tonic::Response<super::GetResourcesResponse>,
13688 tonic::Status,
13689 >;
13690 async fn request_resource_access(
13696 &self,
13697 request: tonic::Request<super::RequestResourceAccessRequest>,
13698 ) -> std::result::Result<
13699 tonic::Response<super::RequestResourceAccessResponse>,
13700 tonic::Status,
13701 >;
13702 }
13703 #[derive(Debug)]
13709 pub struct SearchServiceServer<T: SearchService> {
13710 inner: _Inner<T>,
13711 accept_compression_encodings: EnabledCompressionEncodings,
13712 send_compression_encodings: EnabledCompressionEncodings,
13713 max_decoding_message_size: Option<usize>,
13714 max_encoding_message_size: Option<usize>,
13715 }
13716 struct _Inner<T>(Arc<T>);
13717 impl<T: SearchService> SearchServiceServer<T> {
13718 pub fn new(inner: T) -> Self {
13719 Self::from_arc(Arc::new(inner))
13720 }
13721 pub fn from_arc(inner: Arc<T>) -> Self {
13722 let inner = _Inner(inner);
13723 Self {
13724 inner,
13725 accept_compression_encodings: Default::default(),
13726 send_compression_encodings: Default::default(),
13727 max_decoding_message_size: None,
13728 max_encoding_message_size: None,
13729 }
13730 }
13731 pub fn with_interceptor<F>(
13732 inner: T,
13733 interceptor: F,
13734 ) -> InterceptedService<Self, F>
13735 where
13736 F: tonic::service::Interceptor,
13737 {
13738 InterceptedService::new(Self::new(inner), interceptor)
13739 }
13740 #[must_use]
13742 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
13743 self.accept_compression_encodings.enable(encoding);
13744 self
13745 }
13746 #[must_use]
13748 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
13749 self.send_compression_encodings.enable(encoding);
13750 self
13751 }
13752 #[must_use]
13756 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
13757 self.max_decoding_message_size = Some(limit);
13758 self
13759 }
13760 #[must_use]
13764 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
13765 self.max_encoding_message_size = Some(limit);
13766 self
13767 }
13768 }
13769 impl<T, B> tonic::codegen::Service<http::Request<B>> for SearchServiceServer<T>
13770 where
13771 T: SearchService,
13772 B: Body + Send + 'static,
13773 B::Error: Into<StdError> + Send + 'static,
13774 {
13775 type Response = http::Response<tonic::body::BoxBody>;
13776 type Error = std::convert::Infallible;
13777 type Future = BoxFuture<Self::Response, Self::Error>;
13778 fn poll_ready(
13779 &mut self,
13780 _cx: &mut Context<'_>,
13781 ) -> Poll<std::result::Result<(), Self::Error>> {
13782 Poll::Ready(Ok(()))
13783 }
13784 fn call(&mut self, req: http::Request<B>) -> Self::Future {
13785 let inner = self.inner.clone();
13786 match req.uri().path() {
13787 "/aruna.api.storage.services.v2.SearchService/SearchResources" => {
13788 #[allow(non_camel_case_types)]
13789 struct SearchResourcesSvc<T: SearchService>(pub Arc<T>);
13790 impl<
13791 T: SearchService,
13792 > tonic::server::UnaryService<super::SearchResourcesRequest>
13793 for SearchResourcesSvc<T> {
13794 type Response = super::SearchResourcesResponse;
13795 type Future = BoxFuture<
13796 tonic::Response<Self::Response>,
13797 tonic::Status,
13798 >;
13799 fn call(
13800 &mut self,
13801 request: tonic::Request<super::SearchResourcesRequest>,
13802 ) -> Self::Future {
13803 let inner = Arc::clone(&self.0);
13804 let fut = async move {
13805 <T as SearchService>::search_resources(&inner, request)
13806 .await
13807 };
13808 Box::pin(fut)
13809 }
13810 }
13811 let accept_compression_encodings = self.accept_compression_encodings;
13812 let send_compression_encodings = self.send_compression_encodings;
13813 let max_decoding_message_size = self.max_decoding_message_size;
13814 let max_encoding_message_size = self.max_encoding_message_size;
13815 let inner = self.inner.clone();
13816 let fut = async move {
13817 let inner = inner.0;
13818 let method = SearchResourcesSvc(inner);
13819 let codec = tonic::codec::ProstCodec::default();
13820 let mut grpc = tonic::server::Grpc::new(codec)
13821 .apply_compression_config(
13822 accept_compression_encodings,
13823 send_compression_encodings,
13824 )
13825 .apply_max_message_size_config(
13826 max_decoding_message_size,
13827 max_encoding_message_size,
13828 );
13829 let res = grpc.unary(method, req).await;
13830 Ok(res)
13831 };
13832 Box::pin(fut)
13833 }
13834 "/aruna.api.storage.services.v2.SearchService/GetResource" => {
13835 #[allow(non_camel_case_types)]
13836 struct GetResourceSvc<T: SearchService>(pub Arc<T>);
13837 impl<
13838 T: SearchService,
13839 > tonic::server::UnaryService<super::GetResourceRequest>
13840 for GetResourceSvc<T> {
13841 type Response = super::GetResourceResponse;
13842 type Future = BoxFuture<
13843 tonic::Response<Self::Response>,
13844 tonic::Status,
13845 >;
13846 fn call(
13847 &mut self,
13848 request: tonic::Request<super::GetResourceRequest>,
13849 ) -> Self::Future {
13850 let inner = Arc::clone(&self.0);
13851 let fut = async move {
13852 <T as SearchService>::get_resource(&inner, request).await
13853 };
13854 Box::pin(fut)
13855 }
13856 }
13857 let accept_compression_encodings = self.accept_compression_encodings;
13858 let send_compression_encodings = self.send_compression_encodings;
13859 let max_decoding_message_size = self.max_decoding_message_size;
13860 let max_encoding_message_size = self.max_encoding_message_size;
13861 let inner = self.inner.clone();
13862 let fut = async move {
13863 let inner = inner.0;
13864 let method = GetResourceSvc(inner);
13865 let codec = tonic::codec::ProstCodec::default();
13866 let mut grpc = tonic::server::Grpc::new(codec)
13867 .apply_compression_config(
13868 accept_compression_encodings,
13869 send_compression_encodings,
13870 )
13871 .apply_max_message_size_config(
13872 max_decoding_message_size,
13873 max_encoding_message_size,
13874 );
13875 let res = grpc.unary(method, req).await;
13876 Ok(res)
13877 };
13878 Box::pin(fut)
13879 }
13880 "/aruna.api.storage.services.v2.SearchService/GetResources" => {
13881 #[allow(non_camel_case_types)]
13882 struct GetResourcesSvc<T: SearchService>(pub Arc<T>);
13883 impl<
13884 T: SearchService,
13885 > tonic::server::UnaryService<super::GetResourcesRequest>
13886 for GetResourcesSvc<T> {
13887 type Response = super::GetResourcesResponse;
13888 type Future = BoxFuture<
13889 tonic::Response<Self::Response>,
13890 tonic::Status,
13891 >;
13892 fn call(
13893 &mut self,
13894 request: tonic::Request<super::GetResourcesRequest>,
13895 ) -> Self::Future {
13896 let inner = Arc::clone(&self.0);
13897 let fut = async move {
13898 <T as SearchService>::get_resources(&inner, request).await
13899 };
13900 Box::pin(fut)
13901 }
13902 }
13903 let accept_compression_encodings = self.accept_compression_encodings;
13904 let send_compression_encodings = self.send_compression_encodings;
13905 let max_decoding_message_size = self.max_decoding_message_size;
13906 let max_encoding_message_size = self.max_encoding_message_size;
13907 let inner = self.inner.clone();
13908 let fut = async move {
13909 let inner = inner.0;
13910 let method = GetResourcesSvc(inner);
13911 let codec = tonic::codec::ProstCodec::default();
13912 let mut grpc = tonic::server::Grpc::new(codec)
13913 .apply_compression_config(
13914 accept_compression_encodings,
13915 send_compression_encodings,
13916 )
13917 .apply_max_message_size_config(
13918 max_decoding_message_size,
13919 max_encoding_message_size,
13920 );
13921 let res = grpc.unary(method, req).await;
13922 Ok(res)
13923 };
13924 Box::pin(fut)
13925 }
13926 "/aruna.api.storage.services.v2.SearchService/RequestResourceAccess" => {
13927 #[allow(non_camel_case_types)]
13928 struct RequestResourceAccessSvc<T: SearchService>(pub Arc<T>);
13929 impl<
13930 T: SearchService,
13931 > tonic::server::UnaryService<super::RequestResourceAccessRequest>
13932 for RequestResourceAccessSvc<T> {
13933 type Response = super::RequestResourceAccessResponse;
13934 type Future = BoxFuture<
13935 tonic::Response<Self::Response>,
13936 tonic::Status,
13937 >;
13938 fn call(
13939 &mut self,
13940 request: tonic::Request<super::RequestResourceAccessRequest>,
13941 ) -> Self::Future {
13942 let inner = Arc::clone(&self.0);
13943 let fut = async move {
13944 <T as SearchService>::request_resource_access(
13945 &inner,
13946 request,
13947 )
13948 .await
13949 };
13950 Box::pin(fut)
13951 }
13952 }
13953 let accept_compression_encodings = self.accept_compression_encodings;
13954 let send_compression_encodings = self.send_compression_encodings;
13955 let max_decoding_message_size = self.max_decoding_message_size;
13956 let max_encoding_message_size = self.max_encoding_message_size;
13957 let inner = self.inner.clone();
13958 let fut = async move {
13959 let inner = inner.0;
13960 let method = RequestResourceAccessSvc(inner);
13961 let codec = tonic::codec::ProstCodec::default();
13962 let mut grpc = tonic::server::Grpc::new(codec)
13963 .apply_compression_config(
13964 accept_compression_encodings,
13965 send_compression_encodings,
13966 )
13967 .apply_max_message_size_config(
13968 max_decoding_message_size,
13969 max_encoding_message_size,
13970 );
13971 let res = grpc.unary(method, req).await;
13972 Ok(res)
13973 };
13974 Box::pin(fut)
13975 }
13976 _ => {
13977 Box::pin(async move {
13978 Ok(
13979 http::Response::builder()
13980 .status(200)
13981 .header("grpc-status", "12")
13982 .header("content-type", "application/grpc")
13983 .body(empty_body())
13984 .unwrap(),
13985 )
13986 })
13987 }
13988 }
13989 }
13990 }
13991 impl<T: SearchService> Clone for SearchServiceServer<T> {
13992 fn clone(&self) -> Self {
13993 let inner = self.inner.clone();
13994 Self {
13995 inner,
13996 accept_compression_encodings: self.accept_compression_encodings,
13997 send_compression_encodings: self.send_compression_encodings,
13998 max_decoding_message_size: self.max_decoding_message_size,
13999 max_encoding_message_size: self.max_encoding_message_size,
14000 }
14001 }
14002 }
14003 impl<T: SearchService> Clone for _Inner<T> {
14004 fn clone(&self) -> Self {
14005 Self(Arc::clone(&self.0))
14006 }
14007 }
14008 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
14009 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
14010 write!(f, "{:?}", self.0)
14011 }
14012 }
14013 impl<T: SearchService> tonic::server::NamedService for SearchServiceServer<T> {
14014 const NAME: &'static str = "aruna.api.storage.services.v2.SearchService";
14015 }
14016}
14017#[derive(serde::Deserialize, serde::Serialize)]
14018#[allow(clippy::derive_partial_eq_without_eq)]
14019#[derive(Clone, PartialEq, ::prost::Message)]
14020pub struct RegisterUserRequest {
14021 #[prost(string, tag = "1")]
14023 pub display_name: ::prost::alloc::string::String,
14024 #[prost(string, tag = "2")]
14026 pub email: ::prost::alloc::string::String,
14027 #[prost(string, tag = "3")]
14029 pub project: ::prost::alloc::string::String,
14030}
14031#[derive(serde::Deserialize, serde::Serialize)]
14032#[allow(clippy::derive_partial_eq_without_eq)]
14033#[derive(Clone, PartialEq, ::prost::Message)]
14034pub struct RegisterUserResponse {
14035 #[prost(string, tag = "1")]
14037 pub user_id: ::prost::alloc::string::String,
14038}
14039#[derive(serde::Deserialize, serde::Serialize)]
14040#[allow(clippy::derive_partial_eq_without_eq)]
14041#[derive(Clone, PartialEq, ::prost::Message)]
14042pub struct CreateApiTokenRequest {
14043 #[prost(string, tag = "1")]
14045 pub name: ::prost::alloc::string::String,
14046 #[prost(message, optional, tag = "2")]
14048 pub permission: ::core::option::Option<super::super::models::v2::Permission>,
14049 #[prost(message, optional, tag = "3")]
14051 pub expires_at: ::core::option::Option<::prost_wkt_types::Timestamp>,
14052}
14053#[derive(serde::Deserialize, serde::Serialize)]
14054#[allow(clippy::derive_partial_eq_without_eq)]
14055#[derive(Clone, PartialEq, ::prost::Message)]
14056pub struct CreateApiTokenResponse {
14057 #[prost(message, optional, tag = "1")]
14059 pub token: ::core::option::Option<super::super::models::v2::Token>,
14060 #[prost(string, tag = "2")]
14064 pub token_secret: ::prost::alloc::string::String,
14065}
14066#[derive(serde::Deserialize, serde::Serialize)]
14067#[allow(clippy::derive_partial_eq_without_eq)]
14068#[derive(Clone, PartialEq, ::prost::Message)]
14069pub struct GetApiTokenRequest {
14070 #[prost(string, tag = "1")]
14072 pub token_id: ::prost::alloc::string::String,
14073}
14074#[derive(serde::Deserialize, serde::Serialize)]
14075#[allow(clippy::derive_partial_eq_without_eq)]
14076#[derive(Clone, PartialEq, ::prost::Message)]
14077pub struct GetApiTokenResponse {
14078 #[prost(message, optional, tag = "1")]
14080 pub token: ::core::option::Option<super::super::models::v2::Token>,
14081}
14082#[derive(serde::Deserialize, serde::Serialize)]
14083#[allow(clippy::derive_partial_eq_without_eq)]
14084#[derive(Clone, PartialEq, ::prost::Message)]
14085pub struct GetApiTokensRequest {}
14086#[derive(serde::Deserialize, serde::Serialize)]
14087#[allow(clippy::derive_partial_eq_without_eq)]
14088#[derive(Clone, PartialEq, ::prost::Message)]
14089pub struct GetApiTokensResponse {
14090 #[prost(message, repeated, tag = "1")]
14092 pub tokens: ::prost::alloc::vec::Vec<super::super::models::v2::Token>,
14093}
14094#[derive(serde::Deserialize, serde::Serialize)]
14095#[allow(clippy::derive_partial_eq_without_eq)]
14096#[derive(Clone, PartialEq, ::prost::Message)]
14097pub struct DeleteApiTokenRequest {
14098 #[prost(string, tag = "1")]
14100 pub token_id: ::prost::alloc::string::String,
14101}
14102#[derive(serde::Deserialize, serde::Serialize)]
14103#[allow(clippy::derive_partial_eq_without_eq)]
14104#[derive(Clone, PartialEq, ::prost::Message)]
14105pub struct DeleteApiTokenResponse {}
14106#[derive(serde::Deserialize, serde::Serialize)]
14107#[allow(clippy::derive_partial_eq_without_eq)]
14108#[derive(Clone, PartialEq, ::prost::Message)]
14109pub struct DeleteApiTokensRequest {
14110 #[prost(string, tag = "1")]
14115 pub user_id: ::prost::alloc::string::String,
14116}
14117#[derive(serde::Deserialize, serde::Serialize)]
14118#[allow(clippy::derive_partial_eq_without_eq)]
14119#[derive(Clone, PartialEq, ::prost::Message)]
14120pub struct DeleteApiTokensResponse {}
14121#[derive(serde::Deserialize, serde::Serialize)]
14122#[allow(clippy::derive_partial_eq_without_eq)]
14123#[derive(Clone, PartialEq, ::prost::Message)]
14124pub struct GetUserRequest {
14125 #[prost(string, tag = "1")]
14127 pub user_id: ::prost::alloc::string::String,
14128}
14129#[derive(serde::Deserialize, serde::Serialize)]
14130#[allow(clippy::derive_partial_eq_without_eq)]
14131#[derive(Clone, PartialEq, ::prost::Message)]
14132pub struct GetUserResponse {
14133 #[prost(message, optional, tag = "1")]
14135 pub user: ::core::option::Option<super::super::models::v2::User>,
14136}
14137#[derive(serde::Deserialize, serde::Serialize)]
14138#[allow(clippy::derive_partial_eq_without_eq)]
14139#[derive(Clone, PartialEq, ::prost::Message)]
14140pub struct GetUserRedactedRequest {
14141 #[prost(string, tag = "1")]
14143 pub user_id: ::prost::alloc::string::String,
14144}
14145#[derive(serde::Deserialize, serde::Serialize)]
14146#[allow(clippy::derive_partial_eq_without_eq)]
14147#[derive(Clone, PartialEq, ::prost::Message)]
14148pub struct GetUserRedactedResponse {
14149 #[prost(message, optional, tag = "1")]
14151 pub user: ::core::option::Option<super::super::models::v2::User>,
14152}
14153#[derive(serde::Deserialize, serde::Serialize)]
14154#[allow(clippy::derive_partial_eq_without_eq)]
14155#[derive(Clone, PartialEq, ::prost::Message)]
14156pub struct UpdateUserDisplayNameRequest {
14157 #[prost(string, tag = "1")]
14159 pub new_display_name: ::prost::alloc::string::String,
14160}
14161#[derive(serde::Deserialize, serde::Serialize)]
14162#[allow(clippy::derive_partial_eq_without_eq)]
14163#[derive(Clone, PartialEq, ::prost::Message)]
14164pub struct UpdateUserDisplayNameResponse {
14165 #[prost(message, optional, tag = "1")]
14167 pub user: ::core::option::Option<super::super::models::v2::User>,
14168}
14169#[derive(serde::Deserialize, serde::Serialize)]
14170#[allow(clippy::derive_partial_eq_without_eq)]
14171#[derive(Clone, PartialEq, ::prost::Message)]
14172pub struct ActivateUserRequest {
14173 #[prost(string, tag = "1")]
14175 pub user_id: ::prost::alloc::string::String,
14176}
14177#[derive(serde::Deserialize, serde::Serialize)]
14178#[allow(clippy::derive_partial_eq_without_eq)]
14179#[derive(Clone, PartialEq, ::prost::Message)]
14180pub struct ActivateUserResponse {}
14181#[derive(serde::Deserialize, serde::Serialize)]
14182#[allow(clippy::derive_partial_eq_without_eq)]
14183#[derive(Clone, PartialEq, ::prost::Message)]
14184pub struct GetNotActivatedUsersRequest {}
14185#[derive(serde::Deserialize, serde::Serialize)]
14186#[allow(clippy::derive_partial_eq_without_eq)]
14187#[derive(Clone, PartialEq, ::prost::Message)]
14188pub struct GetNotActivatedUsersResponse {
14189 #[prost(message, repeated, tag = "1")]
14191 pub users: ::prost::alloc::vec::Vec<super::super::models::v2::User>,
14192}
14193#[derive(serde::Deserialize, serde::Serialize)]
14194#[allow(clippy::derive_partial_eq_without_eq)]
14195#[derive(Clone, PartialEq, ::prost::Message)]
14196pub struct GetAllUsersRequest {}
14197#[derive(serde::Deserialize, serde::Serialize)]
14198#[allow(clippy::derive_partial_eq_without_eq)]
14199#[derive(Clone, PartialEq, ::prost::Message)]
14200pub struct GetAllUsersResponse {
14201 #[prost(message, repeated, tag = "1")]
14202 pub user: ::prost::alloc::vec::Vec<super::super::models::v2::User>,
14203}
14204#[derive(serde::Deserialize, serde::Serialize)]
14205#[allow(clippy::derive_partial_eq_without_eq)]
14206#[derive(Clone, PartialEq, ::prost::Message)]
14207pub struct DeactivateUserRequest {
14208 #[prost(string, tag = "1")]
14210 pub user_id: ::prost::alloc::string::String,
14211}
14212#[derive(serde::Deserialize, serde::Serialize)]
14213#[allow(clippy::derive_partial_eq_without_eq)]
14214#[derive(Clone, PartialEq, ::prost::Message)]
14215pub struct DeactivateUserResponse {}
14216#[derive(serde::Deserialize, serde::Serialize)]
14217#[allow(clippy::derive_partial_eq_without_eq)]
14218#[derive(Clone, PartialEq, ::prost::Message)]
14219pub struct UpdateUserEmailRequest {
14220 #[prost(string, tag = "1")]
14221 pub user_id: ::prost::alloc::string::String,
14222 #[prost(string, tag = "2")]
14224 pub new_email: ::prost::alloc::string::String,
14225}
14226#[derive(serde::Deserialize, serde::Serialize)]
14227#[allow(clippy::derive_partial_eq_without_eq)]
14228#[derive(Clone, PartialEq, ::prost::Message)]
14229pub struct UpdateUserEmailResponse {
14230 #[prost(message, optional, tag = "1")]
14231 pub user: ::core::option::Option<super::super::models::v2::User>,
14232}
14233#[derive(serde::Deserialize, serde::Serialize)]
14234#[allow(clippy::derive_partial_eq_without_eq)]
14235#[derive(Clone, PartialEq, ::prost::Message)]
14236pub struct CreateS3CredentialsUserTokenRequest {
14237 #[prost(string, tag = "1")]
14238 pub endpoint_id: ::prost::alloc::string::String,
14239}
14240#[derive(serde::Deserialize, serde::Serialize)]
14241#[allow(clippy::derive_partial_eq_without_eq)]
14242#[derive(Clone, PartialEq, ::prost::Message)]
14243pub struct CreateS3CredentialsUserTokenResponse {
14244 #[prost(string, tag = "1")]
14245 pub s3_access_key: ::prost::alloc::string::String,
14246 #[prost(string, tag = "2")]
14247 pub s3_secret_key: ::prost::alloc::string::String,
14248 #[prost(string, tag = "3")]
14249 pub s3_endpoint_url: ::prost::alloc::string::String,
14250}
14251#[derive(serde::Deserialize, serde::Serialize)]
14252#[allow(clippy::derive_partial_eq_without_eq)]
14253#[derive(Clone, PartialEq, ::prost::Message)]
14254pub struct GetS3CredentialsUserTokenRequest {
14255 #[prost(string, tag = "1")]
14256 pub endpoint_id: ::prost::alloc::string::String,
14257}
14258#[derive(serde::Deserialize, serde::Serialize)]
14259#[allow(clippy::derive_partial_eq_without_eq)]
14260#[derive(Clone, PartialEq, ::prost::Message)]
14261pub struct GetS3CredentialsUserTokenResponse {
14262 #[prost(string, tag = "1")]
14263 pub s3_access_key: ::prost::alloc::string::String,
14264 #[prost(string, tag = "2")]
14265 pub s3_secret_key: ::prost::alloc::string::String,
14266 #[prost(string, tag = "3")]
14267 pub s3_endpoint_url: ::prost::alloc::string::String,
14268}
14269#[derive(serde::Deserialize, serde::Serialize)]
14270#[allow(clippy::derive_partial_eq_without_eq)]
14271#[derive(Clone, PartialEq, ::prost::Message)]
14272pub struct DeleteS3CredentialsUserTokenRequest {
14273 #[prost(string, tag = "1")]
14274 pub endpoint_id: ::prost::alloc::string::String,
14275}
14276#[derive(serde::Deserialize, serde::Serialize)]
14277#[allow(clippy::derive_partial_eq_without_eq)]
14278#[derive(Clone, PartialEq, ::prost::Message)]
14279pub struct DeleteS3CredentialsUserResponse {}
14280#[derive(serde::Deserialize, serde::Serialize)]
14281#[allow(clippy::derive_partial_eq_without_eq)]
14282#[derive(Clone, PartialEq, ::prost::Message)]
14283pub struct GetDataproxyTokenUserRequest {
14284 #[prost(string, tag = "1")]
14285 pub user_id: ::prost::alloc::string::String,
14286 #[prost(string, tag = "2")]
14287 pub endpoint_id: ::prost::alloc::string::String,
14288 #[prost(message, optional, tag = "3")]
14289 pub context: ::core::option::Option<super::super::models::v2::Context>,
14290}
14291#[derive(serde::Deserialize, serde::Serialize)]
14292#[allow(clippy::derive_partial_eq_without_eq)]
14293#[derive(Clone, PartialEq, ::prost::Message)]
14294pub struct GetDataproxyTokenUserResponse {
14295 #[prost(string, tag = "1")]
14296 pub token: ::prost::alloc::string::String,
14297}
14298#[derive(serde::Deserialize, serde::Serialize)]
14299#[allow(clippy::derive_partial_eq_without_eq)]
14300#[derive(Clone, PartialEq, ::prost::Message)]
14301pub struct GetPersonalNotificationsRequest {}
14302#[derive(serde::Deserialize, serde::Serialize)]
14303#[allow(clippy::derive_partial_eq_without_eq)]
14304#[derive(Clone, PartialEq, ::prost::Message)]
14305pub struct GetPersonalNotificationsResponse {
14306 #[prost(message, repeated, tag = "1")]
14307 pub notifications: ::prost::alloc::vec::Vec<PersonalNotification>,
14308}
14309#[derive(serde::Deserialize, serde::Serialize)]
14310#[allow(clippy::derive_partial_eq_without_eq)]
14311#[derive(Clone, PartialEq, ::prost::Message)]
14312pub struct AcknowledgePersonalNotificationsRequest {
14313 #[prost(string, repeated, tag = "1")]
14314 pub notification_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
14315}
14316#[derive(serde::Deserialize, serde::Serialize)]
14317#[allow(clippy::derive_partial_eq_without_eq)]
14318#[derive(Clone, PartialEq, ::prost::Message)]
14319pub struct AcknowledgePersonalNotificationsResponse {}
14320#[derive(serde::Deserialize, serde::Serialize)]
14321#[allow(clippy::derive_partial_eq_without_eq)]
14322#[derive(Clone, PartialEq, ::prost::Message)]
14323pub struct Reference {
14324 #[prost(enumeration = "ReferenceType", tag = "1")]
14325 pub ref_type: i32,
14326 #[prost(string, tag = "2")]
14328 pub ref_name: ::prost::alloc::string::String,
14329 #[prost(string, tag = "3")]
14331 pub ref_value: ::prost::alloc::string::String,
14332}
14333#[derive(serde::Deserialize, serde::Serialize)]
14334#[allow(clippy::derive_partial_eq_without_eq)]
14335#[derive(Clone, PartialEq, ::prost::Message)]
14336pub struct PersonalNotification {
14337 #[prost(string, tag = "1")]
14338 pub id: ::prost::alloc::string::String,
14339 #[prost(enumeration = "PersonalNotificationVariant", tag = "2")]
14340 pub variant: i32,
14341 #[prost(string, tag = "3")]
14343 pub message: ::prost::alloc::string::String,
14344 #[prost(message, repeated, tag = "4")]
14346 pub refs: ::prost::alloc::vec::Vec<Reference>,
14347}
14348#[derive(serde::Deserialize, serde::Serialize)]
14349#[allow(clippy::derive_partial_eq_without_eq)]
14350#[derive(Clone, PartialEq, ::prost::Message)]
14351pub struct AddOidcProviderRequest {
14352 #[prost(string, tag = "1")]
14353 pub new_access_token: ::prost::alloc::string::String,
14354}
14355#[derive(serde::Deserialize, serde::Serialize)]
14356#[allow(clippy::derive_partial_eq_without_eq)]
14357#[derive(Clone, PartialEq, ::prost::Message)]
14358pub struct AddOidcProviderResponse {
14359 #[prost(message, optional, tag = "1")]
14360 pub user: ::core::option::Option<super::super::models::v2::User>,
14361}
14362#[derive(serde::Deserialize, serde::Serialize)]
14363#[allow(clippy::derive_partial_eq_without_eq)]
14364#[derive(Clone, PartialEq, ::prost::Message)]
14365pub struct RemoveOidcProviderRequest {
14366 #[prost(string, tag = "1")]
14367 pub provider_url: ::prost::alloc::string::String,
14368}
14369#[derive(serde::Deserialize, serde::Serialize)]
14370#[allow(clippy::derive_partial_eq_without_eq)]
14371#[derive(Clone, PartialEq, ::prost::Message)]
14372pub struct RemoveOidcProviderResponse {
14373 #[prost(message, optional, tag = "1")]
14374 pub user: ::core::option::Option<super::super::models::v2::User>,
14375}
14376#[derive(serde::Deserialize, serde::Serialize)]
14377#[allow(clippy::derive_partial_eq_without_eq)]
14378#[derive(Clone, PartialEq, ::prost::Message)]
14379pub struct AddPubkeyUserRequest {
14380 #[prost(string, tag = "1")]
14381 pub public_key: ::prost::alloc::string::String,
14382}
14383#[derive(serde::Deserialize, serde::Serialize)]
14384#[allow(clippy::derive_partial_eq_without_eq)]
14385#[derive(Clone, PartialEq, ::prost::Message)]
14386pub struct AddPubkeyUserResponse {
14387 #[prost(message, optional, tag = "1")]
14388 pub user: ::core::option::Option<super::super::models::v2::User>,
14389}
14390#[derive(serde::Deserialize, serde::Serialize)]
14391#[allow(clippy::derive_partial_eq_without_eq)]
14392#[derive(Clone, PartialEq, ::prost::Message)]
14393pub struct AddTrustedEndpointsUserRequest {
14394 #[prost(string, tag = "1")]
14395 pub endpoint_id: ::prost::alloc::string::String,
14396}
14397#[derive(serde::Deserialize, serde::Serialize)]
14398#[allow(clippy::derive_partial_eq_without_eq)]
14399#[derive(Clone, PartialEq, ::prost::Message)]
14400pub struct AddTrustedEndpointsUserResponse {
14401 #[prost(message, optional, tag = "1")]
14404 pub user: ::core::option::Option<super::super::models::v2::User>,
14405}
14406#[derive(serde::Deserialize, serde::Serialize)]
14407#[allow(clippy::derive_partial_eq_without_eq)]
14408#[derive(Clone, PartialEq, ::prost::Message)]
14409pub struct RemoveTrustedEndpointsUserRequest {
14410 #[prost(string, tag = "1")]
14411 pub endpoint_id: ::prost::alloc::string::String,
14412}
14413#[derive(serde::Deserialize, serde::Serialize)]
14414#[allow(clippy::derive_partial_eq_without_eq)]
14415#[derive(Clone, PartialEq, ::prost::Message)]
14416pub struct RemoveTrustedEndpointsUserResponse {
14417 #[prost(message, optional, tag = "1")]
14418 pub user: ::core::option::Option<super::super::models::v2::User>,
14419}
14420#[derive(serde::Deserialize, serde::Serialize)]
14421#[allow(clippy::derive_partial_eq_without_eq)]
14422#[derive(Clone, PartialEq, ::prost::Message)]
14423pub struct AddDataProxyAttributeUserRequest {
14424 #[prost(string, tag = "1")]
14425 pub user_id: ::prost::alloc::string::String,
14426 #[prost(message, optional, tag = "2")]
14427 pub attribute: ::core::option::Option<super::super::models::v2::DataProxyAttribute>,
14428}
14429#[derive(serde::Deserialize, serde::Serialize)]
14430#[allow(clippy::derive_partial_eq_without_eq)]
14431#[derive(Clone, PartialEq, ::prost::Message)]
14432pub struct AddDataProxyAttributeUserResponse {}
14433#[derive(serde::Deserialize, serde::Serialize)]
14434#[allow(clippy::derive_partial_eq_without_eq)]
14435#[derive(Clone, PartialEq, ::prost::Message)]
14436pub struct RemoveDataProxyAttributeUserRequest {
14437 #[prost(string, tag = "1")]
14438 pub user_id: ::prost::alloc::string::String,
14439 #[prost(string, tag = "2")]
14440 pub dataproxy_id: ::prost::alloc::string::String,
14441 #[prost(string, tag = "3")]
14442 pub attribute_name: ::prost::alloc::string::String,
14443}
14444#[derive(serde::Deserialize, serde::Serialize)]
14445#[allow(clippy::derive_partial_eq_without_eq)]
14446#[derive(Clone, PartialEq, ::prost::Message)]
14447pub struct RemoveDataProxyAttributeUserResponse {}
14448#[derive(serde::Deserialize, serde::Serialize)]
14449#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
14450#[repr(i32)]
14451pub enum ReferenceType {
14452 Unspecified = 0,
14453 User = 1,
14454 Resource = 2,
14455}
14456impl ReferenceType {
14457 pub fn as_str_name(&self) -> &'static str {
14462 match self {
14463 ReferenceType::Unspecified => "REFERENCE_TYPE_UNSPECIFIED",
14464 ReferenceType::User => "REFERENCE_TYPE_USER",
14465 ReferenceType::Resource => "REFERENCE_TYPE_RESOURCE",
14466 }
14467 }
14468 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
14470 match value {
14471 "REFERENCE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
14472 "REFERENCE_TYPE_USER" => Some(Self::User),
14473 "REFERENCE_TYPE_RESOURCE" => Some(Self::Resource),
14474 _ => None,
14475 }
14476 }
14477}
14478#[derive(serde::Deserialize, serde::Serialize)]
14479#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
14480#[repr(i32)]
14481pub enum PersonalNotificationVariant {
14482 Unspecified = 0,
14483 AccessRequested = 1,
14484 PermissionGranted = 2,
14485 PermissionRevoked = 3,
14486 PermissionUpdated = 4,
14487 Announcement = 5,
14488}
14489impl PersonalNotificationVariant {
14490 pub fn as_str_name(&self) -> &'static str {
14495 match self {
14496 PersonalNotificationVariant::Unspecified => {
14497 "PERSONAL_NOTIFICATION_VARIANT_UNSPECIFIED"
14498 }
14499 PersonalNotificationVariant::AccessRequested => {
14500 "PERSONAL_NOTIFICATION_VARIANT_ACCESS_REQUESTED"
14501 }
14502 PersonalNotificationVariant::PermissionGranted => {
14503 "PERSONAL_NOTIFICATION_VARIANT_PERMISSION_GRANTED"
14504 }
14505 PersonalNotificationVariant::PermissionRevoked => {
14506 "PERSONAL_NOTIFICATION_VARIANT_PERMISSION_REVOKED"
14507 }
14508 PersonalNotificationVariant::PermissionUpdated => {
14509 "PERSONAL_NOTIFICATION_VARIANT_PERMISSION_UPDATED"
14510 }
14511 PersonalNotificationVariant::Announcement => {
14512 "PERSONAL_NOTIFICATION_VARIANT_ANNOUNCEMENT"
14513 }
14514 }
14515 }
14516 pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
14518 match value {
14519 "PERSONAL_NOTIFICATION_VARIANT_UNSPECIFIED" => Some(Self::Unspecified),
14520 "PERSONAL_NOTIFICATION_VARIANT_ACCESS_REQUESTED" => {
14521 Some(Self::AccessRequested)
14522 }
14523 "PERSONAL_NOTIFICATION_VARIANT_PERMISSION_GRANTED" => {
14524 Some(Self::PermissionGranted)
14525 }
14526 "PERSONAL_NOTIFICATION_VARIANT_PERMISSION_REVOKED" => {
14527 Some(Self::PermissionRevoked)
14528 }
14529 "PERSONAL_NOTIFICATION_VARIANT_PERMISSION_UPDATED" => {
14530 Some(Self::PermissionUpdated)
14531 }
14532 "PERSONAL_NOTIFICATION_VARIANT_ANNOUNCEMENT" => Some(Self::Announcement),
14533 _ => None,
14534 }
14535 }
14536}
14537pub mod user_service_client {
14539 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
14540 use tonic::codegen::*;
14541 use tonic::codegen::http::Uri;
14542 #[derive(Debug, Clone)]
14548 pub struct UserServiceClient<T> {
14549 inner: tonic::client::Grpc<T>,
14550 }
14551 impl UserServiceClient<tonic::transport::Channel> {
14552 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
14554 where
14555 D: TryInto<tonic::transport::Endpoint>,
14556 D::Error: Into<StdError>,
14557 {
14558 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
14559 Ok(Self::new(conn))
14560 }
14561 }
14562 impl<T> UserServiceClient<T>
14563 where
14564 T: tonic::client::GrpcService<tonic::body::BoxBody>,
14565 T::Error: Into<StdError>,
14566 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
14567 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
14568 {
14569 pub fn new(inner: T) -> Self {
14570 let inner = tonic::client::Grpc::new(inner);
14571 Self { inner }
14572 }
14573 pub fn with_origin(inner: T, origin: Uri) -> Self {
14574 let inner = tonic::client::Grpc::with_origin(inner, origin);
14575 Self { inner }
14576 }
14577 pub fn with_interceptor<F>(
14578 inner: T,
14579 interceptor: F,
14580 ) -> UserServiceClient<InterceptedService<T, F>>
14581 where
14582 F: tonic::service::Interceptor,
14583 T::ResponseBody: Default,
14584 T: tonic::codegen::Service<
14585 http::Request<tonic::body::BoxBody>,
14586 Response = http::Response<
14587 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
14588 >,
14589 >,
14590 <T as tonic::codegen::Service<
14591 http::Request<tonic::body::BoxBody>,
14592 >>::Error: Into<StdError> + Send + Sync,
14593 {
14594 UserServiceClient::new(InterceptedService::new(inner, interceptor))
14595 }
14596 #[must_use]
14601 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
14602 self.inner = self.inner.send_compressed(encoding);
14603 self
14604 }
14605 #[must_use]
14607 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
14608 self.inner = self.inner.accept_compressed(encoding);
14609 self
14610 }
14611 #[must_use]
14615 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
14616 self.inner = self.inner.max_decoding_message_size(limit);
14617 self
14618 }
14619 #[must_use]
14623 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
14624 self.inner = self.inner.max_encoding_message_size(limit);
14625 self
14626 }
14627 pub async fn register_user(
14633 &mut self,
14634 request: impl tonic::IntoRequest<super::RegisterUserRequest>,
14635 ) -> std::result::Result<
14636 tonic::Response<super::RegisterUserResponse>,
14637 tonic::Status,
14638 > {
14639 self.inner
14640 .ready()
14641 .await
14642 .map_err(|e| {
14643 tonic::Status::new(
14644 tonic::Code::Unknown,
14645 format!("Service was not ready: {}", e.into()),
14646 )
14647 })?;
14648 let codec = tonic::codec::ProstCodec::default();
14649 let path = http::uri::PathAndQuery::from_static(
14650 "/aruna.api.storage.services.v2.UserService/RegisterUser",
14651 );
14652 let mut req = request.into_request();
14653 req.extensions_mut()
14654 .insert(
14655 GrpcMethod::new(
14656 "aruna.api.storage.services.v2.UserService",
14657 "RegisterUser",
14658 ),
14659 );
14660 self.inner.unary(req, path, codec).await
14661 }
14662 pub async fn deactivate_user(
14668 &mut self,
14669 request: impl tonic::IntoRequest<super::DeactivateUserRequest>,
14670 ) -> std::result::Result<
14671 tonic::Response<super::DeactivateUserResponse>,
14672 tonic::Status,
14673 > {
14674 self.inner
14675 .ready()
14676 .await
14677 .map_err(|e| {
14678 tonic::Status::new(
14679 tonic::Code::Unknown,
14680 format!("Service was not ready: {}", e.into()),
14681 )
14682 })?;
14683 let codec = tonic::codec::ProstCodec::default();
14684 let path = http::uri::PathAndQuery::from_static(
14685 "/aruna.api.storage.services.v2.UserService/DeactivateUser",
14686 );
14687 let mut req = request.into_request();
14688 req.extensions_mut()
14689 .insert(
14690 GrpcMethod::new(
14691 "aruna.api.storage.services.v2.UserService",
14692 "DeactivateUser",
14693 ),
14694 );
14695 self.inner.unary(req, path, codec).await
14696 }
14697 pub async fn activate_user(
14703 &mut self,
14704 request: impl tonic::IntoRequest<super::ActivateUserRequest>,
14705 ) -> std::result::Result<
14706 tonic::Response<super::ActivateUserResponse>,
14707 tonic::Status,
14708 > {
14709 self.inner
14710 .ready()
14711 .await
14712 .map_err(|e| {
14713 tonic::Status::new(
14714 tonic::Code::Unknown,
14715 format!("Service was not ready: {}", e.into()),
14716 )
14717 })?;
14718 let codec = tonic::codec::ProstCodec::default();
14719 let path = http::uri::PathAndQuery::from_static(
14720 "/aruna.api.storage.services.v2.UserService/ActivateUser",
14721 );
14722 let mut req = request.into_request();
14723 req.extensions_mut()
14724 .insert(
14725 GrpcMethod::new(
14726 "aruna.api.storage.services.v2.UserService",
14727 "ActivateUser",
14728 ),
14729 );
14730 self.inner.unary(req, path, codec).await
14731 }
14732 pub async fn create_api_token(
14738 &mut self,
14739 request: impl tonic::IntoRequest<super::CreateApiTokenRequest>,
14740 ) -> std::result::Result<
14741 tonic::Response<super::CreateApiTokenResponse>,
14742 tonic::Status,
14743 > {
14744 self.inner
14745 .ready()
14746 .await
14747 .map_err(|e| {
14748 tonic::Status::new(
14749 tonic::Code::Unknown,
14750 format!("Service was not ready: {}", e.into()),
14751 )
14752 })?;
14753 let codec = tonic::codec::ProstCodec::default();
14754 let path = http::uri::PathAndQuery::from_static(
14755 "/aruna.api.storage.services.v2.UserService/CreateAPIToken",
14756 );
14757 let mut req = request.into_request();
14758 req.extensions_mut()
14759 .insert(
14760 GrpcMethod::new(
14761 "aruna.api.storage.services.v2.UserService",
14762 "CreateAPIToken",
14763 ),
14764 );
14765 self.inner.unary(req, path, codec).await
14766 }
14767 pub async fn get_api_token(
14773 &mut self,
14774 request: impl tonic::IntoRequest<super::GetApiTokenRequest>,
14775 ) -> std::result::Result<
14776 tonic::Response<super::GetApiTokenResponse>,
14777 tonic::Status,
14778 > {
14779 self.inner
14780 .ready()
14781 .await
14782 .map_err(|e| {
14783 tonic::Status::new(
14784 tonic::Code::Unknown,
14785 format!("Service was not ready: {}", e.into()),
14786 )
14787 })?;
14788 let codec = tonic::codec::ProstCodec::default();
14789 let path = http::uri::PathAndQuery::from_static(
14790 "/aruna.api.storage.services.v2.UserService/GetAPIToken",
14791 );
14792 let mut req = request.into_request();
14793 req.extensions_mut()
14794 .insert(
14795 GrpcMethod::new(
14796 "aruna.api.storage.services.v2.UserService",
14797 "GetAPIToken",
14798 ),
14799 );
14800 self.inner.unary(req, path, codec).await
14801 }
14802 pub async fn get_api_tokens(
14808 &mut self,
14809 request: impl tonic::IntoRequest<super::GetApiTokensRequest>,
14810 ) -> std::result::Result<
14811 tonic::Response<super::GetApiTokensResponse>,
14812 tonic::Status,
14813 > {
14814 self.inner
14815 .ready()
14816 .await
14817 .map_err(|e| {
14818 tonic::Status::new(
14819 tonic::Code::Unknown,
14820 format!("Service was not ready: {}", e.into()),
14821 )
14822 })?;
14823 let codec = tonic::codec::ProstCodec::default();
14824 let path = http::uri::PathAndQuery::from_static(
14825 "/aruna.api.storage.services.v2.UserService/GetAPITokens",
14826 );
14827 let mut req = request.into_request();
14828 req.extensions_mut()
14829 .insert(
14830 GrpcMethod::new(
14831 "aruna.api.storage.services.v2.UserService",
14832 "GetAPITokens",
14833 ),
14834 );
14835 self.inner.unary(req, path, codec).await
14836 }
14837 pub async fn delete_api_token(
14843 &mut self,
14844 request: impl tonic::IntoRequest<super::DeleteApiTokenRequest>,
14845 ) -> std::result::Result<
14846 tonic::Response<super::DeleteApiTokenResponse>,
14847 tonic::Status,
14848 > {
14849 self.inner
14850 .ready()
14851 .await
14852 .map_err(|e| {
14853 tonic::Status::new(
14854 tonic::Code::Unknown,
14855 format!("Service was not ready: {}", e.into()),
14856 )
14857 })?;
14858 let codec = tonic::codec::ProstCodec::default();
14859 let path = http::uri::PathAndQuery::from_static(
14860 "/aruna.api.storage.services.v2.UserService/DeleteAPIToken",
14861 );
14862 let mut req = request.into_request();
14863 req.extensions_mut()
14864 .insert(
14865 GrpcMethod::new(
14866 "aruna.api.storage.services.v2.UserService",
14867 "DeleteAPIToken",
14868 ),
14869 );
14870 self.inner.unary(req, path, codec).await
14871 }
14872 pub async fn delete_api_tokens(
14878 &mut self,
14879 request: impl tonic::IntoRequest<super::DeleteApiTokensRequest>,
14880 ) -> std::result::Result<
14881 tonic::Response<super::DeleteApiTokensResponse>,
14882 tonic::Status,
14883 > {
14884 self.inner
14885 .ready()
14886 .await
14887 .map_err(|e| {
14888 tonic::Status::new(
14889 tonic::Code::Unknown,
14890 format!("Service was not ready: {}", e.into()),
14891 )
14892 })?;
14893 let codec = tonic::codec::ProstCodec::default();
14894 let path = http::uri::PathAndQuery::from_static(
14895 "/aruna.api.storage.services.v2.UserService/DeleteAPITokens",
14896 );
14897 let mut req = request.into_request();
14898 req.extensions_mut()
14899 .insert(
14900 GrpcMethod::new(
14901 "aruna.api.storage.services.v2.UserService",
14902 "DeleteAPITokens",
14903 ),
14904 );
14905 self.inner.unary(req, path, codec).await
14906 }
14907 pub async fn get_user(
14914 &mut self,
14915 request: impl tonic::IntoRequest<super::GetUserRequest>,
14916 ) -> std::result::Result<
14917 tonic::Response<super::GetUserResponse>,
14918 tonic::Status,
14919 > {
14920 self.inner
14921 .ready()
14922 .await
14923 .map_err(|e| {
14924 tonic::Status::new(
14925 tonic::Code::Unknown,
14926 format!("Service was not ready: {}", e.into()),
14927 )
14928 })?;
14929 let codec = tonic::codec::ProstCodec::default();
14930 let path = http::uri::PathAndQuery::from_static(
14931 "/aruna.api.storage.services.v2.UserService/GetUser",
14932 );
14933 let mut req = request.into_request();
14934 req.extensions_mut()
14935 .insert(
14936 GrpcMethod::new(
14937 "aruna.api.storage.services.v2.UserService",
14938 "GetUser",
14939 ),
14940 );
14941 self.inner.unary(req, path, codec).await
14942 }
14943 pub async fn get_user_redacted(
14951 &mut self,
14952 request: impl tonic::IntoRequest<super::GetUserRedactedRequest>,
14953 ) -> std::result::Result<
14954 tonic::Response<super::GetUserRedactedResponse>,
14955 tonic::Status,
14956 > {
14957 self.inner
14958 .ready()
14959 .await
14960 .map_err(|e| {
14961 tonic::Status::new(
14962 tonic::Code::Unknown,
14963 format!("Service was not ready: {}", e.into()),
14964 )
14965 })?;
14966 let codec = tonic::codec::ProstCodec::default();
14967 let path = http::uri::PathAndQuery::from_static(
14968 "/aruna.api.storage.services.v2.UserService/GetUserRedacted",
14969 );
14970 let mut req = request.into_request();
14971 req.extensions_mut()
14972 .insert(
14973 GrpcMethod::new(
14974 "aruna.api.storage.services.v2.UserService",
14975 "GetUserRedacted",
14976 ),
14977 );
14978 self.inner.unary(req, path, codec).await
14979 }
14980 pub async fn update_user_display_name(
14986 &mut self,
14987 request: impl tonic::IntoRequest<super::UpdateUserDisplayNameRequest>,
14988 ) -> std::result::Result<
14989 tonic::Response<super::UpdateUserDisplayNameResponse>,
14990 tonic::Status,
14991 > {
14992 self.inner
14993 .ready()
14994 .await
14995 .map_err(|e| {
14996 tonic::Status::new(
14997 tonic::Code::Unknown,
14998 format!("Service was not ready: {}", e.into()),
14999 )
15000 })?;
15001 let codec = tonic::codec::ProstCodec::default();
15002 let path = http::uri::PathAndQuery::from_static(
15003 "/aruna.api.storage.services.v2.UserService/UpdateUserDisplayName",
15004 );
15005 let mut req = request.into_request();
15006 req.extensions_mut()
15007 .insert(
15008 GrpcMethod::new(
15009 "aruna.api.storage.services.v2.UserService",
15010 "UpdateUserDisplayName",
15011 ),
15012 );
15013 self.inner.unary(req, path, codec).await
15014 }
15015 pub async fn update_user_email(
15021 &mut self,
15022 request: impl tonic::IntoRequest<super::UpdateUserEmailRequest>,
15023 ) -> std::result::Result<
15024 tonic::Response<super::UpdateUserEmailResponse>,
15025 tonic::Status,
15026 > {
15027 self.inner
15028 .ready()
15029 .await
15030 .map_err(|e| {
15031 tonic::Status::new(
15032 tonic::Code::Unknown,
15033 format!("Service was not ready: {}", e.into()),
15034 )
15035 })?;
15036 let codec = tonic::codec::ProstCodec::default();
15037 let path = http::uri::PathAndQuery::from_static(
15038 "/aruna.api.storage.services.v2.UserService/UpdateUserEmail",
15039 );
15040 let mut req = request.into_request();
15041 req.extensions_mut()
15042 .insert(
15043 GrpcMethod::new(
15044 "aruna.api.storage.services.v2.UserService",
15045 "UpdateUserEmail",
15046 ),
15047 );
15048 self.inner.unary(req, path, codec).await
15049 }
15050 pub async fn get_not_activated_users(
15056 &mut self,
15057 request: impl tonic::IntoRequest<super::GetNotActivatedUsersRequest>,
15058 ) -> std::result::Result<
15059 tonic::Response<super::GetNotActivatedUsersResponse>,
15060 tonic::Status,
15061 > {
15062 self.inner
15063 .ready()
15064 .await
15065 .map_err(|e| {
15066 tonic::Status::new(
15067 tonic::Code::Unknown,
15068 format!("Service was not ready: {}", e.into()),
15069 )
15070 })?;
15071 let codec = tonic::codec::ProstCodec::default();
15072 let path = http::uri::PathAndQuery::from_static(
15073 "/aruna.api.storage.services.v2.UserService/GetNotActivatedUsers",
15074 );
15075 let mut req = request.into_request();
15076 req.extensions_mut()
15077 .insert(
15078 GrpcMethod::new(
15079 "aruna.api.storage.services.v2.UserService",
15080 "GetNotActivatedUsers",
15081 ),
15082 );
15083 self.inner.unary(req, path, codec).await
15084 }
15085 pub async fn get_all_users(
15091 &mut self,
15092 request: impl tonic::IntoRequest<super::GetAllUsersRequest>,
15093 ) -> std::result::Result<
15094 tonic::Response<super::GetAllUsersResponse>,
15095 tonic::Status,
15096 > {
15097 self.inner
15098 .ready()
15099 .await
15100 .map_err(|e| {
15101 tonic::Status::new(
15102 tonic::Code::Unknown,
15103 format!("Service was not ready: {}", e.into()),
15104 )
15105 })?;
15106 let codec = tonic::codec::ProstCodec::default();
15107 let path = http::uri::PathAndQuery::from_static(
15108 "/aruna.api.storage.services.v2.UserService/GetAllUsers",
15109 );
15110 let mut req = request.into_request();
15111 req.extensions_mut()
15112 .insert(
15113 GrpcMethod::new(
15114 "aruna.api.storage.services.v2.UserService",
15115 "GetAllUsers",
15116 ),
15117 );
15118 self.inner.unary(req, path, codec).await
15119 }
15120 pub async fn create_s3_credentials_user_token(
15126 &mut self,
15127 request: impl tonic::IntoRequest<super::CreateS3CredentialsUserTokenRequest>,
15128 ) -> std::result::Result<
15129 tonic::Response<super::CreateS3CredentialsUserTokenResponse>,
15130 tonic::Status,
15131 > {
15132 self.inner
15133 .ready()
15134 .await
15135 .map_err(|e| {
15136 tonic::Status::new(
15137 tonic::Code::Unknown,
15138 format!("Service was not ready: {}", e.into()),
15139 )
15140 })?;
15141 let codec = tonic::codec::ProstCodec::default();
15142 let path = http::uri::PathAndQuery::from_static(
15143 "/aruna.api.storage.services.v2.UserService/CreateS3CredentialsUserToken",
15144 );
15145 let mut req = request.into_request();
15146 req.extensions_mut()
15147 .insert(
15148 GrpcMethod::new(
15149 "aruna.api.storage.services.v2.UserService",
15150 "CreateS3CredentialsUserToken",
15151 ),
15152 );
15153 self.inner.unary(req, path, codec).await
15154 }
15155 pub async fn get_s3_credentials_user_token(
15161 &mut self,
15162 request: impl tonic::IntoRequest<super::GetS3CredentialsUserTokenRequest>,
15163 ) -> std::result::Result<
15164 tonic::Response<super::GetS3CredentialsUserTokenResponse>,
15165 tonic::Status,
15166 > {
15167 self.inner
15168 .ready()
15169 .await
15170 .map_err(|e| {
15171 tonic::Status::new(
15172 tonic::Code::Unknown,
15173 format!("Service was not ready: {}", e.into()),
15174 )
15175 })?;
15176 let codec = tonic::codec::ProstCodec::default();
15177 let path = http::uri::PathAndQuery::from_static(
15178 "/aruna.api.storage.services.v2.UserService/GetS3CredentialsUserToken",
15179 );
15180 let mut req = request.into_request();
15181 req.extensions_mut()
15182 .insert(
15183 GrpcMethod::new(
15184 "aruna.api.storage.services.v2.UserService",
15185 "GetS3CredentialsUserToken",
15186 ),
15187 );
15188 self.inner.unary(req, path, codec).await
15189 }
15190 pub async fn delete_s3_credentials_user_token(
15196 &mut self,
15197 request: impl tonic::IntoRequest<super::DeleteS3CredentialsUserTokenRequest>,
15198 ) -> std::result::Result<
15199 tonic::Response<super::DeleteS3CredentialsUserResponse>,
15200 tonic::Status,
15201 > {
15202 self.inner
15203 .ready()
15204 .await
15205 .map_err(|e| {
15206 tonic::Status::new(
15207 tonic::Code::Unknown,
15208 format!("Service was not ready: {}", e.into()),
15209 )
15210 })?;
15211 let codec = tonic::codec::ProstCodec::default();
15212 let path = http::uri::PathAndQuery::from_static(
15213 "/aruna.api.storage.services.v2.UserService/DeleteS3CredentialsUserToken",
15214 );
15215 let mut req = request.into_request();
15216 req.extensions_mut()
15217 .insert(
15218 GrpcMethod::new(
15219 "aruna.api.storage.services.v2.UserService",
15220 "DeleteS3CredentialsUserToken",
15221 ),
15222 );
15223 self.inner.unary(req, path, codec).await
15224 }
15225 pub async fn get_dataproxy_token_user(
15231 &mut self,
15232 request: impl tonic::IntoRequest<super::GetDataproxyTokenUserRequest>,
15233 ) -> std::result::Result<
15234 tonic::Response<super::GetDataproxyTokenUserResponse>,
15235 tonic::Status,
15236 > {
15237 self.inner
15238 .ready()
15239 .await
15240 .map_err(|e| {
15241 tonic::Status::new(
15242 tonic::Code::Unknown,
15243 format!("Service was not ready: {}", e.into()),
15244 )
15245 })?;
15246 let codec = tonic::codec::ProstCodec::default();
15247 let path = http::uri::PathAndQuery::from_static(
15248 "/aruna.api.storage.services.v2.UserService/GetDataproxyTokenUser",
15249 );
15250 let mut req = request.into_request();
15251 req.extensions_mut()
15252 .insert(
15253 GrpcMethod::new(
15254 "aruna.api.storage.services.v2.UserService",
15255 "GetDataproxyTokenUser",
15256 ),
15257 );
15258 self.inner.unary(req, path, codec).await
15259 }
15260 pub async fn get_personal_notifications(
15266 &mut self,
15267 request: impl tonic::IntoRequest<super::GetPersonalNotificationsRequest>,
15268 ) -> std::result::Result<
15269 tonic::Response<super::GetPersonalNotificationsResponse>,
15270 tonic::Status,
15271 > {
15272 self.inner
15273 .ready()
15274 .await
15275 .map_err(|e| {
15276 tonic::Status::new(
15277 tonic::Code::Unknown,
15278 format!("Service was not ready: {}", e.into()),
15279 )
15280 })?;
15281 let codec = tonic::codec::ProstCodec::default();
15282 let path = http::uri::PathAndQuery::from_static(
15283 "/aruna.api.storage.services.v2.UserService/GetPersonalNotifications",
15284 );
15285 let mut req = request.into_request();
15286 req.extensions_mut()
15287 .insert(
15288 GrpcMethod::new(
15289 "aruna.api.storage.services.v2.UserService",
15290 "GetPersonalNotifications",
15291 ),
15292 );
15293 self.inner.unary(req, path, codec).await
15294 }
15295 pub async fn acknowledge_personal_notifications(
15301 &mut self,
15302 request: impl tonic::IntoRequest<
15303 super::AcknowledgePersonalNotificationsRequest,
15304 >,
15305 ) -> std::result::Result<
15306 tonic::Response<super::AcknowledgePersonalNotificationsResponse>,
15307 tonic::Status,
15308 > {
15309 self.inner
15310 .ready()
15311 .await
15312 .map_err(|e| {
15313 tonic::Status::new(
15314 tonic::Code::Unknown,
15315 format!("Service was not ready: {}", e.into()),
15316 )
15317 })?;
15318 let codec = tonic::codec::ProstCodec::default();
15319 let path = http::uri::PathAndQuery::from_static(
15320 "/aruna.api.storage.services.v2.UserService/AcknowledgePersonalNotifications",
15321 );
15322 let mut req = request.into_request();
15323 req.extensions_mut()
15324 .insert(
15325 GrpcMethod::new(
15326 "aruna.api.storage.services.v2.UserService",
15327 "AcknowledgePersonalNotifications",
15328 ),
15329 );
15330 self.inner.unary(req, path, codec).await
15331 }
15332 pub async fn add_oidc_provider(
15338 &mut self,
15339 request: impl tonic::IntoRequest<super::AddOidcProviderRequest>,
15340 ) -> std::result::Result<
15341 tonic::Response<super::AddOidcProviderResponse>,
15342 tonic::Status,
15343 > {
15344 self.inner
15345 .ready()
15346 .await
15347 .map_err(|e| {
15348 tonic::Status::new(
15349 tonic::Code::Unknown,
15350 format!("Service was not ready: {}", e.into()),
15351 )
15352 })?;
15353 let codec = tonic::codec::ProstCodec::default();
15354 let path = http::uri::PathAndQuery::from_static(
15355 "/aruna.api.storage.services.v2.UserService/AddOidcProvider",
15356 );
15357 let mut req = request.into_request();
15358 req.extensions_mut()
15359 .insert(
15360 GrpcMethod::new(
15361 "aruna.api.storage.services.v2.UserService",
15362 "AddOidcProvider",
15363 ),
15364 );
15365 self.inner.unary(req, path, codec).await
15366 }
15367 pub async fn remove_oidc_provider(
15374 &mut self,
15375 request: impl tonic::IntoRequest<super::RemoveOidcProviderRequest>,
15376 ) -> std::result::Result<
15377 tonic::Response<super::RemoveOidcProviderResponse>,
15378 tonic::Status,
15379 > {
15380 self.inner
15381 .ready()
15382 .await
15383 .map_err(|e| {
15384 tonic::Status::new(
15385 tonic::Code::Unknown,
15386 format!("Service was not ready: {}", e.into()),
15387 )
15388 })?;
15389 let codec = tonic::codec::ProstCodec::default();
15390 let path = http::uri::PathAndQuery::from_static(
15391 "/aruna.api.storage.services.v2.UserService/RemoveOidcProvider",
15392 );
15393 let mut req = request.into_request();
15394 req.extensions_mut()
15395 .insert(
15396 GrpcMethod::new(
15397 "aruna.api.storage.services.v2.UserService",
15398 "RemoveOidcProvider",
15399 ),
15400 );
15401 self.inner.unary(req, path, codec).await
15402 }
15403 pub async fn add_pubkey_user(
15409 &mut self,
15410 request: impl tonic::IntoRequest<super::AddPubkeyUserRequest>,
15411 ) -> std::result::Result<
15412 tonic::Response<super::AddPubkeyUserResponse>,
15413 tonic::Status,
15414 > {
15415 self.inner
15416 .ready()
15417 .await
15418 .map_err(|e| {
15419 tonic::Status::new(
15420 tonic::Code::Unknown,
15421 format!("Service was not ready: {}", e.into()),
15422 )
15423 })?;
15424 let codec = tonic::codec::ProstCodec::default();
15425 let path = http::uri::PathAndQuery::from_static(
15426 "/aruna.api.storage.services.v2.UserService/AddPubkeyUser",
15427 );
15428 let mut req = request.into_request();
15429 req.extensions_mut()
15430 .insert(
15431 GrpcMethod::new(
15432 "aruna.api.storage.services.v2.UserService",
15433 "AddPubkeyUser",
15434 ),
15435 );
15436 self.inner.unary(req, path, codec).await
15437 }
15438 pub async fn add_trusted_endpoints_user(
15444 &mut self,
15445 request: impl tonic::IntoRequest<super::AddTrustedEndpointsUserRequest>,
15446 ) -> std::result::Result<
15447 tonic::Response<super::AddTrustedEndpointsUserResponse>,
15448 tonic::Status,
15449 > {
15450 self.inner
15451 .ready()
15452 .await
15453 .map_err(|e| {
15454 tonic::Status::new(
15455 tonic::Code::Unknown,
15456 format!("Service was not ready: {}", e.into()),
15457 )
15458 })?;
15459 let codec = tonic::codec::ProstCodec::default();
15460 let path = http::uri::PathAndQuery::from_static(
15461 "/aruna.api.storage.services.v2.UserService/AddTrustedEndpointsUser",
15462 );
15463 let mut req = request.into_request();
15464 req.extensions_mut()
15465 .insert(
15466 GrpcMethod::new(
15467 "aruna.api.storage.services.v2.UserService",
15468 "AddTrustedEndpointsUser",
15469 ),
15470 );
15471 self.inner.unary(req, path, codec).await
15472 }
15473 pub async fn remove_trusted_endpoints_user(
15479 &mut self,
15480 request: impl tonic::IntoRequest<super::RemoveTrustedEndpointsUserRequest>,
15481 ) -> std::result::Result<
15482 tonic::Response<super::RemoveTrustedEndpointsUserResponse>,
15483 tonic::Status,
15484 > {
15485 self.inner
15486 .ready()
15487 .await
15488 .map_err(|e| {
15489 tonic::Status::new(
15490 tonic::Code::Unknown,
15491 format!("Service was not ready: {}", e.into()),
15492 )
15493 })?;
15494 let codec = tonic::codec::ProstCodec::default();
15495 let path = http::uri::PathAndQuery::from_static(
15496 "/aruna.api.storage.services.v2.UserService/RemoveTrustedEndpointsUser",
15497 );
15498 let mut req = request.into_request();
15499 req.extensions_mut()
15500 .insert(
15501 GrpcMethod::new(
15502 "aruna.api.storage.services.v2.UserService",
15503 "RemoveTrustedEndpointsUser",
15504 ),
15505 );
15506 self.inner.unary(req, path, codec).await
15507 }
15508 pub async fn add_data_proxy_attribute_user(
15514 &mut self,
15515 request: impl tonic::IntoRequest<super::AddDataProxyAttributeUserRequest>,
15516 ) -> std::result::Result<
15517 tonic::Response<super::AddDataProxyAttributeUserResponse>,
15518 tonic::Status,
15519 > {
15520 self.inner
15521 .ready()
15522 .await
15523 .map_err(|e| {
15524 tonic::Status::new(
15525 tonic::Code::Unknown,
15526 format!("Service was not ready: {}", e.into()),
15527 )
15528 })?;
15529 let codec = tonic::codec::ProstCodec::default();
15530 let path = http::uri::PathAndQuery::from_static(
15531 "/aruna.api.storage.services.v2.UserService/AddDataProxyAttributeUser",
15532 );
15533 let mut req = request.into_request();
15534 req.extensions_mut()
15535 .insert(
15536 GrpcMethod::new(
15537 "aruna.api.storage.services.v2.UserService",
15538 "AddDataProxyAttributeUser",
15539 ),
15540 );
15541 self.inner.unary(req, path, codec).await
15542 }
15543 pub async fn remove_data_proxy_attribute_user(
15549 &mut self,
15550 request: impl tonic::IntoRequest<super::RemoveDataProxyAttributeUserRequest>,
15551 ) -> std::result::Result<
15552 tonic::Response<super::RemoveDataProxyAttributeUserResponse>,
15553 tonic::Status,
15554 > {
15555 self.inner
15556 .ready()
15557 .await
15558 .map_err(|e| {
15559 tonic::Status::new(
15560 tonic::Code::Unknown,
15561 format!("Service was not ready: {}", e.into()),
15562 )
15563 })?;
15564 let codec = tonic::codec::ProstCodec::default();
15565 let path = http::uri::PathAndQuery::from_static(
15566 "/aruna.api.storage.services.v2.UserService/RemoveDataProxyAttributeUser",
15567 );
15568 let mut req = request.into_request();
15569 req.extensions_mut()
15570 .insert(
15571 GrpcMethod::new(
15572 "aruna.api.storage.services.v2.UserService",
15573 "RemoveDataProxyAttributeUser",
15574 ),
15575 );
15576 self.inner.unary(req, path, codec).await
15577 }
15578 }
15579}
15580pub mod user_service_server {
15582 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
15583 use tonic::codegen::*;
15584 #[async_trait]
15586 pub trait UserService: Send + Sync + 'static {
15587 async fn register_user(
15593 &self,
15594 request: tonic::Request<super::RegisterUserRequest>,
15595 ) -> std::result::Result<
15596 tonic::Response<super::RegisterUserResponse>,
15597 tonic::Status,
15598 >;
15599 async fn deactivate_user(
15605 &self,
15606 request: tonic::Request<super::DeactivateUserRequest>,
15607 ) -> std::result::Result<
15608 tonic::Response<super::DeactivateUserResponse>,
15609 tonic::Status,
15610 >;
15611 async fn activate_user(
15617 &self,
15618 request: tonic::Request<super::ActivateUserRequest>,
15619 ) -> std::result::Result<
15620 tonic::Response<super::ActivateUserResponse>,
15621 tonic::Status,
15622 >;
15623 async fn create_api_token(
15629 &self,
15630 request: tonic::Request<super::CreateApiTokenRequest>,
15631 ) -> std::result::Result<
15632 tonic::Response<super::CreateApiTokenResponse>,
15633 tonic::Status,
15634 >;
15635 async fn get_api_token(
15641 &self,
15642 request: tonic::Request<super::GetApiTokenRequest>,
15643 ) -> std::result::Result<
15644 tonic::Response<super::GetApiTokenResponse>,
15645 tonic::Status,
15646 >;
15647 async fn get_api_tokens(
15653 &self,
15654 request: tonic::Request<super::GetApiTokensRequest>,
15655 ) -> std::result::Result<
15656 tonic::Response<super::GetApiTokensResponse>,
15657 tonic::Status,
15658 >;
15659 async fn delete_api_token(
15665 &self,
15666 request: tonic::Request<super::DeleteApiTokenRequest>,
15667 ) -> std::result::Result<
15668 tonic::Response<super::DeleteApiTokenResponse>,
15669 tonic::Status,
15670 >;
15671 async fn delete_api_tokens(
15677 &self,
15678 request: tonic::Request<super::DeleteApiTokensRequest>,
15679 ) -> std::result::Result<
15680 tonic::Response<super::DeleteApiTokensResponse>,
15681 tonic::Status,
15682 >;
15683 async fn get_user(
15690 &self,
15691 request: tonic::Request<super::GetUserRequest>,
15692 ) -> std::result::Result<tonic::Response<super::GetUserResponse>, tonic::Status>;
15693 async fn get_user_redacted(
15701 &self,
15702 request: tonic::Request<super::GetUserRedactedRequest>,
15703 ) -> std::result::Result<
15704 tonic::Response<super::GetUserRedactedResponse>,
15705 tonic::Status,
15706 >;
15707 async fn update_user_display_name(
15713 &self,
15714 request: tonic::Request<super::UpdateUserDisplayNameRequest>,
15715 ) -> std::result::Result<
15716 tonic::Response<super::UpdateUserDisplayNameResponse>,
15717 tonic::Status,
15718 >;
15719 async fn update_user_email(
15725 &self,
15726 request: tonic::Request<super::UpdateUserEmailRequest>,
15727 ) -> std::result::Result<
15728 tonic::Response<super::UpdateUserEmailResponse>,
15729 tonic::Status,
15730 >;
15731 async fn get_not_activated_users(
15737 &self,
15738 request: tonic::Request<super::GetNotActivatedUsersRequest>,
15739 ) -> std::result::Result<
15740 tonic::Response<super::GetNotActivatedUsersResponse>,
15741 tonic::Status,
15742 >;
15743 async fn get_all_users(
15749 &self,
15750 request: tonic::Request<super::GetAllUsersRequest>,
15751 ) -> std::result::Result<
15752 tonic::Response<super::GetAllUsersResponse>,
15753 tonic::Status,
15754 >;
15755 async fn create_s3_credentials_user_token(
15761 &self,
15762 request: tonic::Request<super::CreateS3CredentialsUserTokenRequest>,
15763 ) -> std::result::Result<
15764 tonic::Response<super::CreateS3CredentialsUserTokenResponse>,
15765 tonic::Status,
15766 >;
15767 async fn get_s3_credentials_user_token(
15773 &self,
15774 request: tonic::Request<super::GetS3CredentialsUserTokenRequest>,
15775 ) -> std::result::Result<
15776 tonic::Response<super::GetS3CredentialsUserTokenResponse>,
15777 tonic::Status,
15778 >;
15779 async fn delete_s3_credentials_user_token(
15785 &self,
15786 request: tonic::Request<super::DeleteS3CredentialsUserTokenRequest>,
15787 ) -> std::result::Result<
15788 tonic::Response<super::DeleteS3CredentialsUserResponse>,
15789 tonic::Status,
15790 >;
15791 async fn get_dataproxy_token_user(
15797 &self,
15798 request: tonic::Request<super::GetDataproxyTokenUserRequest>,
15799 ) -> std::result::Result<
15800 tonic::Response<super::GetDataproxyTokenUserResponse>,
15801 tonic::Status,
15802 >;
15803 async fn get_personal_notifications(
15809 &self,
15810 request: tonic::Request<super::GetPersonalNotificationsRequest>,
15811 ) -> std::result::Result<
15812 tonic::Response<super::GetPersonalNotificationsResponse>,
15813 tonic::Status,
15814 >;
15815 async fn acknowledge_personal_notifications(
15821 &self,
15822 request: tonic::Request<super::AcknowledgePersonalNotificationsRequest>,
15823 ) -> std::result::Result<
15824 tonic::Response<super::AcknowledgePersonalNotificationsResponse>,
15825 tonic::Status,
15826 >;
15827 async fn add_oidc_provider(
15833 &self,
15834 request: tonic::Request<super::AddOidcProviderRequest>,
15835 ) -> std::result::Result<
15836 tonic::Response<super::AddOidcProviderResponse>,
15837 tonic::Status,
15838 >;
15839 async fn remove_oidc_provider(
15846 &self,
15847 request: tonic::Request<super::RemoveOidcProviderRequest>,
15848 ) -> std::result::Result<
15849 tonic::Response<super::RemoveOidcProviderResponse>,
15850 tonic::Status,
15851 >;
15852 async fn add_pubkey_user(
15858 &self,
15859 request: tonic::Request<super::AddPubkeyUserRequest>,
15860 ) -> std::result::Result<
15861 tonic::Response<super::AddPubkeyUserResponse>,
15862 tonic::Status,
15863 >;
15864 async fn add_trusted_endpoints_user(
15870 &self,
15871 request: tonic::Request<super::AddTrustedEndpointsUserRequest>,
15872 ) -> std::result::Result<
15873 tonic::Response<super::AddTrustedEndpointsUserResponse>,
15874 tonic::Status,
15875 >;
15876 async fn remove_trusted_endpoints_user(
15882 &self,
15883 request: tonic::Request<super::RemoveTrustedEndpointsUserRequest>,
15884 ) -> std::result::Result<
15885 tonic::Response<super::RemoveTrustedEndpointsUserResponse>,
15886 tonic::Status,
15887 >;
15888 async fn add_data_proxy_attribute_user(
15894 &self,
15895 request: tonic::Request<super::AddDataProxyAttributeUserRequest>,
15896 ) -> std::result::Result<
15897 tonic::Response<super::AddDataProxyAttributeUserResponse>,
15898 tonic::Status,
15899 >;
15900 async fn remove_data_proxy_attribute_user(
15906 &self,
15907 request: tonic::Request<super::RemoveDataProxyAttributeUserRequest>,
15908 ) -> std::result::Result<
15909 tonic::Response<super::RemoveDataProxyAttributeUserResponse>,
15910 tonic::Status,
15911 >;
15912 }
15913 #[derive(Debug)]
15919 pub struct UserServiceServer<T: UserService> {
15920 inner: _Inner<T>,
15921 accept_compression_encodings: EnabledCompressionEncodings,
15922 send_compression_encodings: EnabledCompressionEncodings,
15923 max_decoding_message_size: Option<usize>,
15924 max_encoding_message_size: Option<usize>,
15925 }
15926 struct _Inner<T>(Arc<T>);
15927 impl<T: UserService> UserServiceServer<T> {
15928 pub fn new(inner: T) -> Self {
15929 Self::from_arc(Arc::new(inner))
15930 }
15931 pub fn from_arc(inner: Arc<T>) -> Self {
15932 let inner = _Inner(inner);
15933 Self {
15934 inner,
15935 accept_compression_encodings: Default::default(),
15936 send_compression_encodings: Default::default(),
15937 max_decoding_message_size: None,
15938 max_encoding_message_size: None,
15939 }
15940 }
15941 pub fn with_interceptor<F>(
15942 inner: T,
15943 interceptor: F,
15944 ) -> InterceptedService<Self, F>
15945 where
15946 F: tonic::service::Interceptor,
15947 {
15948 InterceptedService::new(Self::new(inner), interceptor)
15949 }
15950 #[must_use]
15952 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
15953 self.accept_compression_encodings.enable(encoding);
15954 self
15955 }
15956 #[must_use]
15958 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
15959 self.send_compression_encodings.enable(encoding);
15960 self
15961 }
15962 #[must_use]
15966 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
15967 self.max_decoding_message_size = Some(limit);
15968 self
15969 }
15970 #[must_use]
15974 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
15975 self.max_encoding_message_size = Some(limit);
15976 self
15977 }
15978 }
15979 impl<T, B> tonic::codegen::Service<http::Request<B>> for UserServiceServer<T>
15980 where
15981 T: UserService,
15982 B: Body + Send + 'static,
15983 B::Error: Into<StdError> + Send + 'static,
15984 {
15985 type Response = http::Response<tonic::body::BoxBody>;
15986 type Error = std::convert::Infallible;
15987 type Future = BoxFuture<Self::Response, Self::Error>;
15988 fn poll_ready(
15989 &mut self,
15990 _cx: &mut Context<'_>,
15991 ) -> Poll<std::result::Result<(), Self::Error>> {
15992 Poll::Ready(Ok(()))
15993 }
15994 fn call(&mut self, req: http::Request<B>) -> Self::Future {
15995 let inner = self.inner.clone();
15996 match req.uri().path() {
15997 "/aruna.api.storage.services.v2.UserService/RegisterUser" => {
15998 #[allow(non_camel_case_types)]
15999 struct RegisterUserSvc<T: UserService>(pub Arc<T>);
16000 impl<
16001 T: UserService,
16002 > tonic::server::UnaryService<super::RegisterUserRequest>
16003 for RegisterUserSvc<T> {
16004 type Response = super::RegisterUserResponse;
16005 type Future = BoxFuture<
16006 tonic::Response<Self::Response>,
16007 tonic::Status,
16008 >;
16009 fn call(
16010 &mut self,
16011 request: tonic::Request<super::RegisterUserRequest>,
16012 ) -> Self::Future {
16013 let inner = Arc::clone(&self.0);
16014 let fut = async move {
16015 <T as UserService>::register_user(&inner, request).await
16016 };
16017 Box::pin(fut)
16018 }
16019 }
16020 let accept_compression_encodings = self.accept_compression_encodings;
16021 let send_compression_encodings = self.send_compression_encodings;
16022 let max_decoding_message_size = self.max_decoding_message_size;
16023 let max_encoding_message_size = self.max_encoding_message_size;
16024 let inner = self.inner.clone();
16025 let fut = async move {
16026 let inner = inner.0;
16027 let method = RegisterUserSvc(inner);
16028 let codec = tonic::codec::ProstCodec::default();
16029 let mut grpc = tonic::server::Grpc::new(codec)
16030 .apply_compression_config(
16031 accept_compression_encodings,
16032 send_compression_encodings,
16033 )
16034 .apply_max_message_size_config(
16035 max_decoding_message_size,
16036 max_encoding_message_size,
16037 );
16038 let res = grpc.unary(method, req).await;
16039 Ok(res)
16040 };
16041 Box::pin(fut)
16042 }
16043 "/aruna.api.storage.services.v2.UserService/DeactivateUser" => {
16044 #[allow(non_camel_case_types)]
16045 struct DeactivateUserSvc<T: UserService>(pub Arc<T>);
16046 impl<
16047 T: UserService,
16048 > tonic::server::UnaryService<super::DeactivateUserRequest>
16049 for DeactivateUserSvc<T> {
16050 type Response = super::DeactivateUserResponse;
16051 type Future = BoxFuture<
16052 tonic::Response<Self::Response>,
16053 tonic::Status,
16054 >;
16055 fn call(
16056 &mut self,
16057 request: tonic::Request<super::DeactivateUserRequest>,
16058 ) -> Self::Future {
16059 let inner = Arc::clone(&self.0);
16060 let fut = async move {
16061 <T as UserService>::deactivate_user(&inner, request).await
16062 };
16063 Box::pin(fut)
16064 }
16065 }
16066 let accept_compression_encodings = self.accept_compression_encodings;
16067 let send_compression_encodings = self.send_compression_encodings;
16068 let max_decoding_message_size = self.max_decoding_message_size;
16069 let max_encoding_message_size = self.max_encoding_message_size;
16070 let inner = self.inner.clone();
16071 let fut = async move {
16072 let inner = inner.0;
16073 let method = DeactivateUserSvc(inner);
16074 let codec = tonic::codec::ProstCodec::default();
16075 let mut grpc = tonic::server::Grpc::new(codec)
16076 .apply_compression_config(
16077 accept_compression_encodings,
16078 send_compression_encodings,
16079 )
16080 .apply_max_message_size_config(
16081 max_decoding_message_size,
16082 max_encoding_message_size,
16083 );
16084 let res = grpc.unary(method, req).await;
16085 Ok(res)
16086 };
16087 Box::pin(fut)
16088 }
16089 "/aruna.api.storage.services.v2.UserService/ActivateUser" => {
16090 #[allow(non_camel_case_types)]
16091 struct ActivateUserSvc<T: UserService>(pub Arc<T>);
16092 impl<
16093 T: UserService,
16094 > tonic::server::UnaryService<super::ActivateUserRequest>
16095 for ActivateUserSvc<T> {
16096 type Response = super::ActivateUserResponse;
16097 type Future = BoxFuture<
16098 tonic::Response<Self::Response>,
16099 tonic::Status,
16100 >;
16101 fn call(
16102 &mut self,
16103 request: tonic::Request<super::ActivateUserRequest>,
16104 ) -> Self::Future {
16105 let inner = Arc::clone(&self.0);
16106 let fut = async move {
16107 <T as UserService>::activate_user(&inner, request).await
16108 };
16109 Box::pin(fut)
16110 }
16111 }
16112 let accept_compression_encodings = self.accept_compression_encodings;
16113 let send_compression_encodings = self.send_compression_encodings;
16114 let max_decoding_message_size = self.max_decoding_message_size;
16115 let max_encoding_message_size = self.max_encoding_message_size;
16116 let inner = self.inner.clone();
16117 let fut = async move {
16118 let inner = inner.0;
16119 let method = ActivateUserSvc(inner);
16120 let codec = tonic::codec::ProstCodec::default();
16121 let mut grpc = tonic::server::Grpc::new(codec)
16122 .apply_compression_config(
16123 accept_compression_encodings,
16124 send_compression_encodings,
16125 )
16126 .apply_max_message_size_config(
16127 max_decoding_message_size,
16128 max_encoding_message_size,
16129 );
16130 let res = grpc.unary(method, req).await;
16131 Ok(res)
16132 };
16133 Box::pin(fut)
16134 }
16135 "/aruna.api.storage.services.v2.UserService/CreateAPIToken" => {
16136 #[allow(non_camel_case_types)]
16137 struct CreateAPITokenSvc<T: UserService>(pub Arc<T>);
16138 impl<
16139 T: UserService,
16140 > tonic::server::UnaryService<super::CreateApiTokenRequest>
16141 for CreateAPITokenSvc<T> {
16142 type Response = super::CreateApiTokenResponse;
16143 type Future = BoxFuture<
16144 tonic::Response<Self::Response>,
16145 tonic::Status,
16146 >;
16147 fn call(
16148 &mut self,
16149 request: tonic::Request<super::CreateApiTokenRequest>,
16150 ) -> Self::Future {
16151 let inner = Arc::clone(&self.0);
16152 let fut = async move {
16153 <T as UserService>::create_api_token(&inner, request).await
16154 };
16155 Box::pin(fut)
16156 }
16157 }
16158 let accept_compression_encodings = self.accept_compression_encodings;
16159 let send_compression_encodings = self.send_compression_encodings;
16160 let max_decoding_message_size = self.max_decoding_message_size;
16161 let max_encoding_message_size = self.max_encoding_message_size;
16162 let inner = self.inner.clone();
16163 let fut = async move {
16164 let inner = inner.0;
16165 let method = CreateAPITokenSvc(inner);
16166 let codec = tonic::codec::ProstCodec::default();
16167 let mut grpc = tonic::server::Grpc::new(codec)
16168 .apply_compression_config(
16169 accept_compression_encodings,
16170 send_compression_encodings,
16171 )
16172 .apply_max_message_size_config(
16173 max_decoding_message_size,
16174 max_encoding_message_size,
16175 );
16176 let res = grpc.unary(method, req).await;
16177 Ok(res)
16178 };
16179 Box::pin(fut)
16180 }
16181 "/aruna.api.storage.services.v2.UserService/GetAPIToken" => {
16182 #[allow(non_camel_case_types)]
16183 struct GetAPITokenSvc<T: UserService>(pub Arc<T>);
16184 impl<
16185 T: UserService,
16186 > tonic::server::UnaryService<super::GetApiTokenRequest>
16187 for GetAPITokenSvc<T> {
16188 type Response = super::GetApiTokenResponse;
16189 type Future = BoxFuture<
16190 tonic::Response<Self::Response>,
16191 tonic::Status,
16192 >;
16193 fn call(
16194 &mut self,
16195 request: tonic::Request<super::GetApiTokenRequest>,
16196 ) -> Self::Future {
16197 let inner = Arc::clone(&self.0);
16198 let fut = async move {
16199 <T as UserService>::get_api_token(&inner, request).await
16200 };
16201 Box::pin(fut)
16202 }
16203 }
16204 let accept_compression_encodings = self.accept_compression_encodings;
16205 let send_compression_encodings = self.send_compression_encodings;
16206 let max_decoding_message_size = self.max_decoding_message_size;
16207 let max_encoding_message_size = self.max_encoding_message_size;
16208 let inner = self.inner.clone();
16209 let fut = async move {
16210 let inner = inner.0;
16211 let method = GetAPITokenSvc(inner);
16212 let codec = tonic::codec::ProstCodec::default();
16213 let mut grpc = tonic::server::Grpc::new(codec)
16214 .apply_compression_config(
16215 accept_compression_encodings,
16216 send_compression_encodings,
16217 )
16218 .apply_max_message_size_config(
16219 max_decoding_message_size,
16220 max_encoding_message_size,
16221 );
16222 let res = grpc.unary(method, req).await;
16223 Ok(res)
16224 };
16225 Box::pin(fut)
16226 }
16227 "/aruna.api.storage.services.v2.UserService/GetAPITokens" => {
16228 #[allow(non_camel_case_types)]
16229 struct GetAPITokensSvc<T: UserService>(pub Arc<T>);
16230 impl<
16231 T: UserService,
16232 > tonic::server::UnaryService<super::GetApiTokensRequest>
16233 for GetAPITokensSvc<T> {
16234 type Response = super::GetApiTokensResponse;
16235 type Future = BoxFuture<
16236 tonic::Response<Self::Response>,
16237 tonic::Status,
16238 >;
16239 fn call(
16240 &mut self,
16241 request: tonic::Request<super::GetApiTokensRequest>,
16242 ) -> Self::Future {
16243 let inner = Arc::clone(&self.0);
16244 let fut = async move {
16245 <T as UserService>::get_api_tokens(&inner, request).await
16246 };
16247 Box::pin(fut)
16248 }
16249 }
16250 let accept_compression_encodings = self.accept_compression_encodings;
16251 let send_compression_encodings = self.send_compression_encodings;
16252 let max_decoding_message_size = self.max_decoding_message_size;
16253 let max_encoding_message_size = self.max_encoding_message_size;
16254 let inner = self.inner.clone();
16255 let fut = async move {
16256 let inner = inner.0;
16257 let method = GetAPITokensSvc(inner);
16258 let codec = tonic::codec::ProstCodec::default();
16259 let mut grpc = tonic::server::Grpc::new(codec)
16260 .apply_compression_config(
16261 accept_compression_encodings,
16262 send_compression_encodings,
16263 )
16264 .apply_max_message_size_config(
16265 max_decoding_message_size,
16266 max_encoding_message_size,
16267 );
16268 let res = grpc.unary(method, req).await;
16269 Ok(res)
16270 };
16271 Box::pin(fut)
16272 }
16273 "/aruna.api.storage.services.v2.UserService/DeleteAPIToken" => {
16274 #[allow(non_camel_case_types)]
16275 struct DeleteAPITokenSvc<T: UserService>(pub Arc<T>);
16276 impl<
16277 T: UserService,
16278 > tonic::server::UnaryService<super::DeleteApiTokenRequest>
16279 for DeleteAPITokenSvc<T> {
16280 type Response = super::DeleteApiTokenResponse;
16281 type Future = BoxFuture<
16282 tonic::Response<Self::Response>,
16283 tonic::Status,
16284 >;
16285 fn call(
16286 &mut self,
16287 request: tonic::Request<super::DeleteApiTokenRequest>,
16288 ) -> Self::Future {
16289 let inner = Arc::clone(&self.0);
16290 let fut = async move {
16291 <T as UserService>::delete_api_token(&inner, request).await
16292 };
16293 Box::pin(fut)
16294 }
16295 }
16296 let accept_compression_encodings = self.accept_compression_encodings;
16297 let send_compression_encodings = self.send_compression_encodings;
16298 let max_decoding_message_size = self.max_decoding_message_size;
16299 let max_encoding_message_size = self.max_encoding_message_size;
16300 let inner = self.inner.clone();
16301 let fut = async move {
16302 let inner = inner.0;
16303 let method = DeleteAPITokenSvc(inner);
16304 let codec = tonic::codec::ProstCodec::default();
16305 let mut grpc = tonic::server::Grpc::new(codec)
16306 .apply_compression_config(
16307 accept_compression_encodings,
16308 send_compression_encodings,
16309 )
16310 .apply_max_message_size_config(
16311 max_decoding_message_size,
16312 max_encoding_message_size,
16313 );
16314 let res = grpc.unary(method, req).await;
16315 Ok(res)
16316 };
16317 Box::pin(fut)
16318 }
16319 "/aruna.api.storage.services.v2.UserService/DeleteAPITokens" => {
16320 #[allow(non_camel_case_types)]
16321 struct DeleteAPITokensSvc<T: UserService>(pub Arc<T>);
16322 impl<
16323 T: UserService,
16324 > tonic::server::UnaryService<super::DeleteApiTokensRequest>
16325 for DeleteAPITokensSvc<T> {
16326 type Response = super::DeleteApiTokensResponse;
16327 type Future = BoxFuture<
16328 tonic::Response<Self::Response>,
16329 tonic::Status,
16330 >;
16331 fn call(
16332 &mut self,
16333 request: tonic::Request<super::DeleteApiTokensRequest>,
16334 ) -> Self::Future {
16335 let inner = Arc::clone(&self.0);
16336 let fut = async move {
16337 <T as UserService>::delete_api_tokens(&inner, request).await
16338 };
16339 Box::pin(fut)
16340 }
16341 }
16342 let accept_compression_encodings = self.accept_compression_encodings;
16343 let send_compression_encodings = self.send_compression_encodings;
16344 let max_decoding_message_size = self.max_decoding_message_size;
16345 let max_encoding_message_size = self.max_encoding_message_size;
16346 let inner = self.inner.clone();
16347 let fut = async move {
16348 let inner = inner.0;
16349 let method = DeleteAPITokensSvc(inner);
16350 let codec = tonic::codec::ProstCodec::default();
16351 let mut grpc = tonic::server::Grpc::new(codec)
16352 .apply_compression_config(
16353 accept_compression_encodings,
16354 send_compression_encodings,
16355 )
16356 .apply_max_message_size_config(
16357 max_decoding_message_size,
16358 max_encoding_message_size,
16359 );
16360 let res = grpc.unary(method, req).await;
16361 Ok(res)
16362 };
16363 Box::pin(fut)
16364 }
16365 "/aruna.api.storage.services.v2.UserService/GetUser" => {
16366 #[allow(non_camel_case_types)]
16367 struct GetUserSvc<T: UserService>(pub Arc<T>);
16368 impl<
16369 T: UserService,
16370 > tonic::server::UnaryService<super::GetUserRequest>
16371 for GetUserSvc<T> {
16372 type Response = super::GetUserResponse;
16373 type Future = BoxFuture<
16374 tonic::Response<Self::Response>,
16375 tonic::Status,
16376 >;
16377 fn call(
16378 &mut self,
16379 request: tonic::Request<super::GetUserRequest>,
16380 ) -> Self::Future {
16381 let inner = Arc::clone(&self.0);
16382 let fut = async move {
16383 <T as UserService>::get_user(&inner, request).await
16384 };
16385 Box::pin(fut)
16386 }
16387 }
16388 let accept_compression_encodings = self.accept_compression_encodings;
16389 let send_compression_encodings = self.send_compression_encodings;
16390 let max_decoding_message_size = self.max_decoding_message_size;
16391 let max_encoding_message_size = self.max_encoding_message_size;
16392 let inner = self.inner.clone();
16393 let fut = async move {
16394 let inner = inner.0;
16395 let method = GetUserSvc(inner);
16396 let codec = tonic::codec::ProstCodec::default();
16397 let mut grpc = tonic::server::Grpc::new(codec)
16398 .apply_compression_config(
16399 accept_compression_encodings,
16400 send_compression_encodings,
16401 )
16402 .apply_max_message_size_config(
16403 max_decoding_message_size,
16404 max_encoding_message_size,
16405 );
16406 let res = grpc.unary(method, req).await;
16407 Ok(res)
16408 };
16409 Box::pin(fut)
16410 }
16411 "/aruna.api.storage.services.v2.UserService/GetUserRedacted" => {
16412 #[allow(non_camel_case_types)]
16413 struct GetUserRedactedSvc<T: UserService>(pub Arc<T>);
16414 impl<
16415 T: UserService,
16416 > tonic::server::UnaryService<super::GetUserRedactedRequest>
16417 for GetUserRedactedSvc<T> {
16418 type Response = super::GetUserRedactedResponse;
16419 type Future = BoxFuture<
16420 tonic::Response<Self::Response>,
16421 tonic::Status,
16422 >;
16423 fn call(
16424 &mut self,
16425 request: tonic::Request<super::GetUserRedactedRequest>,
16426 ) -> Self::Future {
16427 let inner = Arc::clone(&self.0);
16428 let fut = async move {
16429 <T as UserService>::get_user_redacted(&inner, request).await
16430 };
16431 Box::pin(fut)
16432 }
16433 }
16434 let accept_compression_encodings = self.accept_compression_encodings;
16435 let send_compression_encodings = self.send_compression_encodings;
16436 let max_decoding_message_size = self.max_decoding_message_size;
16437 let max_encoding_message_size = self.max_encoding_message_size;
16438 let inner = self.inner.clone();
16439 let fut = async move {
16440 let inner = inner.0;
16441 let method = GetUserRedactedSvc(inner);
16442 let codec = tonic::codec::ProstCodec::default();
16443 let mut grpc = tonic::server::Grpc::new(codec)
16444 .apply_compression_config(
16445 accept_compression_encodings,
16446 send_compression_encodings,
16447 )
16448 .apply_max_message_size_config(
16449 max_decoding_message_size,
16450 max_encoding_message_size,
16451 );
16452 let res = grpc.unary(method, req).await;
16453 Ok(res)
16454 };
16455 Box::pin(fut)
16456 }
16457 "/aruna.api.storage.services.v2.UserService/UpdateUserDisplayName" => {
16458 #[allow(non_camel_case_types)]
16459 struct UpdateUserDisplayNameSvc<T: UserService>(pub Arc<T>);
16460 impl<
16461 T: UserService,
16462 > tonic::server::UnaryService<super::UpdateUserDisplayNameRequest>
16463 for UpdateUserDisplayNameSvc<T> {
16464 type Response = super::UpdateUserDisplayNameResponse;
16465 type Future = BoxFuture<
16466 tonic::Response<Self::Response>,
16467 tonic::Status,
16468 >;
16469 fn call(
16470 &mut self,
16471 request: tonic::Request<super::UpdateUserDisplayNameRequest>,
16472 ) -> Self::Future {
16473 let inner = Arc::clone(&self.0);
16474 let fut = async move {
16475 <T as UserService>::update_user_display_name(
16476 &inner,
16477 request,
16478 )
16479 .await
16480 };
16481 Box::pin(fut)
16482 }
16483 }
16484 let accept_compression_encodings = self.accept_compression_encodings;
16485 let send_compression_encodings = self.send_compression_encodings;
16486 let max_decoding_message_size = self.max_decoding_message_size;
16487 let max_encoding_message_size = self.max_encoding_message_size;
16488 let inner = self.inner.clone();
16489 let fut = async move {
16490 let inner = inner.0;
16491 let method = UpdateUserDisplayNameSvc(inner);
16492 let codec = tonic::codec::ProstCodec::default();
16493 let mut grpc = tonic::server::Grpc::new(codec)
16494 .apply_compression_config(
16495 accept_compression_encodings,
16496 send_compression_encodings,
16497 )
16498 .apply_max_message_size_config(
16499 max_decoding_message_size,
16500 max_encoding_message_size,
16501 );
16502 let res = grpc.unary(method, req).await;
16503 Ok(res)
16504 };
16505 Box::pin(fut)
16506 }
16507 "/aruna.api.storage.services.v2.UserService/UpdateUserEmail" => {
16508 #[allow(non_camel_case_types)]
16509 struct UpdateUserEmailSvc<T: UserService>(pub Arc<T>);
16510 impl<
16511 T: UserService,
16512 > tonic::server::UnaryService<super::UpdateUserEmailRequest>
16513 for UpdateUserEmailSvc<T> {
16514 type Response = super::UpdateUserEmailResponse;
16515 type Future = BoxFuture<
16516 tonic::Response<Self::Response>,
16517 tonic::Status,
16518 >;
16519 fn call(
16520 &mut self,
16521 request: tonic::Request<super::UpdateUserEmailRequest>,
16522 ) -> Self::Future {
16523 let inner = Arc::clone(&self.0);
16524 let fut = async move {
16525 <T as UserService>::update_user_email(&inner, request).await
16526 };
16527 Box::pin(fut)
16528 }
16529 }
16530 let accept_compression_encodings = self.accept_compression_encodings;
16531 let send_compression_encodings = self.send_compression_encodings;
16532 let max_decoding_message_size = self.max_decoding_message_size;
16533 let max_encoding_message_size = self.max_encoding_message_size;
16534 let inner = self.inner.clone();
16535 let fut = async move {
16536 let inner = inner.0;
16537 let method = UpdateUserEmailSvc(inner);
16538 let codec = tonic::codec::ProstCodec::default();
16539 let mut grpc = tonic::server::Grpc::new(codec)
16540 .apply_compression_config(
16541 accept_compression_encodings,
16542 send_compression_encodings,
16543 )
16544 .apply_max_message_size_config(
16545 max_decoding_message_size,
16546 max_encoding_message_size,
16547 );
16548 let res = grpc.unary(method, req).await;
16549 Ok(res)
16550 };
16551 Box::pin(fut)
16552 }
16553 "/aruna.api.storage.services.v2.UserService/GetNotActivatedUsers" => {
16554 #[allow(non_camel_case_types)]
16555 struct GetNotActivatedUsersSvc<T: UserService>(pub Arc<T>);
16556 impl<
16557 T: UserService,
16558 > tonic::server::UnaryService<super::GetNotActivatedUsersRequest>
16559 for GetNotActivatedUsersSvc<T> {
16560 type Response = super::GetNotActivatedUsersResponse;
16561 type Future = BoxFuture<
16562 tonic::Response<Self::Response>,
16563 tonic::Status,
16564 >;
16565 fn call(
16566 &mut self,
16567 request: tonic::Request<super::GetNotActivatedUsersRequest>,
16568 ) -> Self::Future {
16569 let inner = Arc::clone(&self.0);
16570 let fut = async move {
16571 <T as UserService>::get_not_activated_users(&inner, request)
16572 .await
16573 };
16574 Box::pin(fut)
16575 }
16576 }
16577 let accept_compression_encodings = self.accept_compression_encodings;
16578 let send_compression_encodings = self.send_compression_encodings;
16579 let max_decoding_message_size = self.max_decoding_message_size;
16580 let max_encoding_message_size = self.max_encoding_message_size;
16581 let inner = self.inner.clone();
16582 let fut = async move {
16583 let inner = inner.0;
16584 let method = GetNotActivatedUsersSvc(inner);
16585 let codec = tonic::codec::ProstCodec::default();
16586 let mut grpc = tonic::server::Grpc::new(codec)
16587 .apply_compression_config(
16588 accept_compression_encodings,
16589 send_compression_encodings,
16590 )
16591 .apply_max_message_size_config(
16592 max_decoding_message_size,
16593 max_encoding_message_size,
16594 );
16595 let res = grpc.unary(method, req).await;
16596 Ok(res)
16597 };
16598 Box::pin(fut)
16599 }
16600 "/aruna.api.storage.services.v2.UserService/GetAllUsers" => {
16601 #[allow(non_camel_case_types)]
16602 struct GetAllUsersSvc<T: UserService>(pub Arc<T>);
16603 impl<
16604 T: UserService,
16605 > tonic::server::UnaryService<super::GetAllUsersRequest>
16606 for GetAllUsersSvc<T> {
16607 type Response = super::GetAllUsersResponse;
16608 type Future = BoxFuture<
16609 tonic::Response<Self::Response>,
16610 tonic::Status,
16611 >;
16612 fn call(
16613 &mut self,
16614 request: tonic::Request<super::GetAllUsersRequest>,
16615 ) -> Self::Future {
16616 let inner = Arc::clone(&self.0);
16617 let fut = async move {
16618 <T as UserService>::get_all_users(&inner, request).await
16619 };
16620 Box::pin(fut)
16621 }
16622 }
16623 let accept_compression_encodings = self.accept_compression_encodings;
16624 let send_compression_encodings = self.send_compression_encodings;
16625 let max_decoding_message_size = self.max_decoding_message_size;
16626 let max_encoding_message_size = self.max_encoding_message_size;
16627 let inner = self.inner.clone();
16628 let fut = async move {
16629 let inner = inner.0;
16630 let method = GetAllUsersSvc(inner);
16631 let codec = tonic::codec::ProstCodec::default();
16632 let mut grpc = tonic::server::Grpc::new(codec)
16633 .apply_compression_config(
16634 accept_compression_encodings,
16635 send_compression_encodings,
16636 )
16637 .apply_max_message_size_config(
16638 max_decoding_message_size,
16639 max_encoding_message_size,
16640 );
16641 let res = grpc.unary(method, req).await;
16642 Ok(res)
16643 };
16644 Box::pin(fut)
16645 }
16646 "/aruna.api.storage.services.v2.UserService/CreateS3CredentialsUserToken" => {
16647 #[allow(non_camel_case_types)]
16648 struct CreateS3CredentialsUserTokenSvc<T: UserService>(pub Arc<T>);
16649 impl<
16650 T: UserService,
16651 > tonic::server::UnaryService<
16652 super::CreateS3CredentialsUserTokenRequest,
16653 > for CreateS3CredentialsUserTokenSvc<T> {
16654 type Response = super::CreateS3CredentialsUserTokenResponse;
16655 type Future = BoxFuture<
16656 tonic::Response<Self::Response>,
16657 tonic::Status,
16658 >;
16659 fn call(
16660 &mut self,
16661 request: tonic::Request<
16662 super::CreateS3CredentialsUserTokenRequest,
16663 >,
16664 ) -> Self::Future {
16665 let inner = Arc::clone(&self.0);
16666 let fut = async move {
16667 <T as UserService>::create_s3_credentials_user_token(
16668 &inner,
16669 request,
16670 )
16671 .await
16672 };
16673 Box::pin(fut)
16674 }
16675 }
16676 let accept_compression_encodings = self.accept_compression_encodings;
16677 let send_compression_encodings = self.send_compression_encodings;
16678 let max_decoding_message_size = self.max_decoding_message_size;
16679 let max_encoding_message_size = self.max_encoding_message_size;
16680 let inner = self.inner.clone();
16681 let fut = async move {
16682 let inner = inner.0;
16683 let method = CreateS3CredentialsUserTokenSvc(inner);
16684 let codec = tonic::codec::ProstCodec::default();
16685 let mut grpc = tonic::server::Grpc::new(codec)
16686 .apply_compression_config(
16687 accept_compression_encodings,
16688 send_compression_encodings,
16689 )
16690 .apply_max_message_size_config(
16691 max_decoding_message_size,
16692 max_encoding_message_size,
16693 );
16694 let res = grpc.unary(method, req).await;
16695 Ok(res)
16696 };
16697 Box::pin(fut)
16698 }
16699 "/aruna.api.storage.services.v2.UserService/GetS3CredentialsUserToken" => {
16700 #[allow(non_camel_case_types)]
16701 struct GetS3CredentialsUserTokenSvc<T: UserService>(pub Arc<T>);
16702 impl<
16703 T: UserService,
16704 > tonic::server::UnaryService<
16705 super::GetS3CredentialsUserTokenRequest,
16706 > for GetS3CredentialsUserTokenSvc<T> {
16707 type Response = super::GetS3CredentialsUserTokenResponse;
16708 type Future = BoxFuture<
16709 tonic::Response<Self::Response>,
16710 tonic::Status,
16711 >;
16712 fn call(
16713 &mut self,
16714 request: tonic::Request<
16715 super::GetS3CredentialsUserTokenRequest,
16716 >,
16717 ) -> Self::Future {
16718 let inner = Arc::clone(&self.0);
16719 let fut = async move {
16720 <T as UserService>::get_s3_credentials_user_token(
16721 &inner,
16722 request,
16723 )
16724 .await
16725 };
16726 Box::pin(fut)
16727 }
16728 }
16729 let accept_compression_encodings = self.accept_compression_encodings;
16730 let send_compression_encodings = self.send_compression_encodings;
16731 let max_decoding_message_size = self.max_decoding_message_size;
16732 let max_encoding_message_size = self.max_encoding_message_size;
16733 let inner = self.inner.clone();
16734 let fut = async move {
16735 let inner = inner.0;
16736 let method = GetS3CredentialsUserTokenSvc(inner);
16737 let codec = tonic::codec::ProstCodec::default();
16738 let mut grpc = tonic::server::Grpc::new(codec)
16739 .apply_compression_config(
16740 accept_compression_encodings,
16741 send_compression_encodings,
16742 )
16743 .apply_max_message_size_config(
16744 max_decoding_message_size,
16745 max_encoding_message_size,
16746 );
16747 let res = grpc.unary(method, req).await;
16748 Ok(res)
16749 };
16750 Box::pin(fut)
16751 }
16752 "/aruna.api.storage.services.v2.UserService/DeleteS3CredentialsUserToken" => {
16753 #[allow(non_camel_case_types)]
16754 struct DeleteS3CredentialsUserTokenSvc<T: UserService>(pub Arc<T>);
16755 impl<
16756 T: UserService,
16757 > tonic::server::UnaryService<
16758 super::DeleteS3CredentialsUserTokenRequest,
16759 > for DeleteS3CredentialsUserTokenSvc<T> {
16760 type Response = super::DeleteS3CredentialsUserResponse;
16761 type Future = BoxFuture<
16762 tonic::Response<Self::Response>,
16763 tonic::Status,
16764 >;
16765 fn call(
16766 &mut self,
16767 request: tonic::Request<
16768 super::DeleteS3CredentialsUserTokenRequest,
16769 >,
16770 ) -> Self::Future {
16771 let inner = Arc::clone(&self.0);
16772 let fut = async move {
16773 <T as UserService>::delete_s3_credentials_user_token(
16774 &inner,
16775 request,
16776 )
16777 .await
16778 };
16779 Box::pin(fut)
16780 }
16781 }
16782 let accept_compression_encodings = self.accept_compression_encodings;
16783 let send_compression_encodings = self.send_compression_encodings;
16784 let max_decoding_message_size = self.max_decoding_message_size;
16785 let max_encoding_message_size = self.max_encoding_message_size;
16786 let inner = self.inner.clone();
16787 let fut = async move {
16788 let inner = inner.0;
16789 let method = DeleteS3CredentialsUserTokenSvc(inner);
16790 let codec = tonic::codec::ProstCodec::default();
16791 let mut grpc = tonic::server::Grpc::new(codec)
16792 .apply_compression_config(
16793 accept_compression_encodings,
16794 send_compression_encodings,
16795 )
16796 .apply_max_message_size_config(
16797 max_decoding_message_size,
16798 max_encoding_message_size,
16799 );
16800 let res = grpc.unary(method, req).await;
16801 Ok(res)
16802 };
16803 Box::pin(fut)
16804 }
16805 "/aruna.api.storage.services.v2.UserService/GetDataproxyTokenUser" => {
16806 #[allow(non_camel_case_types)]
16807 struct GetDataproxyTokenUserSvc<T: UserService>(pub Arc<T>);
16808 impl<
16809 T: UserService,
16810 > tonic::server::UnaryService<super::GetDataproxyTokenUserRequest>
16811 for GetDataproxyTokenUserSvc<T> {
16812 type Response = super::GetDataproxyTokenUserResponse;
16813 type Future = BoxFuture<
16814 tonic::Response<Self::Response>,
16815 tonic::Status,
16816 >;
16817 fn call(
16818 &mut self,
16819 request: tonic::Request<super::GetDataproxyTokenUserRequest>,
16820 ) -> Self::Future {
16821 let inner = Arc::clone(&self.0);
16822 let fut = async move {
16823 <T as UserService>::get_dataproxy_token_user(
16824 &inner,
16825 request,
16826 )
16827 .await
16828 };
16829 Box::pin(fut)
16830 }
16831 }
16832 let accept_compression_encodings = self.accept_compression_encodings;
16833 let send_compression_encodings = self.send_compression_encodings;
16834 let max_decoding_message_size = self.max_decoding_message_size;
16835 let max_encoding_message_size = self.max_encoding_message_size;
16836 let inner = self.inner.clone();
16837 let fut = async move {
16838 let inner = inner.0;
16839 let method = GetDataproxyTokenUserSvc(inner);
16840 let codec = tonic::codec::ProstCodec::default();
16841 let mut grpc = tonic::server::Grpc::new(codec)
16842 .apply_compression_config(
16843 accept_compression_encodings,
16844 send_compression_encodings,
16845 )
16846 .apply_max_message_size_config(
16847 max_decoding_message_size,
16848 max_encoding_message_size,
16849 );
16850 let res = grpc.unary(method, req).await;
16851 Ok(res)
16852 };
16853 Box::pin(fut)
16854 }
16855 "/aruna.api.storage.services.v2.UserService/GetPersonalNotifications" => {
16856 #[allow(non_camel_case_types)]
16857 struct GetPersonalNotificationsSvc<T: UserService>(pub Arc<T>);
16858 impl<
16859 T: UserService,
16860 > tonic::server::UnaryService<super::GetPersonalNotificationsRequest>
16861 for GetPersonalNotificationsSvc<T> {
16862 type Response = super::GetPersonalNotificationsResponse;
16863 type Future = BoxFuture<
16864 tonic::Response<Self::Response>,
16865 tonic::Status,
16866 >;
16867 fn call(
16868 &mut self,
16869 request: tonic::Request<
16870 super::GetPersonalNotificationsRequest,
16871 >,
16872 ) -> Self::Future {
16873 let inner = Arc::clone(&self.0);
16874 let fut = async move {
16875 <T as UserService>::get_personal_notifications(
16876 &inner,
16877 request,
16878 )
16879 .await
16880 };
16881 Box::pin(fut)
16882 }
16883 }
16884 let accept_compression_encodings = self.accept_compression_encodings;
16885 let send_compression_encodings = self.send_compression_encodings;
16886 let max_decoding_message_size = self.max_decoding_message_size;
16887 let max_encoding_message_size = self.max_encoding_message_size;
16888 let inner = self.inner.clone();
16889 let fut = async move {
16890 let inner = inner.0;
16891 let method = GetPersonalNotificationsSvc(inner);
16892 let codec = tonic::codec::ProstCodec::default();
16893 let mut grpc = tonic::server::Grpc::new(codec)
16894 .apply_compression_config(
16895 accept_compression_encodings,
16896 send_compression_encodings,
16897 )
16898 .apply_max_message_size_config(
16899 max_decoding_message_size,
16900 max_encoding_message_size,
16901 );
16902 let res = grpc.unary(method, req).await;
16903 Ok(res)
16904 };
16905 Box::pin(fut)
16906 }
16907 "/aruna.api.storage.services.v2.UserService/AcknowledgePersonalNotifications" => {
16908 #[allow(non_camel_case_types)]
16909 struct AcknowledgePersonalNotificationsSvc<T: UserService>(
16910 pub Arc<T>,
16911 );
16912 impl<
16913 T: UserService,
16914 > tonic::server::UnaryService<
16915 super::AcknowledgePersonalNotificationsRequest,
16916 > for AcknowledgePersonalNotificationsSvc<T> {
16917 type Response = super::AcknowledgePersonalNotificationsResponse;
16918 type Future = BoxFuture<
16919 tonic::Response<Self::Response>,
16920 tonic::Status,
16921 >;
16922 fn call(
16923 &mut self,
16924 request: tonic::Request<
16925 super::AcknowledgePersonalNotificationsRequest,
16926 >,
16927 ) -> Self::Future {
16928 let inner = Arc::clone(&self.0);
16929 let fut = async move {
16930 <T as UserService>::acknowledge_personal_notifications(
16931 &inner,
16932 request,
16933 )
16934 .await
16935 };
16936 Box::pin(fut)
16937 }
16938 }
16939 let accept_compression_encodings = self.accept_compression_encodings;
16940 let send_compression_encodings = self.send_compression_encodings;
16941 let max_decoding_message_size = self.max_decoding_message_size;
16942 let max_encoding_message_size = self.max_encoding_message_size;
16943 let inner = self.inner.clone();
16944 let fut = async move {
16945 let inner = inner.0;
16946 let method = AcknowledgePersonalNotificationsSvc(inner);
16947 let codec = tonic::codec::ProstCodec::default();
16948 let mut grpc = tonic::server::Grpc::new(codec)
16949 .apply_compression_config(
16950 accept_compression_encodings,
16951 send_compression_encodings,
16952 )
16953 .apply_max_message_size_config(
16954 max_decoding_message_size,
16955 max_encoding_message_size,
16956 );
16957 let res = grpc.unary(method, req).await;
16958 Ok(res)
16959 };
16960 Box::pin(fut)
16961 }
16962 "/aruna.api.storage.services.v2.UserService/AddOidcProvider" => {
16963 #[allow(non_camel_case_types)]
16964 struct AddOidcProviderSvc<T: UserService>(pub Arc<T>);
16965 impl<
16966 T: UserService,
16967 > tonic::server::UnaryService<super::AddOidcProviderRequest>
16968 for AddOidcProviderSvc<T> {
16969 type Response = super::AddOidcProviderResponse;
16970 type Future = BoxFuture<
16971 tonic::Response<Self::Response>,
16972 tonic::Status,
16973 >;
16974 fn call(
16975 &mut self,
16976 request: tonic::Request<super::AddOidcProviderRequest>,
16977 ) -> Self::Future {
16978 let inner = Arc::clone(&self.0);
16979 let fut = async move {
16980 <T as UserService>::add_oidc_provider(&inner, request).await
16981 };
16982 Box::pin(fut)
16983 }
16984 }
16985 let accept_compression_encodings = self.accept_compression_encodings;
16986 let send_compression_encodings = self.send_compression_encodings;
16987 let max_decoding_message_size = self.max_decoding_message_size;
16988 let max_encoding_message_size = self.max_encoding_message_size;
16989 let inner = self.inner.clone();
16990 let fut = async move {
16991 let inner = inner.0;
16992 let method = AddOidcProviderSvc(inner);
16993 let codec = tonic::codec::ProstCodec::default();
16994 let mut grpc = tonic::server::Grpc::new(codec)
16995 .apply_compression_config(
16996 accept_compression_encodings,
16997 send_compression_encodings,
16998 )
16999 .apply_max_message_size_config(
17000 max_decoding_message_size,
17001 max_encoding_message_size,
17002 );
17003 let res = grpc.unary(method, req).await;
17004 Ok(res)
17005 };
17006 Box::pin(fut)
17007 }
17008 "/aruna.api.storage.services.v2.UserService/RemoveOidcProvider" => {
17009 #[allow(non_camel_case_types)]
17010 struct RemoveOidcProviderSvc<T: UserService>(pub Arc<T>);
17011 impl<
17012 T: UserService,
17013 > tonic::server::UnaryService<super::RemoveOidcProviderRequest>
17014 for RemoveOidcProviderSvc<T> {
17015 type Response = super::RemoveOidcProviderResponse;
17016 type Future = BoxFuture<
17017 tonic::Response<Self::Response>,
17018 tonic::Status,
17019 >;
17020 fn call(
17021 &mut self,
17022 request: tonic::Request<super::RemoveOidcProviderRequest>,
17023 ) -> Self::Future {
17024 let inner = Arc::clone(&self.0);
17025 let fut = async move {
17026 <T as UserService>::remove_oidc_provider(&inner, request)
17027 .await
17028 };
17029 Box::pin(fut)
17030 }
17031 }
17032 let accept_compression_encodings = self.accept_compression_encodings;
17033 let send_compression_encodings = self.send_compression_encodings;
17034 let max_decoding_message_size = self.max_decoding_message_size;
17035 let max_encoding_message_size = self.max_encoding_message_size;
17036 let inner = self.inner.clone();
17037 let fut = async move {
17038 let inner = inner.0;
17039 let method = RemoveOidcProviderSvc(inner);
17040 let codec = tonic::codec::ProstCodec::default();
17041 let mut grpc = tonic::server::Grpc::new(codec)
17042 .apply_compression_config(
17043 accept_compression_encodings,
17044 send_compression_encodings,
17045 )
17046 .apply_max_message_size_config(
17047 max_decoding_message_size,
17048 max_encoding_message_size,
17049 );
17050 let res = grpc.unary(method, req).await;
17051 Ok(res)
17052 };
17053 Box::pin(fut)
17054 }
17055 "/aruna.api.storage.services.v2.UserService/AddPubkeyUser" => {
17056 #[allow(non_camel_case_types)]
17057 struct AddPubkeyUserSvc<T: UserService>(pub Arc<T>);
17058 impl<
17059 T: UserService,
17060 > tonic::server::UnaryService<super::AddPubkeyUserRequest>
17061 for AddPubkeyUserSvc<T> {
17062 type Response = super::AddPubkeyUserResponse;
17063 type Future = BoxFuture<
17064 tonic::Response<Self::Response>,
17065 tonic::Status,
17066 >;
17067 fn call(
17068 &mut self,
17069 request: tonic::Request<super::AddPubkeyUserRequest>,
17070 ) -> Self::Future {
17071 let inner = Arc::clone(&self.0);
17072 let fut = async move {
17073 <T as UserService>::add_pubkey_user(&inner, request).await
17074 };
17075 Box::pin(fut)
17076 }
17077 }
17078 let accept_compression_encodings = self.accept_compression_encodings;
17079 let send_compression_encodings = self.send_compression_encodings;
17080 let max_decoding_message_size = self.max_decoding_message_size;
17081 let max_encoding_message_size = self.max_encoding_message_size;
17082 let inner = self.inner.clone();
17083 let fut = async move {
17084 let inner = inner.0;
17085 let method = AddPubkeyUserSvc(inner);
17086 let codec = tonic::codec::ProstCodec::default();
17087 let mut grpc = tonic::server::Grpc::new(codec)
17088 .apply_compression_config(
17089 accept_compression_encodings,
17090 send_compression_encodings,
17091 )
17092 .apply_max_message_size_config(
17093 max_decoding_message_size,
17094 max_encoding_message_size,
17095 );
17096 let res = grpc.unary(method, req).await;
17097 Ok(res)
17098 };
17099 Box::pin(fut)
17100 }
17101 "/aruna.api.storage.services.v2.UserService/AddTrustedEndpointsUser" => {
17102 #[allow(non_camel_case_types)]
17103 struct AddTrustedEndpointsUserSvc<T: UserService>(pub Arc<T>);
17104 impl<
17105 T: UserService,
17106 > tonic::server::UnaryService<super::AddTrustedEndpointsUserRequest>
17107 for AddTrustedEndpointsUserSvc<T> {
17108 type Response = super::AddTrustedEndpointsUserResponse;
17109 type Future = BoxFuture<
17110 tonic::Response<Self::Response>,
17111 tonic::Status,
17112 >;
17113 fn call(
17114 &mut self,
17115 request: tonic::Request<
17116 super::AddTrustedEndpointsUserRequest,
17117 >,
17118 ) -> Self::Future {
17119 let inner = Arc::clone(&self.0);
17120 let fut = async move {
17121 <T as UserService>::add_trusted_endpoints_user(
17122 &inner,
17123 request,
17124 )
17125 .await
17126 };
17127 Box::pin(fut)
17128 }
17129 }
17130 let accept_compression_encodings = self.accept_compression_encodings;
17131 let send_compression_encodings = self.send_compression_encodings;
17132 let max_decoding_message_size = self.max_decoding_message_size;
17133 let max_encoding_message_size = self.max_encoding_message_size;
17134 let inner = self.inner.clone();
17135 let fut = async move {
17136 let inner = inner.0;
17137 let method = AddTrustedEndpointsUserSvc(inner);
17138 let codec = tonic::codec::ProstCodec::default();
17139 let mut grpc = tonic::server::Grpc::new(codec)
17140 .apply_compression_config(
17141 accept_compression_encodings,
17142 send_compression_encodings,
17143 )
17144 .apply_max_message_size_config(
17145 max_decoding_message_size,
17146 max_encoding_message_size,
17147 );
17148 let res = grpc.unary(method, req).await;
17149 Ok(res)
17150 };
17151 Box::pin(fut)
17152 }
17153 "/aruna.api.storage.services.v2.UserService/RemoveTrustedEndpointsUser" => {
17154 #[allow(non_camel_case_types)]
17155 struct RemoveTrustedEndpointsUserSvc<T: UserService>(pub Arc<T>);
17156 impl<
17157 T: UserService,
17158 > tonic::server::UnaryService<
17159 super::RemoveTrustedEndpointsUserRequest,
17160 > for RemoveTrustedEndpointsUserSvc<T> {
17161 type Response = super::RemoveTrustedEndpointsUserResponse;
17162 type Future = BoxFuture<
17163 tonic::Response<Self::Response>,
17164 tonic::Status,
17165 >;
17166 fn call(
17167 &mut self,
17168 request: tonic::Request<
17169 super::RemoveTrustedEndpointsUserRequest,
17170 >,
17171 ) -> Self::Future {
17172 let inner = Arc::clone(&self.0);
17173 let fut = async move {
17174 <T as UserService>::remove_trusted_endpoints_user(
17175 &inner,
17176 request,
17177 )
17178 .await
17179 };
17180 Box::pin(fut)
17181 }
17182 }
17183 let accept_compression_encodings = self.accept_compression_encodings;
17184 let send_compression_encodings = self.send_compression_encodings;
17185 let max_decoding_message_size = self.max_decoding_message_size;
17186 let max_encoding_message_size = self.max_encoding_message_size;
17187 let inner = self.inner.clone();
17188 let fut = async move {
17189 let inner = inner.0;
17190 let method = RemoveTrustedEndpointsUserSvc(inner);
17191 let codec = tonic::codec::ProstCodec::default();
17192 let mut grpc = tonic::server::Grpc::new(codec)
17193 .apply_compression_config(
17194 accept_compression_encodings,
17195 send_compression_encodings,
17196 )
17197 .apply_max_message_size_config(
17198 max_decoding_message_size,
17199 max_encoding_message_size,
17200 );
17201 let res = grpc.unary(method, req).await;
17202 Ok(res)
17203 };
17204 Box::pin(fut)
17205 }
17206 "/aruna.api.storage.services.v2.UserService/AddDataProxyAttributeUser" => {
17207 #[allow(non_camel_case_types)]
17208 struct AddDataProxyAttributeUserSvc<T: UserService>(pub Arc<T>);
17209 impl<
17210 T: UserService,
17211 > tonic::server::UnaryService<
17212 super::AddDataProxyAttributeUserRequest,
17213 > for AddDataProxyAttributeUserSvc<T> {
17214 type Response = super::AddDataProxyAttributeUserResponse;
17215 type Future = BoxFuture<
17216 tonic::Response<Self::Response>,
17217 tonic::Status,
17218 >;
17219 fn call(
17220 &mut self,
17221 request: tonic::Request<
17222 super::AddDataProxyAttributeUserRequest,
17223 >,
17224 ) -> Self::Future {
17225 let inner = Arc::clone(&self.0);
17226 let fut = async move {
17227 <T as UserService>::add_data_proxy_attribute_user(
17228 &inner,
17229 request,
17230 )
17231 .await
17232 };
17233 Box::pin(fut)
17234 }
17235 }
17236 let accept_compression_encodings = self.accept_compression_encodings;
17237 let send_compression_encodings = self.send_compression_encodings;
17238 let max_decoding_message_size = self.max_decoding_message_size;
17239 let max_encoding_message_size = self.max_encoding_message_size;
17240 let inner = self.inner.clone();
17241 let fut = async move {
17242 let inner = inner.0;
17243 let method = AddDataProxyAttributeUserSvc(inner);
17244 let codec = tonic::codec::ProstCodec::default();
17245 let mut grpc = tonic::server::Grpc::new(codec)
17246 .apply_compression_config(
17247 accept_compression_encodings,
17248 send_compression_encodings,
17249 )
17250 .apply_max_message_size_config(
17251 max_decoding_message_size,
17252 max_encoding_message_size,
17253 );
17254 let res = grpc.unary(method, req).await;
17255 Ok(res)
17256 };
17257 Box::pin(fut)
17258 }
17259 "/aruna.api.storage.services.v2.UserService/RemoveDataProxyAttributeUser" => {
17260 #[allow(non_camel_case_types)]
17261 struct RemoveDataProxyAttributeUserSvc<T: UserService>(pub Arc<T>);
17262 impl<
17263 T: UserService,
17264 > tonic::server::UnaryService<
17265 super::RemoveDataProxyAttributeUserRequest,
17266 > for RemoveDataProxyAttributeUserSvc<T> {
17267 type Response = super::RemoveDataProxyAttributeUserResponse;
17268 type Future = BoxFuture<
17269 tonic::Response<Self::Response>,
17270 tonic::Status,
17271 >;
17272 fn call(
17273 &mut self,
17274 request: tonic::Request<
17275 super::RemoveDataProxyAttributeUserRequest,
17276 >,
17277 ) -> Self::Future {
17278 let inner = Arc::clone(&self.0);
17279 let fut = async move {
17280 <T as UserService>::remove_data_proxy_attribute_user(
17281 &inner,
17282 request,
17283 )
17284 .await
17285 };
17286 Box::pin(fut)
17287 }
17288 }
17289 let accept_compression_encodings = self.accept_compression_encodings;
17290 let send_compression_encodings = self.send_compression_encodings;
17291 let max_decoding_message_size = self.max_decoding_message_size;
17292 let max_encoding_message_size = self.max_encoding_message_size;
17293 let inner = self.inner.clone();
17294 let fut = async move {
17295 let inner = inner.0;
17296 let method = RemoveDataProxyAttributeUserSvc(inner);
17297 let codec = tonic::codec::ProstCodec::default();
17298 let mut grpc = tonic::server::Grpc::new(codec)
17299 .apply_compression_config(
17300 accept_compression_encodings,
17301 send_compression_encodings,
17302 )
17303 .apply_max_message_size_config(
17304 max_decoding_message_size,
17305 max_encoding_message_size,
17306 );
17307 let res = grpc.unary(method, req).await;
17308 Ok(res)
17309 };
17310 Box::pin(fut)
17311 }
17312 _ => {
17313 Box::pin(async move {
17314 Ok(
17315 http::Response::builder()
17316 .status(200)
17317 .header("grpc-status", "12")
17318 .header("content-type", "application/grpc")
17319 .body(empty_body())
17320 .unwrap(),
17321 )
17322 })
17323 }
17324 }
17325 }
17326 }
17327 impl<T: UserService> Clone for UserServiceServer<T> {
17328 fn clone(&self) -> Self {
17329 let inner = self.inner.clone();
17330 Self {
17331 inner,
17332 accept_compression_encodings: self.accept_compression_encodings,
17333 send_compression_encodings: self.send_compression_encodings,
17334 max_decoding_message_size: self.max_decoding_message_size,
17335 max_encoding_message_size: self.max_encoding_message_size,
17336 }
17337 }
17338 }
17339 impl<T: UserService> Clone for _Inner<T> {
17340 fn clone(&self) -> Self {
17341 Self(Arc::clone(&self.0))
17342 }
17343 }
17344 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
17345 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17346 write!(f, "{:?}", self.0)
17347 }
17348 }
17349 impl<T: UserService> tonic::server::NamedService for UserServiceServer<T> {
17350 const NAME: &'static str = "aruna.api.storage.services.v2.UserService";
17351 }
17352}
17353#[derive(serde::Deserialize, serde::Serialize)]
17357#[allow(clippy::derive_partial_eq_without_eq)]
17358#[derive(Clone, PartialEq, ::prost::Message)]
17359pub struct CreateLicenseRequest {
17360 #[prost(string, tag = "1")]
17362 pub tag: ::prost::alloc::string::String,
17363 #[prost(string, tag = "2")]
17365 pub name: ::prost::alloc::string::String,
17366 #[prost(string, tag = "3")]
17367 pub text: ::prost::alloc::string::String,
17368 #[prost(string, tag = "4")]
17372 pub url: ::prost::alloc::string::String,
17373}
17374#[derive(serde::Deserialize, serde::Serialize)]
17378#[allow(clippy::derive_partial_eq_without_eq)]
17379#[derive(Clone, PartialEq, ::prost::Message)]
17380pub struct CreateLicenseResponse {
17381 #[prost(string, tag = "1")]
17383 pub tag: ::prost::alloc::string::String,
17384}
17385#[derive(serde::Deserialize, serde::Serialize)]
17389#[allow(clippy::derive_partial_eq_without_eq)]
17390#[derive(Clone, PartialEq, ::prost::Message)]
17391pub struct GetLicenseRequest {
17392 #[prost(string, tag = "1")]
17394 pub tag: ::prost::alloc::string::String,
17395}
17396#[derive(serde::Deserialize, serde::Serialize)]
17400#[allow(clippy::derive_partial_eq_without_eq)]
17401#[derive(Clone, PartialEq, ::prost::Message)]
17402pub struct GetLicenseResponse {
17403 #[prost(message, optional, tag = "1")]
17404 pub license: ::core::option::Option<super::super::models::v2::License>,
17405}
17406#[derive(serde::Deserialize, serde::Serialize)]
17410#[allow(clippy::derive_partial_eq_without_eq)]
17411#[derive(Clone, PartialEq, ::prost::Message)]
17412pub struct ListLicensesRequest {}
17413#[derive(serde::Deserialize, serde::Serialize)]
17417#[allow(clippy::derive_partial_eq_without_eq)]
17418#[derive(Clone, PartialEq, ::prost::Message)]
17419pub struct ListLicensesResponse {
17420 #[prost(message, repeated, tag = "1")]
17421 pub licenses: ::prost::alloc::vec::Vec<super::super::models::v2::License>,
17422}
17423pub mod license_service_client {
17425 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
17426 use tonic::codegen::*;
17427 use tonic::codegen::http::Uri;
17428 #[derive(Debug, Clone)]
17434 pub struct LicenseServiceClient<T> {
17435 inner: tonic::client::Grpc<T>,
17436 }
17437 impl LicenseServiceClient<tonic::transport::Channel> {
17438 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
17440 where
17441 D: TryInto<tonic::transport::Endpoint>,
17442 D::Error: Into<StdError>,
17443 {
17444 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
17445 Ok(Self::new(conn))
17446 }
17447 }
17448 impl<T> LicenseServiceClient<T>
17449 where
17450 T: tonic::client::GrpcService<tonic::body::BoxBody>,
17451 T::Error: Into<StdError>,
17452 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
17453 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
17454 {
17455 pub fn new(inner: T) -> Self {
17456 let inner = tonic::client::Grpc::new(inner);
17457 Self { inner }
17458 }
17459 pub fn with_origin(inner: T, origin: Uri) -> Self {
17460 let inner = tonic::client::Grpc::with_origin(inner, origin);
17461 Self { inner }
17462 }
17463 pub fn with_interceptor<F>(
17464 inner: T,
17465 interceptor: F,
17466 ) -> LicenseServiceClient<InterceptedService<T, F>>
17467 where
17468 F: tonic::service::Interceptor,
17469 T::ResponseBody: Default,
17470 T: tonic::codegen::Service<
17471 http::Request<tonic::body::BoxBody>,
17472 Response = http::Response<
17473 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
17474 >,
17475 >,
17476 <T as tonic::codegen::Service<
17477 http::Request<tonic::body::BoxBody>,
17478 >>::Error: Into<StdError> + Send + Sync,
17479 {
17480 LicenseServiceClient::new(InterceptedService::new(inner, interceptor))
17481 }
17482 #[must_use]
17487 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
17488 self.inner = self.inner.send_compressed(encoding);
17489 self
17490 }
17491 #[must_use]
17493 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
17494 self.inner = self.inner.accept_compressed(encoding);
17495 self
17496 }
17497 #[must_use]
17501 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
17502 self.inner = self.inner.max_decoding_message_size(limit);
17503 self
17504 }
17505 #[must_use]
17509 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
17510 self.inner = self.inner.max_encoding_message_size(limit);
17511 self
17512 }
17513 pub async fn create_license(
17519 &mut self,
17520 request: impl tonic::IntoRequest<super::CreateLicenseRequest>,
17521 ) -> std::result::Result<
17522 tonic::Response<super::CreateLicenseResponse>,
17523 tonic::Status,
17524 > {
17525 self.inner
17526 .ready()
17527 .await
17528 .map_err(|e| {
17529 tonic::Status::new(
17530 tonic::Code::Unknown,
17531 format!("Service was not ready: {}", e.into()),
17532 )
17533 })?;
17534 let codec = tonic::codec::ProstCodec::default();
17535 let path = http::uri::PathAndQuery::from_static(
17536 "/aruna.api.storage.services.v2.LicenseService/CreateLicense",
17537 );
17538 let mut req = request.into_request();
17539 req.extensions_mut()
17540 .insert(
17541 GrpcMethod::new(
17542 "aruna.api.storage.services.v2.LicenseService",
17543 "CreateLicense",
17544 ),
17545 );
17546 self.inner.unary(req, path, codec).await
17547 }
17548 pub async fn get_license(
17554 &mut self,
17555 request: impl tonic::IntoRequest<super::GetLicenseRequest>,
17556 ) -> std::result::Result<
17557 tonic::Response<super::GetLicenseResponse>,
17558 tonic::Status,
17559 > {
17560 self.inner
17561 .ready()
17562 .await
17563 .map_err(|e| {
17564 tonic::Status::new(
17565 tonic::Code::Unknown,
17566 format!("Service was not ready: {}", e.into()),
17567 )
17568 })?;
17569 let codec = tonic::codec::ProstCodec::default();
17570 let path = http::uri::PathAndQuery::from_static(
17571 "/aruna.api.storage.services.v2.LicenseService/GetLicense",
17572 );
17573 let mut req = request.into_request();
17574 req.extensions_mut()
17575 .insert(
17576 GrpcMethod::new(
17577 "aruna.api.storage.services.v2.LicenseService",
17578 "GetLicense",
17579 ),
17580 );
17581 self.inner.unary(req, path, codec).await
17582 }
17583 pub async fn list_licenses(
17589 &mut self,
17590 request: impl tonic::IntoRequest<super::ListLicensesRequest>,
17591 ) -> std::result::Result<
17592 tonic::Response<super::ListLicensesResponse>,
17593 tonic::Status,
17594 > {
17595 self.inner
17596 .ready()
17597 .await
17598 .map_err(|e| {
17599 tonic::Status::new(
17600 tonic::Code::Unknown,
17601 format!("Service was not ready: {}", e.into()),
17602 )
17603 })?;
17604 let codec = tonic::codec::ProstCodec::default();
17605 let path = http::uri::PathAndQuery::from_static(
17606 "/aruna.api.storage.services.v2.LicenseService/ListLicenses",
17607 );
17608 let mut req = request.into_request();
17609 req.extensions_mut()
17610 .insert(
17611 GrpcMethod::new(
17612 "aruna.api.storage.services.v2.LicenseService",
17613 "ListLicenses",
17614 ),
17615 );
17616 self.inner.unary(req, path, codec).await
17617 }
17618 }
17619}
17620pub mod license_service_server {
17622 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
17623 use tonic::codegen::*;
17624 #[async_trait]
17626 pub trait LicenseService: Send + Sync + 'static {
17627 async fn create_license(
17633 &self,
17634 request: tonic::Request<super::CreateLicenseRequest>,
17635 ) -> std::result::Result<
17636 tonic::Response<super::CreateLicenseResponse>,
17637 tonic::Status,
17638 >;
17639 async fn get_license(
17645 &self,
17646 request: tonic::Request<super::GetLicenseRequest>,
17647 ) -> std::result::Result<
17648 tonic::Response<super::GetLicenseResponse>,
17649 tonic::Status,
17650 >;
17651 async fn list_licenses(
17657 &self,
17658 request: tonic::Request<super::ListLicensesRequest>,
17659 ) -> std::result::Result<
17660 tonic::Response<super::ListLicensesResponse>,
17661 tonic::Status,
17662 >;
17663 }
17664 #[derive(Debug)]
17670 pub struct LicenseServiceServer<T: LicenseService> {
17671 inner: _Inner<T>,
17672 accept_compression_encodings: EnabledCompressionEncodings,
17673 send_compression_encodings: EnabledCompressionEncodings,
17674 max_decoding_message_size: Option<usize>,
17675 max_encoding_message_size: Option<usize>,
17676 }
17677 struct _Inner<T>(Arc<T>);
17678 impl<T: LicenseService> LicenseServiceServer<T> {
17679 pub fn new(inner: T) -> Self {
17680 Self::from_arc(Arc::new(inner))
17681 }
17682 pub fn from_arc(inner: Arc<T>) -> Self {
17683 let inner = _Inner(inner);
17684 Self {
17685 inner,
17686 accept_compression_encodings: Default::default(),
17687 send_compression_encodings: Default::default(),
17688 max_decoding_message_size: None,
17689 max_encoding_message_size: None,
17690 }
17691 }
17692 pub fn with_interceptor<F>(
17693 inner: T,
17694 interceptor: F,
17695 ) -> InterceptedService<Self, F>
17696 where
17697 F: tonic::service::Interceptor,
17698 {
17699 InterceptedService::new(Self::new(inner), interceptor)
17700 }
17701 #[must_use]
17703 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
17704 self.accept_compression_encodings.enable(encoding);
17705 self
17706 }
17707 #[must_use]
17709 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
17710 self.send_compression_encodings.enable(encoding);
17711 self
17712 }
17713 #[must_use]
17717 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
17718 self.max_decoding_message_size = Some(limit);
17719 self
17720 }
17721 #[must_use]
17725 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
17726 self.max_encoding_message_size = Some(limit);
17727 self
17728 }
17729 }
17730 impl<T, B> tonic::codegen::Service<http::Request<B>> for LicenseServiceServer<T>
17731 where
17732 T: LicenseService,
17733 B: Body + Send + 'static,
17734 B::Error: Into<StdError> + Send + 'static,
17735 {
17736 type Response = http::Response<tonic::body::BoxBody>;
17737 type Error = std::convert::Infallible;
17738 type Future = BoxFuture<Self::Response, Self::Error>;
17739 fn poll_ready(
17740 &mut self,
17741 _cx: &mut Context<'_>,
17742 ) -> Poll<std::result::Result<(), Self::Error>> {
17743 Poll::Ready(Ok(()))
17744 }
17745 fn call(&mut self, req: http::Request<B>) -> Self::Future {
17746 let inner = self.inner.clone();
17747 match req.uri().path() {
17748 "/aruna.api.storage.services.v2.LicenseService/CreateLicense" => {
17749 #[allow(non_camel_case_types)]
17750 struct CreateLicenseSvc<T: LicenseService>(pub Arc<T>);
17751 impl<
17752 T: LicenseService,
17753 > tonic::server::UnaryService<super::CreateLicenseRequest>
17754 for CreateLicenseSvc<T> {
17755 type Response = super::CreateLicenseResponse;
17756 type Future = BoxFuture<
17757 tonic::Response<Self::Response>,
17758 tonic::Status,
17759 >;
17760 fn call(
17761 &mut self,
17762 request: tonic::Request<super::CreateLicenseRequest>,
17763 ) -> Self::Future {
17764 let inner = Arc::clone(&self.0);
17765 let fut = async move {
17766 <T as LicenseService>::create_license(&inner, request).await
17767 };
17768 Box::pin(fut)
17769 }
17770 }
17771 let accept_compression_encodings = self.accept_compression_encodings;
17772 let send_compression_encodings = self.send_compression_encodings;
17773 let max_decoding_message_size = self.max_decoding_message_size;
17774 let max_encoding_message_size = self.max_encoding_message_size;
17775 let inner = self.inner.clone();
17776 let fut = async move {
17777 let inner = inner.0;
17778 let method = CreateLicenseSvc(inner);
17779 let codec = tonic::codec::ProstCodec::default();
17780 let mut grpc = tonic::server::Grpc::new(codec)
17781 .apply_compression_config(
17782 accept_compression_encodings,
17783 send_compression_encodings,
17784 )
17785 .apply_max_message_size_config(
17786 max_decoding_message_size,
17787 max_encoding_message_size,
17788 );
17789 let res = grpc.unary(method, req).await;
17790 Ok(res)
17791 };
17792 Box::pin(fut)
17793 }
17794 "/aruna.api.storage.services.v2.LicenseService/GetLicense" => {
17795 #[allow(non_camel_case_types)]
17796 struct GetLicenseSvc<T: LicenseService>(pub Arc<T>);
17797 impl<
17798 T: LicenseService,
17799 > tonic::server::UnaryService<super::GetLicenseRequest>
17800 for GetLicenseSvc<T> {
17801 type Response = super::GetLicenseResponse;
17802 type Future = BoxFuture<
17803 tonic::Response<Self::Response>,
17804 tonic::Status,
17805 >;
17806 fn call(
17807 &mut self,
17808 request: tonic::Request<super::GetLicenseRequest>,
17809 ) -> Self::Future {
17810 let inner = Arc::clone(&self.0);
17811 let fut = async move {
17812 <T as LicenseService>::get_license(&inner, request).await
17813 };
17814 Box::pin(fut)
17815 }
17816 }
17817 let accept_compression_encodings = self.accept_compression_encodings;
17818 let send_compression_encodings = self.send_compression_encodings;
17819 let max_decoding_message_size = self.max_decoding_message_size;
17820 let max_encoding_message_size = self.max_encoding_message_size;
17821 let inner = self.inner.clone();
17822 let fut = async move {
17823 let inner = inner.0;
17824 let method = GetLicenseSvc(inner);
17825 let codec = tonic::codec::ProstCodec::default();
17826 let mut grpc = tonic::server::Grpc::new(codec)
17827 .apply_compression_config(
17828 accept_compression_encodings,
17829 send_compression_encodings,
17830 )
17831 .apply_max_message_size_config(
17832 max_decoding_message_size,
17833 max_encoding_message_size,
17834 );
17835 let res = grpc.unary(method, req).await;
17836 Ok(res)
17837 };
17838 Box::pin(fut)
17839 }
17840 "/aruna.api.storage.services.v2.LicenseService/ListLicenses" => {
17841 #[allow(non_camel_case_types)]
17842 struct ListLicensesSvc<T: LicenseService>(pub Arc<T>);
17843 impl<
17844 T: LicenseService,
17845 > tonic::server::UnaryService<super::ListLicensesRequest>
17846 for ListLicensesSvc<T> {
17847 type Response = super::ListLicensesResponse;
17848 type Future = BoxFuture<
17849 tonic::Response<Self::Response>,
17850 tonic::Status,
17851 >;
17852 fn call(
17853 &mut self,
17854 request: tonic::Request<super::ListLicensesRequest>,
17855 ) -> Self::Future {
17856 let inner = Arc::clone(&self.0);
17857 let fut = async move {
17858 <T as LicenseService>::list_licenses(&inner, request).await
17859 };
17860 Box::pin(fut)
17861 }
17862 }
17863 let accept_compression_encodings = self.accept_compression_encodings;
17864 let send_compression_encodings = self.send_compression_encodings;
17865 let max_decoding_message_size = self.max_decoding_message_size;
17866 let max_encoding_message_size = self.max_encoding_message_size;
17867 let inner = self.inner.clone();
17868 let fut = async move {
17869 let inner = inner.0;
17870 let method = ListLicensesSvc(inner);
17871 let codec = tonic::codec::ProstCodec::default();
17872 let mut grpc = tonic::server::Grpc::new(codec)
17873 .apply_compression_config(
17874 accept_compression_encodings,
17875 send_compression_encodings,
17876 )
17877 .apply_max_message_size_config(
17878 max_decoding_message_size,
17879 max_encoding_message_size,
17880 );
17881 let res = grpc.unary(method, req).await;
17882 Ok(res)
17883 };
17884 Box::pin(fut)
17885 }
17886 _ => {
17887 Box::pin(async move {
17888 Ok(
17889 http::Response::builder()
17890 .status(200)
17891 .header("grpc-status", "12")
17892 .header("content-type", "application/grpc")
17893 .body(empty_body())
17894 .unwrap(),
17895 )
17896 })
17897 }
17898 }
17899 }
17900 }
17901 impl<T: LicenseService> Clone for LicenseServiceServer<T> {
17902 fn clone(&self) -> Self {
17903 let inner = self.inner.clone();
17904 Self {
17905 inner,
17906 accept_compression_encodings: self.accept_compression_encodings,
17907 send_compression_encodings: self.send_compression_encodings,
17908 max_decoding_message_size: self.max_decoding_message_size,
17909 max_encoding_message_size: self.max_encoding_message_size,
17910 }
17911 }
17912 }
17913 impl<T: LicenseService> Clone for _Inner<T> {
17914 fn clone(&self) -> Self {
17915 Self(Arc::clone(&self.0))
17916 }
17917 }
17918 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
17919 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
17920 write!(f, "{:?}", self.0)
17921 }
17922 }
17923 impl<T: LicenseService> tonic::server::NamedService for LicenseServiceServer<T> {
17924 const NAME: &'static str = "aruna.api.storage.services.v2.LicenseService";
17925 }
17926}
17927#[derive(serde::Deserialize, serde::Serialize)]
17928#[allow(clippy::derive_partial_eq_without_eq)]
17929#[derive(Clone, PartialEq, ::prost::Message)]
17930pub struct CreateProjectRequest {
17931 #[prost(string, tag = "1")]
17933 pub name: ::prost::alloc::string::String,
17934 #[prost(string, tag = "9")]
17936 pub title: ::prost::alloc::string::String,
17937 #[prost(string, tag = "2")]
17939 pub description: ::prost::alloc::string::String,
17940 #[prost(message, repeated, tag = "3")]
17942 pub key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
17943 #[prost(message, repeated, tag = "4")]
17945 pub relations: ::prost::alloc::vec::Vec<super::super::models::v2::Relation>,
17946 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "5")]
17948 pub data_class: i32,
17949 #[prost(string, tag = "6")]
17951 pub preferred_endpoint: ::prost::alloc::string::String,
17952 #[prost(string, tag = "7")]
17954 pub metadata_license_tag: ::prost::alloc::string::String,
17955 #[prost(string, tag = "8")]
17956 pub default_data_license_tag: ::prost::alloc::string::String,
17957 #[prost(message, repeated, tag = "10")]
17958 pub authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
17959}
17960#[derive(serde::Deserialize, serde::Serialize)]
17961#[allow(clippy::derive_partial_eq_without_eq)]
17962#[derive(Clone, PartialEq, ::prost::Message)]
17963pub struct CreateProjectResponse {
17964 #[prost(message, optional, tag = "1")]
17966 pub project: ::core::option::Option<super::super::models::v2::Project>,
17967}
17968#[derive(serde::Deserialize, serde::Serialize)]
17969#[allow(clippy::derive_partial_eq_without_eq)]
17970#[derive(Clone, PartialEq, ::prost::Message)]
17971pub struct GetProjectRequest {
17972 #[prost(string, tag = "1")]
17974 pub project_id: ::prost::alloc::string::String,
17975}
17976#[derive(serde::Deserialize, serde::Serialize)]
17977#[allow(clippy::derive_partial_eq_without_eq)]
17978#[derive(Clone, PartialEq, ::prost::Message)]
17979pub struct GetProjectResponse {
17980 #[prost(message, optional, tag = "1")]
17982 pub project: ::core::option::Option<super::super::models::v2::Project>,
17983}
17984#[derive(serde::Deserialize, serde::Serialize)]
17985#[allow(clippy::derive_partial_eq_without_eq)]
17986#[derive(Clone, PartialEq, ::prost::Message)]
17987pub struct GetProjectsRequest {
17988 #[prost(string, repeated, tag = "1")]
17990 pub project_ids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
17991}
17992#[derive(serde::Deserialize, serde::Serialize)]
17993#[allow(clippy::derive_partial_eq_without_eq)]
17994#[derive(Clone, PartialEq, ::prost::Message)]
17995pub struct GetProjectsResponse {
17996 #[prost(message, repeated, tag = "1")]
17998 pub projects: ::prost::alloc::vec::Vec<super::super::models::v2::Project>,
17999}
18000#[derive(serde::Deserialize, serde::Serialize)]
18001#[allow(clippy::derive_partial_eq_without_eq)]
18002#[derive(Clone, PartialEq, ::prost::Message)]
18003pub struct DeleteProjectRequest {
18004 #[prost(string, tag = "1")]
18006 pub project_id: ::prost::alloc::string::String,
18007}
18008#[derive(serde::Deserialize, serde::Serialize)]
18009#[allow(clippy::derive_partial_eq_without_eq)]
18010#[derive(Clone, PartialEq, ::prost::Message)]
18011pub struct DeleteProjectResponse {}
18012#[derive(serde::Deserialize, serde::Serialize)]
18013#[allow(clippy::derive_partial_eq_without_eq)]
18014#[derive(Clone, PartialEq, ::prost::Message)]
18015pub struct UpdateProjectNameRequest {
18016 #[prost(string, tag = "1")]
18017 pub project_id: ::prost::alloc::string::String,
18018 #[prost(string, tag = "2")]
18019 pub name: ::prost::alloc::string::String,
18020}
18021#[derive(serde::Deserialize, serde::Serialize)]
18022#[allow(clippy::derive_partial_eq_without_eq)]
18023#[derive(Clone, PartialEq, ::prost::Message)]
18024pub struct UpdateProjectNameResponse {
18025 #[prost(message, optional, tag = "1")]
18026 pub project: ::core::option::Option<super::super::models::v2::Project>,
18027}
18028#[derive(serde::Deserialize, serde::Serialize)]
18029#[allow(clippy::derive_partial_eq_without_eq)]
18030#[derive(Clone, PartialEq, ::prost::Message)]
18031pub struct UpdateProjectDescriptionRequest {
18032 #[prost(string, tag = "1")]
18033 pub project_id: ::prost::alloc::string::String,
18034 #[prost(string, tag = "2")]
18035 pub description: ::prost::alloc::string::String,
18036}
18037#[derive(serde::Deserialize, serde::Serialize)]
18038#[allow(clippy::derive_partial_eq_without_eq)]
18039#[derive(Clone, PartialEq, ::prost::Message)]
18040pub struct UpdateProjectDescriptionResponse {
18041 #[prost(message, optional, tag = "1")]
18042 pub project: ::core::option::Option<super::super::models::v2::Project>,
18043}
18044#[derive(serde::Deserialize, serde::Serialize)]
18045#[allow(clippy::derive_partial_eq_without_eq)]
18046#[derive(Clone, PartialEq, ::prost::Message)]
18047pub struct UpdateProjectKeyValuesRequest {
18048 #[prost(string, tag = "1")]
18049 pub project_id: ::prost::alloc::string::String,
18050 #[prost(message, repeated, tag = "2")]
18051 pub add_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
18052 #[prost(message, repeated, tag = "3")]
18053 pub remove_key_values: ::prost::alloc::vec::Vec<super::super::models::v2::KeyValue>,
18054}
18055#[derive(serde::Deserialize, serde::Serialize)]
18056#[allow(clippy::derive_partial_eq_without_eq)]
18057#[derive(Clone, PartialEq, ::prost::Message)]
18058pub struct UpdateProjectKeyValuesResponse {
18059 #[prost(message, optional, tag = "1")]
18060 pub project: ::core::option::Option<super::super::models::v2::Project>,
18061}
18062#[derive(serde::Deserialize, serde::Serialize)]
18063#[allow(clippy::derive_partial_eq_without_eq)]
18064#[derive(Clone, PartialEq, ::prost::Message)]
18065pub struct UpdateProjectDataClassRequest {
18066 #[prost(string, tag = "1")]
18067 pub project_id: ::prost::alloc::string::String,
18068 #[prost(enumeration = "super::super::models::v2::DataClass", tag = "2")]
18069 pub data_class: i32,
18070}
18071#[derive(serde::Deserialize, serde::Serialize)]
18072#[allow(clippy::derive_partial_eq_without_eq)]
18073#[derive(Clone, PartialEq, ::prost::Message)]
18074pub struct UpdateProjectDataClassResponse {
18075 #[prost(message, optional, tag = "1")]
18076 pub project: ::core::option::Option<super::super::models::v2::Project>,
18077}
18078#[derive(serde::Deserialize, serde::Serialize)]
18079#[allow(clippy::derive_partial_eq_without_eq)]
18080#[derive(Clone, PartialEq, ::prost::Message)]
18081pub struct ArchiveProjectRequest {
18082 #[prost(string, tag = "1")]
18083 pub project_id: ::prost::alloc::string::String,
18084}
18085#[derive(serde::Deserialize, serde::Serialize)]
18086#[allow(clippy::derive_partial_eq_without_eq)]
18087#[derive(Clone, PartialEq, ::prost::Message)]
18088pub struct ArchiveProjectResponse {
18089 #[prost(message, optional, tag = "1")]
18091 pub project: ::core::option::Option<super::super::models::v2::Project>,
18092}
18093#[derive(serde::Deserialize, serde::Serialize)]
18094#[allow(clippy::derive_partial_eq_without_eq)]
18095#[derive(Clone, PartialEq, ::prost::Message)]
18096pub struct UpdateProjectLicensesRequest {
18097 #[prost(string, tag = "1")]
18098 pub project_id: ::prost::alloc::string::String,
18099 #[prost(string, tag = "2")]
18100 pub metadata_license_tag: ::prost::alloc::string::String,
18101 #[prost(string, tag = "3")]
18102 pub default_data_license_tag: ::prost::alloc::string::String,
18103}
18104#[derive(serde::Deserialize, serde::Serialize)]
18105#[allow(clippy::derive_partial_eq_without_eq)]
18106#[derive(Clone, PartialEq, ::prost::Message)]
18107pub struct UpdateProjectLicensesResponse {
18108 #[prost(message, optional, tag = "1")]
18109 pub project: ::core::option::Option<super::super::models::v2::Project>,
18110}
18111#[derive(serde::Deserialize, serde::Serialize)]
18112#[allow(clippy::derive_partial_eq_without_eq)]
18113#[derive(Clone, PartialEq, ::prost::Message)]
18114pub struct UpdateProjectTitleRequest {
18115 #[prost(string, tag = "1")]
18117 pub project_id: ::prost::alloc::string::String,
18118 #[prost(string, tag = "2")]
18120 pub title: ::prost::alloc::string::String,
18121}
18122#[derive(serde::Deserialize, serde::Serialize)]
18123#[allow(clippy::derive_partial_eq_without_eq)]
18124#[derive(Clone, PartialEq, ::prost::Message)]
18125pub struct UpdateProjectTitleResponse {
18126 #[prost(message, optional, tag = "1")]
18128 pub project: ::core::option::Option<super::super::models::v2::Project>,
18129}
18130#[derive(serde::Deserialize, serde::Serialize)]
18131#[allow(clippy::derive_partial_eq_without_eq)]
18132#[derive(Clone, PartialEq, ::prost::Message)]
18133pub struct UpdateProjectAuthorsRequest {
18134 #[prost(string, tag = "1")]
18136 pub project_id: ::prost::alloc::string::String,
18137 #[prost(message, repeated, tag = "2")]
18139 pub add_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
18140 #[prost(message, repeated, tag = "3")]
18142 pub remove_authors: ::prost::alloc::vec::Vec<super::super::models::v2::Author>,
18143}
18144#[derive(serde::Deserialize, serde::Serialize)]
18145#[allow(clippy::derive_partial_eq_without_eq)]
18146#[derive(Clone, PartialEq, ::prost::Message)]
18147pub struct UpdateProjectAuthorsResponse {
18148 #[prost(message, optional, tag = "1")]
18150 pub project: ::core::option::Option<super::super::models::v2::Project>,
18151}
18152pub mod project_service_client {
18154 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
18155 use tonic::codegen::*;
18156 use tonic::codegen::http::Uri;
18157 #[derive(Debug, Clone)]
18163 pub struct ProjectServiceClient<T> {
18164 inner: tonic::client::Grpc<T>,
18165 }
18166 impl ProjectServiceClient<tonic::transport::Channel> {
18167 pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
18169 where
18170 D: TryInto<tonic::transport::Endpoint>,
18171 D::Error: Into<StdError>,
18172 {
18173 let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
18174 Ok(Self::new(conn))
18175 }
18176 }
18177 impl<T> ProjectServiceClient<T>
18178 where
18179 T: tonic::client::GrpcService<tonic::body::BoxBody>,
18180 T::Error: Into<StdError>,
18181 T::ResponseBody: Body<Data = Bytes> + Send + 'static,
18182 <T::ResponseBody as Body>::Error: Into<StdError> + Send,
18183 {
18184 pub fn new(inner: T) -> Self {
18185 let inner = tonic::client::Grpc::new(inner);
18186 Self { inner }
18187 }
18188 pub fn with_origin(inner: T, origin: Uri) -> Self {
18189 let inner = tonic::client::Grpc::with_origin(inner, origin);
18190 Self { inner }
18191 }
18192 pub fn with_interceptor<F>(
18193 inner: T,
18194 interceptor: F,
18195 ) -> ProjectServiceClient<InterceptedService<T, F>>
18196 where
18197 F: tonic::service::Interceptor,
18198 T::ResponseBody: Default,
18199 T: tonic::codegen::Service<
18200 http::Request<tonic::body::BoxBody>,
18201 Response = http::Response<
18202 <T as tonic::client::GrpcService<tonic::body::BoxBody>>::ResponseBody,
18203 >,
18204 >,
18205 <T as tonic::codegen::Service<
18206 http::Request<tonic::body::BoxBody>,
18207 >>::Error: Into<StdError> + Send + Sync,
18208 {
18209 ProjectServiceClient::new(InterceptedService::new(inner, interceptor))
18210 }
18211 #[must_use]
18216 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
18217 self.inner = self.inner.send_compressed(encoding);
18218 self
18219 }
18220 #[must_use]
18222 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
18223 self.inner = self.inner.accept_compressed(encoding);
18224 self
18225 }
18226 #[must_use]
18230 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
18231 self.inner = self.inner.max_decoding_message_size(limit);
18232 self
18233 }
18234 #[must_use]
18238 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
18239 self.inner = self.inner.max_encoding_message_size(limit);
18240 self
18241 }
18242 pub async fn create_project(
18248 &mut self,
18249 request: impl tonic::IntoRequest<super::CreateProjectRequest>,
18250 ) -> std::result::Result<
18251 tonic::Response<super::CreateProjectResponse>,
18252 tonic::Status,
18253 > {
18254 self.inner
18255 .ready()
18256 .await
18257 .map_err(|e| {
18258 tonic::Status::new(
18259 tonic::Code::Unknown,
18260 format!("Service was not ready: {}", e.into()),
18261 )
18262 })?;
18263 let codec = tonic::codec::ProstCodec::default();
18264 let path = http::uri::PathAndQuery::from_static(
18265 "/aruna.api.storage.services.v2.ProjectService/CreateProject",
18266 );
18267 let mut req = request.into_request();
18268 req.extensions_mut()
18269 .insert(
18270 GrpcMethod::new(
18271 "aruna.api.storage.services.v2.ProjectService",
18272 "CreateProject",
18273 ),
18274 );
18275 self.inner.unary(req, path, codec).await
18276 }
18277 pub async fn get_project(
18283 &mut self,
18284 request: impl tonic::IntoRequest<super::GetProjectRequest>,
18285 ) -> std::result::Result<
18286 tonic::Response<super::GetProjectResponse>,
18287 tonic::Status,
18288 > {
18289 self.inner
18290 .ready()
18291 .await
18292 .map_err(|e| {
18293 tonic::Status::new(
18294 tonic::Code::Unknown,
18295 format!("Service was not ready: {}", e.into()),
18296 )
18297 })?;
18298 let codec = tonic::codec::ProstCodec::default();
18299 let path = http::uri::PathAndQuery::from_static(
18300 "/aruna.api.storage.services.v2.ProjectService/GetProject",
18301 );
18302 let mut req = request.into_request();
18303 req.extensions_mut()
18304 .insert(
18305 GrpcMethod::new(
18306 "aruna.api.storage.services.v2.ProjectService",
18307 "GetProject",
18308 ),
18309 );
18310 self.inner.unary(req, path, codec).await
18311 }
18312 pub async fn get_projects(
18318 &mut self,
18319 request: impl tonic::IntoRequest<super::GetProjectsRequest>,
18320 ) -> std::result::Result<
18321 tonic::Response<super::GetProjectsResponse>,
18322 tonic::Status,
18323 > {
18324 self.inner
18325 .ready()
18326 .await
18327 .map_err(|e| {
18328 tonic::Status::new(
18329 tonic::Code::Unknown,
18330 format!("Service was not ready: {}", e.into()),
18331 )
18332 })?;
18333 let codec = tonic::codec::ProstCodec::default();
18334 let path = http::uri::PathAndQuery::from_static(
18335 "/aruna.api.storage.services.v2.ProjectService/GetProjects",
18336 );
18337 let mut req = request.into_request();
18338 req.extensions_mut()
18339 .insert(
18340 GrpcMethod::new(
18341 "aruna.api.storage.services.v2.ProjectService",
18342 "GetProjects",
18343 ),
18344 );
18345 self.inner.unary(req, path, codec).await
18346 }
18347 pub async fn delete_project(
18353 &mut self,
18354 request: impl tonic::IntoRequest<super::DeleteProjectRequest>,
18355 ) -> std::result::Result<
18356 tonic::Response<super::DeleteProjectResponse>,
18357 tonic::Status,
18358 > {
18359 self.inner
18360 .ready()
18361 .await
18362 .map_err(|e| {
18363 tonic::Status::new(
18364 tonic::Code::Unknown,
18365 format!("Service was not ready: {}", e.into()),
18366 )
18367 })?;
18368 let codec = tonic::codec::ProstCodec::default();
18369 let path = http::uri::PathAndQuery::from_static(
18370 "/aruna.api.storage.services.v2.ProjectService/DeleteProject",
18371 );
18372 let mut req = request.into_request();
18373 req.extensions_mut()
18374 .insert(
18375 GrpcMethod::new(
18376 "aruna.api.storage.services.v2.ProjectService",
18377 "DeleteProject",
18378 ),
18379 );
18380 self.inner.unary(req, path, codec).await
18381 }
18382 pub async fn update_project_name(
18388 &mut self,
18389 request: impl tonic::IntoRequest<super::UpdateProjectNameRequest>,
18390 ) -> std::result::Result<
18391 tonic::Response<super::UpdateProjectNameResponse>,
18392 tonic::Status,
18393 > {
18394 self.inner
18395 .ready()
18396 .await
18397 .map_err(|e| {
18398 tonic::Status::new(
18399 tonic::Code::Unknown,
18400 format!("Service was not ready: {}", e.into()),
18401 )
18402 })?;
18403 let codec = tonic::codec::ProstCodec::default();
18404 let path = http::uri::PathAndQuery::from_static(
18405 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectName",
18406 );
18407 let mut req = request.into_request();
18408 req.extensions_mut()
18409 .insert(
18410 GrpcMethod::new(
18411 "aruna.api.storage.services.v2.ProjectService",
18412 "UpdateProjectName",
18413 ),
18414 );
18415 self.inner.unary(req, path, codec).await
18416 }
18417 pub async fn update_project_description(
18423 &mut self,
18424 request: impl tonic::IntoRequest<super::UpdateProjectDescriptionRequest>,
18425 ) -> std::result::Result<
18426 tonic::Response<super::UpdateProjectDescriptionResponse>,
18427 tonic::Status,
18428 > {
18429 self.inner
18430 .ready()
18431 .await
18432 .map_err(|e| {
18433 tonic::Status::new(
18434 tonic::Code::Unknown,
18435 format!("Service was not ready: {}", e.into()),
18436 )
18437 })?;
18438 let codec = tonic::codec::ProstCodec::default();
18439 let path = http::uri::PathAndQuery::from_static(
18440 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectDescription",
18441 );
18442 let mut req = request.into_request();
18443 req.extensions_mut()
18444 .insert(
18445 GrpcMethod::new(
18446 "aruna.api.storage.services.v2.ProjectService",
18447 "UpdateProjectDescription",
18448 ),
18449 );
18450 self.inner.unary(req, path, codec).await
18451 }
18452 pub async fn update_project_key_values(
18458 &mut self,
18459 request: impl tonic::IntoRequest<super::UpdateProjectKeyValuesRequest>,
18460 ) -> std::result::Result<
18461 tonic::Response<super::UpdateProjectKeyValuesResponse>,
18462 tonic::Status,
18463 > {
18464 self.inner
18465 .ready()
18466 .await
18467 .map_err(|e| {
18468 tonic::Status::new(
18469 tonic::Code::Unknown,
18470 format!("Service was not ready: {}", e.into()),
18471 )
18472 })?;
18473 let codec = tonic::codec::ProstCodec::default();
18474 let path = http::uri::PathAndQuery::from_static(
18475 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectKeyValues",
18476 );
18477 let mut req = request.into_request();
18478 req.extensions_mut()
18479 .insert(
18480 GrpcMethod::new(
18481 "aruna.api.storage.services.v2.ProjectService",
18482 "UpdateProjectKeyValues",
18483 ),
18484 );
18485 self.inner.unary(req, path, codec).await
18486 }
18487 pub async fn update_project_data_class(
18493 &mut self,
18494 request: impl tonic::IntoRequest<super::UpdateProjectDataClassRequest>,
18495 ) -> std::result::Result<
18496 tonic::Response<super::UpdateProjectDataClassResponse>,
18497 tonic::Status,
18498 > {
18499 self.inner
18500 .ready()
18501 .await
18502 .map_err(|e| {
18503 tonic::Status::new(
18504 tonic::Code::Unknown,
18505 format!("Service was not ready: {}", e.into()),
18506 )
18507 })?;
18508 let codec = tonic::codec::ProstCodec::default();
18509 let path = http::uri::PathAndQuery::from_static(
18510 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectDataClass",
18511 );
18512 let mut req = request.into_request();
18513 req.extensions_mut()
18514 .insert(
18515 GrpcMethod::new(
18516 "aruna.api.storage.services.v2.ProjectService",
18517 "UpdateProjectDataClass",
18518 ),
18519 );
18520 self.inner.unary(req, path, codec).await
18521 }
18522 pub async fn update_project_licenses(
18528 &mut self,
18529 request: impl tonic::IntoRequest<super::UpdateProjectLicensesRequest>,
18530 ) -> std::result::Result<
18531 tonic::Response<super::UpdateProjectLicensesResponse>,
18532 tonic::Status,
18533 > {
18534 self.inner
18535 .ready()
18536 .await
18537 .map_err(|e| {
18538 tonic::Status::new(
18539 tonic::Code::Unknown,
18540 format!("Service was not ready: {}", e.into()),
18541 )
18542 })?;
18543 let codec = tonic::codec::ProstCodec::default();
18544 let path = http::uri::PathAndQuery::from_static(
18545 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectLicenses",
18546 );
18547 let mut req = request.into_request();
18548 req.extensions_mut()
18549 .insert(
18550 GrpcMethod::new(
18551 "aruna.api.storage.services.v2.ProjectService",
18552 "UpdateProjectLicenses",
18553 ),
18554 );
18555 self.inner.unary(req, path, codec).await
18556 }
18557 pub async fn archive_project(
18563 &mut self,
18564 request: impl tonic::IntoRequest<super::ArchiveProjectRequest>,
18565 ) -> std::result::Result<
18566 tonic::Response<super::ArchiveProjectResponse>,
18567 tonic::Status,
18568 > {
18569 self.inner
18570 .ready()
18571 .await
18572 .map_err(|e| {
18573 tonic::Status::new(
18574 tonic::Code::Unknown,
18575 format!("Service was not ready: {}", e.into()),
18576 )
18577 })?;
18578 let codec = tonic::codec::ProstCodec::default();
18579 let path = http::uri::PathAndQuery::from_static(
18580 "/aruna.api.storage.services.v2.ProjectService/ArchiveProject",
18581 );
18582 let mut req = request.into_request();
18583 req.extensions_mut()
18584 .insert(
18585 GrpcMethod::new(
18586 "aruna.api.storage.services.v2.ProjectService",
18587 "ArchiveProject",
18588 ),
18589 );
18590 self.inner.unary(req, path, codec).await
18591 }
18592 pub async fn update_project_title(
18598 &mut self,
18599 request: impl tonic::IntoRequest<super::UpdateProjectTitleRequest>,
18600 ) -> std::result::Result<
18601 tonic::Response<super::UpdateProjectTitleResponse>,
18602 tonic::Status,
18603 > {
18604 self.inner
18605 .ready()
18606 .await
18607 .map_err(|e| {
18608 tonic::Status::new(
18609 tonic::Code::Unknown,
18610 format!("Service was not ready: {}", e.into()),
18611 )
18612 })?;
18613 let codec = tonic::codec::ProstCodec::default();
18614 let path = http::uri::PathAndQuery::from_static(
18615 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectTitle",
18616 );
18617 let mut req = request.into_request();
18618 req.extensions_mut()
18619 .insert(
18620 GrpcMethod::new(
18621 "aruna.api.storage.services.v2.ProjectService",
18622 "UpdateProjectTitle",
18623 ),
18624 );
18625 self.inner.unary(req, path, codec).await
18626 }
18627 pub async fn update_project_authors(
18633 &mut self,
18634 request: impl tonic::IntoRequest<super::UpdateProjectAuthorsRequest>,
18635 ) -> std::result::Result<
18636 tonic::Response<super::UpdateProjectAuthorsResponse>,
18637 tonic::Status,
18638 > {
18639 self.inner
18640 .ready()
18641 .await
18642 .map_err(|e| {
18643 tonic::Status::new(
18644 tonic::Code::Unknown,
18645 format!("Service was not ready: {}", e.into()),
18646 )
18647 })?;
18648 let codec = tonic::codec::ProstCodec::default();
18649 let path = http::uri::PathAndQuery::from_static(
18650 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectAuthors",
18651 );
18652 let mut req = request.into_request();
18653 req.extensions_mut()
18654 .insert(
18655 GrpcMethod::new(
18656 "aruna.api.storage.services.v2.ProjectService",
18657 "UpdateProjectAuthors",
18658 ),
18659 );
18660 self.inner.unary(req, path, codec).await
18661 }
18662 }
18663}
18664pub mod project_service_server {
18666 #![allow(unused_variables, dead_code, missing_docs, clippy::let_unit_value)]
18667 use tonic::codegen::*;
18668 #[async_trait]
18670 pub trait ProjectService: Send + Sync + 'static {
18671 async fn create_project(
18677 &self,
18678 request: tonic::Request<super::CreateProjectRequest>,
18679 ) -> std::result::Result<
18680 tonic::Response<super::CreateProjectResponse>,
18681 tonic::Status,
18682 >;
18683 async fn get_project(
18689 &self,
18690 request: tonic::Request<super::GetProjectRequest>,
18691 ) -> std::result::Result<
18692 tonic::Response<super::GetProjectResponse>,
18693 tonic::Status,
18694 >;
18695 async fn get_projects(
18701 &self,
18702 request: tonic::Request<super::GetProjectsRequest>,
18703 ) -> std::result::Result<
18704 tonic::Response<super::GetProjectsResponse>,
18705 tonic::Status,
18706 >;
18707 async fn delete_project(
18713 &self,
18714 request: tonic::Request<super::DeleteProjectRequest>,
18715 ) -> std::result::Result<
18716 tonic::Response<super::DeleteProjectResponse>,
18717 tonic::Status,
18718 >;
18719 async fn update_project_name(
18725 &self,
18726 request: tonic::Request<super::UpdateProjectNameRequest>,
18727 ) -> std::result::Result<
18728 tonic::Response<super::UpdateProjectNameResponse>,
18729 tonic::Status,
18730 >;
18731 async fn update_project_description(
18737 &self,
18738 request: tonic::Request<super::UpdateProjectDescriptionRequest>,
18739 ) -> std::result::Result<
18740 tonic::Response<super::UpdateProjectDescriptionResponse>,
18741 tonic::Status,
18742 >;
18743 async fn update_project_key_values(
18749 &self,
18750 request: tonic::Request<super::UpdateProjectKeyValuesRequest>,
18751 ) -> std::result::Result<
18752 tonic::Response<super::UpdateProjectKeyValuesResponse>,
18753 tonic::Status,
18754 >;
18755 async fn update_project_data_class(
18761 &self,
18762 request: tonic::Request<super::UpdateProjectDataClassRequest>,
18763 ) -> std::result::Result<
18764 tonic::Response<super::UpdateProjectDataClassResponse>,
18765 tonic::Status,
18766 >;
18767 async fn update_project_licenses(
18773 &self,
18774 request: tonic::Request<super::UpdateProjectLicensesRequest>,
18775 ) -> std::result::Result<
18776 tonic::Response<super::UpdateProjectLicensesResponse>,
18777 tonic::Status,
18778 >;
18779 async fn archive_project(
18785 &self,
18786 request: tonic::Request<super::ArchiveProjectRequest>,
18787 ) -> std::result::Result<
18788 tonic::Response<super::ArchiveProjectResponse>,
18789 tonic::Status,
18790 >;
18791 async fn update_project_title(
18797 &self,
18798 request: tonic::Request<super::UpdateProjectTitleRequest>,
18799 ) -> std::result::Result<
18800 tonic::Response<super::UpdateProjectTitleResponse>,
18801 tonic::Status,
18802 >;
18803 async fn update_project_authors(
18809 &self,
18810 request: tonic::Request<super::UpdateProjectAuthorsRequest>,
18811 ) -> std::result::Result<
18812 tonic::Response<super::UpdateProjectAuthorsResponse>,
18813 tonic::Status,
18814 >;
18815 }
18816 #[derive(Debug)]
18822 pub struct ProjectServiceServer<T: ProjectService> {
18823 inner: _Inner<T>,
18824 accept_compression_encodings: EnabledCompressionEncodings,
18825 send_compression_encodings: EnabledCompressionEncodings,
18826 max_decoding_message_size: Option<usize>,
18827 max_encoding_message_size: Option<usize>,
18828 }
18829 struct _Inner<T>(Arc<T>);
18830 impl<T: ProjectService> ProjectServiceServer<T> {
18831 pub fn new(inner: T) -> Self {
18832 Self::from_arc(Arc::new(inner))
18833 }
18834 pub fn from_arc(inner: Arc<T>) -> Self {
18835 let inner = _Inner(inner);
18836 Self {
18837 inner,
18838 accept_compression_encodings: Default::default(),
18839 send_compression_encodings: Default::default(),
18840 max_decoding_message_size: None,
18841 max_encoding_message_size: None,
18842 }
18843 }
18844 pub fn with_interceptor<F>(
18845 inner: T,
18846 interceptor: F,
18847 ) -> InterceptedService<Self, F>
18848 where
18849 F: tonic::service::Interceptor,
18850 {
18851 InterceptedService::new(Self::new(inner), interceptor)
18852 }
18853 #[must_use]
18855 pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
18856 self.accept_compression_encodings.enable(encoding);
18857 self
18858 }
18859 #[must_use]
18861 pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
18862 self.send_compression_encodings.enable(encoding);
18863 self
18864 }
18865 #[must_use]
18869 pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
18870 self.max_decoding_message_size = Some(limit);
18871 self
18872 }
18873 #[must_use]
18877 pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
18878 self.max_encoding_message_size = Some(limit);
18879 self
18880 }
18881 }
18882 impl<T, B> tonic::codegen::Service<http::Request<B>> for ProjectServiceServer<T>
18883 where
18884 T: ProjectService,
18885 B: Body + Send + 'static,
18886 B::Error: Into<StdError> + Send + 'static,
18887 {
18888 type Response = http::Response<tonic::body::BoxBody>;
18889 type Error = std::convert::Infallible;
18890 type Future = BoxFuture<Self::Response, Self::Error>;
18891 fn poll_ready(
18892 &mut self,
18893 _cx: &mut Context<'_>,
18894 ) -> Poll<std::result::Result<(), Self::Error>> {
18895 Poll::Ready(Ok(()))
18896 }
18897 fn call(&mut self, req: http::Request<B>) -> Self::Future {
18898 let inner = self.inner.clone();
18899 match req.uri().path() {
18900 "/aruna.api.storage.services.v2.ProjectService/CreateProject" => {
18901 #[allow(non_camel_case_types)]
18902 struct CreateProjectSvc<T: ProjectService>(pub Arc<T>);
18903 impl<
18904 T: ProjectService,
18905 > tonic::server::UnaryService<super::CreateProjectRequest>
18906 for CreateProjectSvc<T> {
18907 type Response = super::CreateProjectResponse;
18908 type Future = BoxFuture<
18909 tonic::Response<Self::Response>,
18910 tonic::Status,
18911 >;
18912 fn call(
18913 &mut self,
18914 request: tonic::Request<super::CreateProjectRequest>,
18915 ) -> Self::Future {
18916 let inner = Arc::clone(&self.0);
18917 let fut = async move {
18918 <T as ProjectService>::create_project(&inner, request).await
18919 };
18920 Box::pin(fut)
18921 }
18922 }
18923 let accept_compression_encodings = self.accept_compression_encodings;
18924 let send_compression_encodings = self.send_compression_encodings;
18925 let max_decoding_message_size = self.max_decoding_message_size;
18926 let max_encoding_message_size = self.max_encoding_message_size;
18927 let inner = self.inner.clone();
18928 let fut = async move {
18929 let inner = inner.0;
18930 let method = CreateProjectSvc(inner);
18931 let codec = tonic::codec::ProstCodec::default();
18932 let mut grpc = tonic::server::Grpc::new(codec)
18933 .apply_compression_config(
18934 accept_compression_encodings,
18935 send_compression_encodings,
18936 )
18937 .apply_max_message_size_config(
18938 max_decoding_message_size,
18939 max_encoding_message_size,
18940 );
18941 let res = grpc.unary(method, req).await;
18942 Ok(res)
18943 };
18944 Box::pin(fut)
18945 }
18946 "/aruna.api.storage.services.v2.ProjectService/GetProject" => {
18947 #[allow(non_camel_case_types)]
18948 struct GetProjectSvc<T: ProjectService>(pub Arc<T>);
18949 impl<
18950 T: ProjectService,
18951 > tonic::server::UnaryService<super::GetProjectRequest>
18952 for GetProjectSvc<T> {
18953 type Response = super::GetProjectResponse;
18954 type Future = BoxFuture<
18955 tonic::Response<Self::Response>,
18956 tonic::Status,
18957 >;
18958 fn call(
18959 &mut self,
18960 request: tonic::Request<super::GetProjectRequest>,
18961 ) -> Self::Future {
18962 let inner = Arc::clone(&self.0);
18963 let fut = async move {
18964 <T as ProjectService>::get_project(&inner, request).await
18965 };
18966 Box::pin(fut)
18967 }
18968 }
18969 let accept_compression_encodings = self.accept_compression_encodings;
18970 let send_compression_encodings = self.send_compression_encodings;
18971 let max_decoding_message_size = self.max_decoding_message_size;
18972 let max_encoding_message_size = self.max_encoding_message_size;
18973 let inner = self.inner.clone();
18974 let fut = async move {
18975 let inner = inner.0;
18976 let method = GetProjectSvc(inner);
18977 let codec = tonic::codec::ProstCodec::default();
18978 let mut grpc = tonic::server::Grpc::new(codec)
18979 .apply_compression_config(
18980 accept_compression_encodings,
18981 send_compression_encodings,
18982 )
18983 .apply_max_message_size_config(
18984 max_decoding_message_size,
18985 max_encoding_message_size,
18986 );
18987 let res = grpc.unary(method, req).await;
18988 Ok(res)
18989 };
18990 Box::pin(fut)
18991 }
18992 "/aruna.api.storage.services.v2.ProjectService/GetProjects" => {
18993 #[allow(non_camel_case_types)]
18994 struct GetProjectsSvc<T: ProjectService>(pub Arc<T>);
18995 impl<
18996 T: ProjectService,
18997 > tonic::server::UnaryService<super::GetProjectsRequest>
18998 for GetProjectsSvc<T> {
18999 type Response = super::GetProjectsResponse;
19000 type Future = BoxFuture<
19001 tonic::Response<Self::Response>,
19002 tonic::Status,
19003 >;
19004 fn call(
19005 &mut self,
19006 request: tonic::Request<super::GetProjectsRequest>,
19007 ) -> Self::Future {
19008 let inner = Arc::clone(&self.0);
19009 let fut = async move {
19010 <T as ProjectService>::get_projects(&inner, request).await
19011 };
19012 Box::pin(fut)
19013 }
19014 }
19015 let accept_compression_encodings = self.accept_compression_encodings;
19016 let send_compression_encodings = self.send_compression_encodings;
19017 let max_decoding_message_size = self.max_decoding_message_size;
19018 let max_encoding_message_size = self.max_encoding_message_size;
19019 let inner = self.inner.clone();
19020 let fut = async move {
19021 let inner = inner.0;
19022 let method = GetProjectsSvc(inner);
19023 let codec = tonic::codec::ProstCodec::default();
19024 let mut grpc = tonic::server::Grpc::new(codec)
19025 .apply_compression_config(
19026 accept_compression_encodings,
19027 send_compression_encodings,
19028 )
19029 .apply_max_message_size_config(
19030 max_decoding_message_size,
19031 max_encoding_message_size,
19032 );
19033 let res = grpc.unary(method, req).await;
19034 Ok(res)
19035 };
19036 Box::pin(fut)
19037 }
19038 "/aruna.api.storage.services.v2.ProjectService/DeleteProject" => {
19039 #[allow(non_camel_case_types)]
19040 struct DeleteProjectSvc<T: ProjectService>(pub Arc<T>);
19041 impl<
19042 T: ProjectService,
19043 > tonic::server::UnaryService<super::DeleteProjectRequest>
19044 for DeleteProjectSvc<T> {
19045 type Response = super::DeleteProjectResponse;
19046 type Future = BoxFuture<
19047 tonic::Response<Self::Response>,
19048 tonic::Status,
19049 >;
19050 fn call(
19051 &mut self,
19052 request: tonic::Request<super::DeleteProjectRequest>,
19053 ) -> Self::Future {
19054 let inner = Arc::clone(&self.0);
19055 let fut = async move {
19056 <T as ProjectService>::delete_project(&inner, request).await
19057 };
19058 Box::pin(fut)
19059 }
19060 }
19061 let accept_compression_encodings = self.accept_compression_encodings;
19062 let send_compression_encodings = self.send_compression_encodings;
19063 let max_decoding_message_size = self.max_decoding_message_size;
19064 let max_encoding_message_size = self.max_encoding_message_size;
19065 let inner = self.inner.clone();
19066 let fut = async move {
19067 let inner = inner.0;
19068 let method = DeleteProjectSvc(inner);
19069 let codec = tonic::codec::ProstCodec::default();
19070 let mut grpc = tonic::server::Grpc::new(codec)
19071 .apply_compression_config(
19072 accept_compression_encodings,
19073 send_compression_encodings,
19074 )
19075 .apply_max_message_size_config(
19076 max_decoding_message_size,
19077 max_encoding_message_size,
19078 );
19079 let res = grpc.unary(method, req).await;
19080 Ok(res)
19081 };
19082 Box::pin(fut)
19083 }
19084 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectName" => {
19085 #[allow(non_camel_case_types)]
19086 struct UpdateProjectNameSvc<T: ProjectService>(pub Arc<T>);
19087 impl<
19088 T: ProjectService,
19089 > tonic::server::UnaryService<super::UpdateProjectNameRequest>
19090 for UpdateProjectNameSvc<T> {
19091 type Response = super::UpdateProjectNameResponse;
19092 type Future = BoxFuture<
19093 tonic::Response<Self::Response>,
19094 tonic::Status,
19095 >;
19096 fn call(
19097 &mut self,
19098 request: tonic::Request<super::UpdateProjectNameRequest>,
19099 ) -> Self::Future {
19100 let inner = Arc::clone(&self.0);
19101 let fut = async move {
19102 <T as ProjectService>::update_project_name(&inner, request)
19103 .await
19104 };
19105 Box::pin(fut)
19106 }
19107 }
19108 let accept_compression_encodings = self.accept_compression_encodings;
19109 let send_compression_encodings = self.send_compression_encodings;
19110 let max_decoding_message_size = self.max_decoding_message_size;
19111 let max_encoding_message_size = self.max_encoding_message_size;
19112 let inner = self.inner.clone();
19113 let fut = async move {
19114 let inner = inner.0;
19115 let method = UpdateProjectNameSvc(inner);
19116 let codec = tonic::codec::ProstCodec::default();
19117 let mut grpc = tonic::server::Grpc::new(codec)
19118 .apply_compression_config(
19119 accept_compression_encodings,
19120 send_compression_encodings,
19121 )
19122 .apply_max_message_size_config(
19123 max_decoding_message_size,
19124 max_encoding_message_size,
19125 );
19126 let res = grpc.unary(method, req).await;
19127 Ok(res)
19128 };
19129 Box::pin(fut)
19130 }
19131 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectDescription" => {
19132 #[allow(non_camel_case_types)]
19133 struct UpdateProjectDescriptionSvc<T: ProjectService>(pub Arc<T>);
19134 impl<
19135 T: ProjectService,
19136 > tonic::server::UnaryService<super::UpdateProjectDescriptionRequest>
19137 for UpdateProjectDescriptionSvc<T> {
19138 type Response = super::UpdateProjectDescriptionResponse;
19139 type Future = BoxFuture<
19140 tonic::Response<Self::Response>,
19141 tonic::Status,
19142 >;
19143 fn call(
19144 &mut self,
19145 request: tonic::Request<
19146 super::UpdateProjectDescriptionRequest,
19147 >,
19148 ) -> Self::Future {
19149 let inner = Arc::clone(&self.0);
19150 let fut = async move {
19151 <T as ProjectService>::update_project_description(
19152 &inner,
19153 request,
19154 )
19155 .await
19156 };
19157 Box::pin(fut)
19158 }
19159 }
19160 let accept_compression_encodings = self.accept_compression_encodings;
19161 let send_compression_encodings = self.send_compression_encodings;
19162 let max_decoding_message_size = self.max_decoding_message_size;
19163 let max_encoding_message_size = self.max_encoding_message_size;
19164 let inner = self.inner.clone();
19165 let fut = async move {
19166 let inner = inner.0;
19167 let method = UpdateProjectDescriptionSvc(inner);
19168 let codec = tonic::codec::ProstCodec::default();
19169 let mut grpc = tonic::server::Grpc::new(codec)
19170 .apply_compression_config(
19171 accept_compression_encodings,
19172 send_compression_encodings,
19173 )
19174 .apply_max_message_size_config(
19175 max_decoding_message_size,
19176 max_encoding_message_size,
19177 );
19178 let res = grpc.unary(method, req).await;
19179 Ok(res)
19180 };
19181 Box::pin(fut)
19182 }
19183 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectKeyValues" => {
19184 #[allow(non_camel_case_types)]
19185 struct UpdateProjectKeyValuesSvc<T: ProjectService>(pub Arc<T>);
19186 impl<
19187 T: ProjectService,
19188 > tonic::server::UnaryService<super::UpdateProjectKeyValuesRequest>
19189 for UpdateProjectKeyValuesSvc<T> {
19190 type Response = super::UpdateProjectKeyValuesResponse;
19191 type Future = BoxFuture<
19192 tonic::Response<Self::Response>,
19193 tonic::Status,
19194 >;
19195 fn call(
19196 &mut self,
19197 request: tonic::Request<super::UpdateProjectKeyValuesRequest>,
19198 ) -> Self::Future {
19199 let inner = Arc::clone(&self.0);
19200 let fut = async move {
19201 <T as ProjectService>::update_project_key_values(
19202 &inner,
19203 request,
19204 )
19205 .await
19206 };
19207 Box::pin(fut)
19208 }
19209 }
19210 let accept_compression_encodings = self.accept_compression_encodings;
19211 let send_compression_encodings = self.send_compression_encodings;
19212 let max_decoding_message_size = self.max_decoding_message_size;
19213 let max_encoding_message_size = self.max_encoding_message_size;
19214 let inner = self.inner.clone();
19215 let fut = async move {
19216 let inner = inner.0;
19217 let method = UpdateProjectKeyValuesSvc(inner);
19218 let codec = tonic::codec::ProstCodec::default();
19219 let mut grpc = tonic::server::Grpc::new(codec)
19220 .apply_compression_config(
19221 accept_compression_encodings,
19222 send_compression_encodings,
19223 )
19224 .apply_max_message_size_config(
19225 max_decoding_message_size,
19226 max_encoding_message_size,
19227 );
19228 let res = grpc.unary(method, req).await;
19229 Ok(res)
19230 };
19231 Box::pin(fut)
19232 }
19233 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectDataClass" => {
19234 #[allow(non_camel_case_types)]
19235 struct UpdateProjectDataClassSvc<T: ProjectService>(pub Arc<T>);
19236 impl<
19237 T: ProjectService,
19238 > tonic::server::UnaryService<super::UpdateProjectDataClassRequest>
19239 for UpdateProjectDataClassSvc<T> {
19240 type Response = super::UpdateProjectDataClassResponse;
19241 type Future = BoxFuture<
19242 tonic::Response<Self::Response>,
19243 tonic::Status,
19244 >;
19245 fn call(
19246 &mut self,
19247 request: tonic::Request<super::UpdateProjectDataClassRequest>,
19248 ) -> Self::Future {
19249 let inner = Arc::clone(&self.0);
19250 let fut = async move {
19251 <T as ProjectService>::update_project_data_class(
19252 &inner,
19253 request,
19254 )
19255 .await
19256 };
19257 Box::pin(fut)
19258 }
19259 }
19260 let accept_compression_encodings = self.accept_compression_encodings;
19261 let send_compression_encodings = self.send_compression_encodings;
19262 let max_decoding_message_size = self.max_decoding_message_size;
19263 let max_encoding_message_size = self.max_encoding_message_size;
19264 let inner = self.inner.clone();
19265 let fut = async move {
19266 let inner = inner.0;
19267 let method = UpdateProjectDataClassSvc(inner);
19268 let codec = tonic::codec::ProstCodec::default();
19269 let mut grpc = tonic::server::Grpc::new(codec)
19270 .apply_compression_config(
19271 accept_compression_encodings,
19272 send_compression_encodings,
19273 )
19274 .apply_max_message_size_config(
19275 max_decoding_message_size,
19276 max_encoding_message_size,
19277 );
19278 let res = grpc.unary(method, req).await;
19279 Ok(res)
19280 };
19281 Box::pin(fut)
19282 }
19283 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectLicenses" => {
19284 #[allow(non_camel_case_types)]
19285 struct UpdateProjectLicensesSvc<T: ProjectService>(pub Arc<T>);
19286 impl<
19287 T: ProjectService,
19288 > tonic::server::UnaryService<super::UpdateProjectLicensesRequest>
19289 for UpdateProjectLicensesSvc<T> {
19290 type Response = super::UpdateProjectLicensesResponse;
19291 type Future = BoxFuture<
19292 tonic::Response<Self::Response>,
19293 tonic::Status,
19294 >;
19295 fn call(
19296 &mut self,
19297 request: tonic::Request<super::UpdateProjectLicensesRequest>,
19298 ) -> Self::Future {
19299 let inner = Arc::clone(&self.0);
19300 let fut = async move {
19301 <T as ProjectService>::update_project_licenses(
19302 &inner,
19303 request,
19304 )
19305 .await
19306 };
19307 Box::pin(fut)
19308 }
19309 }
19310 let accept_compression_encodings = self.accept_compression_encodings;
19311 let send_compression_encodings = self.send_compression_encodings;
19312 let max_decoding_message_size = self.max_decoding_message_size;
19313 let max_encoding_message_size = self.max_encoding_message_size;
19314 let inner = self.inner.clone();
19315 let fut = async move {
19316 let inner = inner.0;
19317 let method = UpdateProjectLicensesSvc(inner);
19318 let codec = tonic::codec::ProstCodec::default();
19319 let mut grpc = tonic::server::Grpc::new(codec)
19320 .apply_compression_config(
19321 accept_compression_encodings,
19322 send_compression_encodings,
19323 )
19324 .apply_max_message_size_config(
19325 max_decoding_message_size,
19326 max_encoding_message_size,
19327 );
19328 let res = grpc.unary(method, req).await;
19329 Ok(res)
19330 };
19331 Box::pin(fut)
19332 }
19333 "/aruna.api.storage.services.v2.ProjectService/ArchiveProject" => {
19334 #[allow(non_camel_case_types)]
19335 struct ArchiveProjectSvc<T: ProjectService>(pub Arc<T>);
19336 impl<
19337 T: ProjectService,
19338 > tonic::server::UnaryService<super::ArchiveProjectRequest>
19339 for ArchiveProjectSvc<T> {
19340 type Response = super::ArchiveProjectResponse;
19341 type Future = BoxFuture<
19342 tonic::Response<Self::Response>,
19343 tonic::Status,
19344 >;
19345 fn call(
19346 &mut self,
19347 request: tonic::Request<super::ArchiveProjectRequest>,
19348 ) -> Self::Future {
19349 let inner = Arc::clone(&self.0);
19350 let fut = async move {
19351 <T as ProjectService>::archive_project(&inner, request)
19352 .await
19353 };
19354 Box::pin(fut)
19355 }
19356 }
19357 let accept_compression_encodings = self.accept_compression_encodings;
19358 let send_compression_encodings = self.send_compression_encodings;
19359 let max_decoding_message_size = self.max_decoding_message_size;
19360 let max_encoding_message_size = self.max_encoding_message_size;
19361 let inner = self.inner.clone();
19362 let fut = async move {
19363 let inner = inner.0;
19364 let method = ArchiveProjectSvc(inner);
19365 let codec = tonic::codec::ProstCodec::default();
19366 let mut grpc = tonic::server::Grpc::new(codec)
19367 .apply_compression_config(
19368 accept_compression_encodings,
19369 send_compression_encodings,
19370 )
19371 .apply_max_message_size_config(
19372 max_decoding_message_size,
19373 max_encoding_message_size,
19374 );
19375 let res = grpc.unary(method, req).await;
19376 Ok(res)
19377 };
19378 Box::pin(fut)
19379 }
19380 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectTitle" => {
19381 #[allow(non_camel_case_types)]
19382 struct UpdateProjectTitleSvc<T: ProjectService>(pub Arc<T>);
19383 impl<
19384 T: ProjectService,
19385 > tonic::server::UnaryService<super::UpdateProjectTitleRequest>
19386 for UpdateProjectTitleSvc<T> {
19387 type Response = super::UpdateProjectTitleResponse;
19388 type Future = BoxFuture<
19389 tonic::Response<Self::Response>,
19390 tonic::Status,
19391 >;
19392 fn call(
19393 &mut self,
19394 request: tonic::Request<super::UpdateProjectTitleRequest>,
19395 ) -> Self::Future {
19396 let inner = Arc::clone(&self.0);
19397 let fut = async move {
19398 <T as ProjectService>::update_project_title(&inner, request)
19399 .await
19400 };
19401 Box::pin(fut)
19402 }
19403 }
19404 let accept_compression_encodings = self.accept_compression_encodings;
19405 let send_compression_encodings = self.send_compression_encodings;
19406 let max_decoding_message_size = self.max_decoding_message_size;
19407 let max_encoding_message_size = self.max_encoding_message_size;
19408 let inner = self.inner.clone();
19409 let fut = async move {
19410 let inner = inner.0;
19411 let method = UpdateProjectTitleSvc(inner);
19412 let codec = tonic::codec::ProstCodec::default();
19413 let mut grpc = tonic::server::Grpc::new(codec)
19414 .apply_compression_config(
19415 accept_compression_encodings,
19416 send_compression_encodings,
19417 )
19418 .apply_max_message_size_config(
19419 max_decoding_message_size,
19420 max_encoding_message_size,
19421 );
19422 let res = grpc.unary(method, req).await;
19423 Ok(res)
19424 };
19425 Box::pin(fut)
19426 }
19427 "/aruna.api.storage.services.v2.ProjectService/UpdateProjectAuthors" => {
19428 #[allow(non_camel_case_types)]
19429 struct UpdateProjectAuthorsSvc<T: ProjectService>(pub Arc<T>);
19430 impl<
19431 T: ProjectService,
19432 > tonic::server::UnaryService<super::UpdateProjectAuthorsRequest>
19433 for UpdateProjectAuthorsSvc<T> {
19434 type Response = super::UpdateProjectAuthorsResponse;
19435 type Future = BoxFuture<
19436 tonic::Response<Self::Response>,
19437 tonic::Status,
19438 >;
19439 fn call(
19440 &mut self,
19441 request: tonic::Request<super::UpdateProjectAuthorsRequest>,
19442 ) -> Self::Future {
19443 let inner = Arc::clone(&self.0);
19444 let fut = async move {
19445 <T as ProjectService>::update_project_authors(
19446 &inner,
19447 request,
19448 )
19449 .await
19450 };
19451 Box::pin(fut)
19452 }
19453 }
19454 let accept_compression_encodings = self.accept_compression_encodings;
19455 let send_compression_encodings = self.send_compression_encodings;
19456 let max_decoding_message_size = self.max_decoding_message_size;
19457 let max_encoding_message_size = self.max_encoding_message_size;
19458 let inner = self.inner.clone();
19459 let fut = async move {
19460 let inner = inner.0;
19461 let method = UpdateProjectAuthorsSvc(inner);
19462 let codec = tonic::codec::ProstCodec::default();
19463 let mut grpc = tonic::server::Grpc::new(codec)
19464 .apply_compression_config(
19465 accept_compression_encodings,
19466 send_compression_encodings,
19467 )
19468 .apply_max_message_size_config(
19469 max_decoding_message_size,
19470 max_encoding_message_size,
19471 );
19472 let res = grpc.unary(method, req).await;
19473 Ok(res)
19474 };
19475 Box::pin(fut)
19476 }
19477 _ => {
19478 Box::pin(async move {
19479 Ok(
19480 http::Response::builder()
19481 .status(200)
19482 .header("grpc-status", "12")
19483 .header("content-type", "application/grpc")
19484 .body(empty_body())
19485 .unwrap(),
19486 )
19487 })
19488 }
19489 }
19490 }
19491 }
19492 impl<T: ProjectService> Clone for ProjectServiceServer<T> {
19493 fn clone(&self) -> Self {
19494 let inner = self.inner.clone();
19495 Self {
19496 inner,
19497 accept_compression_encodings: self.accept_compression_encodings,
19498 send_compression_encodings: self.send_compression_encodings,
19499 max_decoding_message_size: self.max_decoding_message_size,
19500 max_encoding_message_size: self.max_encoding_message_size,
19501 }
19502 }
19503 }
19504 impl<T: ProjectService> Clone for _Inner<T> {
19505 fn clone(&self) -> Self {
19506 Self(Arc::clone(&self.0))
19507 }
19508 }
19509 impl<T: std::fmt::Debug> std::fmt::Debug for _Inner<T> {
19510 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
19511 write!(f, "{:?}", self.0)
19512 }
19513 }
19514 impl<T: ProjectService> tonic::server::NamedService for ProjectServiceServer<T> {
19515 const NAME: &'static str = "aruna.api.storage.services.v2.ProjectService";
19516 }
19517}