Skip to main content

nominal_api_proto/proto/
nominal.connect.v1.rs

1// This file is @generated by prost-build.
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct CreateConnectAppRequest {
4    #[prost(string, tag = "1")]
5    pub display_name: ::prost::alloc::string::String,
6    #[prost(string, optional, tag = "2")]
7    pub description: ::core::option::Option<::prost::alloc::string::String>,
8    #[prost(string, repeated, tag = "3")]
9    pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
10    #[prost(map = "string, string", tag = "4")]
11    pub properties: ::std::collections::HashMap<
12        ::prost::alloc::string::String,
13        ::prost::alloc::string::String,
14    >,
15    #[prost(bool, optional, tag = "5")]
16    pub is_published: ::core::option::Option<bool>,
17    #[prost(string, tag = "6")]
18    pub workspace: ::prost::alloc::string::String,
19    #[prost(message, optional, tag = "7")]
20    pub bundle: ::core::option::Option<ConnectAppBundle>,
21    #[prost(string, tag = "8")]
22    pub commit_message: ::prost::alloc::string::String,
23}
24#[derive(Clone, PartialEq, ::prost::Message)]
25pub struct CreateConnectAppResponse {
26    #[prost(message, optional, tag = "1")]
27    pub app: ::core::option::Option<ConnectApp>,
28}
29#[derive(Clone, PartialEq, ::prost::Message)]
30pub struct UpdateConnectAppMetadataRequest {
31    #[prost(string, tag = "1")]
32    pub rid: ::prost::alloc::string::String,
33    #[prost(string, optional, tag = "2")]
34    pub display_name: ::core::option::Option<::prost::alloc::string::String>,
35    #[prost(string, optional, tag = "3")]
36    pub description: ::core::option::Option<::prost::alloc::string::String>,
37    #[prost(message, optional, tag = "4")]
38    pub labels: ::core::option::Option<super::super::types::LabelUpdateWrapper>,
39    #[prost(message, optional, tag = "5")]
40    pub properties: ::core::option::Option<super::super::types::PropertyUpdateWrapper>,
41    #[prost(bool, optional, tag = "6")]
42    pub is_archived: ::core::option::Option<bool>,
43    #[prost(bool, optional, tag = "7")]
44    pub is_published: ::core::option::Option<bool>,
45}
46#[derive(Clone, PartialEq, ::prost::Message)]
47pub struct ConnectAppBundle {
48    #[prost(message, optional, tag = "1")]
49    pub s3_path: ::core::option::Option<super::super::types::Handle>,
50    #[prost(message, optional, tag = "2")]
51    pub metadata: ::core::option::Option<ConnectAppBundleMetadata>,
52}
53#[derive(Clone, PartialEq, ::prost::Message)]
54pub struct ConnectAppBundleMetadata {
55    #[prost(string, tag = "1")]
56    pub title: ::prost::alloc::string::String,
57    #[prost(bool, tag = "2")]
58    pub contains_experimental_features: bool,
59    #[prost(string, tag = "3")]
60    pub sha256_checksum: ::prost::alloc::string::String,
61    #[prost(string, optional, tag = "4")]
62    pub connect_file_path: ::core::option::Option<::prost::alloc::string::String>,
63}
64#[derive(Clone, PartialEq, ::prost::Message)]
65pub struct ConnectAppSearchQuery {
66    #[prost(oneof = "connect_app_search_query::Query", tags = "1, 2, 3, 4, 5, 6, 7")]
67    pub query: ::core::option::Option<connect_app_search_query::Query>,
68}
69/// Nested message and enum types in `ConnectAppSearchQuery`.
70pub mod connect_app_search_query {
71    #[derive(Clone, PartialEq, ::prost::Message)]
72    pub struct ConnectAppSearchAndQuery {
73        #[prost(message, repeated, tag = "1")]
74        pub queries: ::prost::alloc::vec::Vec<super::ConnectAppSearchQuery>,
75    }
76    #[derive(Clone, PartialEq, ::prost::Message)]
77    pub struct ConnectAppSearchOrQuery {
78        #[prost(message, repeated, tag = "1")]
79        pub queries: ::prost::alloc::vec::Vec<super::ConnectAppSearchQuery>,
80    }
81    #[derive(Clone, PartialEq, ::prost::Oneof)]
82    pub enum Query {
83        #[prost(string, tag = "1")]
84        SearchText(::prost::alloc::string::String),
85        #[prost(string, tag = "2")]
86        Label(::prost::alloc::string::String),
87        #[prost(message, tag = "3")]
88        Property(super::super::super::types::Property),
89        #[prost(message, tag = "4")]
90        And(ConnectAppSearchAndQuery),
91        #[prost(message, tag = "5")]
92        Or(ConnectAppSearchOrQuery),
93        #[prost(string, tag = "6")]
94        Workspace(::prost::alloc::string::String),
95        #[prost(bool, tag = "7")]
96        IsArchived(bool),
97    }
98}
99#[derive(Clone, PartialEq, ::prost::Message)]
100pub struct ConnectAppMetadata {
101    #[prost(string, tag = "1")]
102    pub rid: ::prost::alloc::string::String,
103    #[prost(string, tag = "2")]
104    pub display_name: ::prost::alloc::string::String,
105    #[prost(string, optional, tag = "3")]
106    pub description: ::core::option::Option<::prost::alloc::string::String>,
107    #[prost(string, repeated, tag = "4")]
108    pub labels: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
109    #[prost(map = "string, string", tag = "5")]
110    pub properties: ::std::collections::HashMap<
111        ::prost::alloc::string::String,
112        ::prost::alloc::string::String,
113    >,
114    #[prost(bool, tag = "6")]
115    pub is_archived: bool,
116    #[prost(bool, tag = "7")]
117    pub is_published: bool,
118    #[prost(message, optional, tag = "8")]
119    pub created_at: ::core::option::Option<
120        super::super::super::google::protobuf::Timestamp,
121    >,
122    #[prost(string, tag = "9")]
123    pub created_by: ::prost::alloc::string::String,
124    #[prost(message, optional, tag = "10")]
125    pub updated_at: ::core::option::Option<
126        super::super::super::google::protobuf::Timestamp,
127    >,
128    #[prost(string, tag = "11")]
129    pub workspace: ::prost::alloc::string::String,
130}
131#[derive(Clone, PartialEq, ::prost::Message)]
132pub struct ConnectApp {
133    #[prost(string, tag = "1")]
134    pub rid: ::prost::alloc::string::String,
135    #[prost(string, tag = "2")]
136    pub commit: ::prost::alloc::string::String,
137    #[prost(message, optional, tag = "3")]
138    pub metadata: ::core::option::Option<ConnectAppMetadata>,
139    #[prost(message, optional, tag = "4")]
140    pub bundle: ::core::option::Option<ConnectAppBundle>,
141    #[prost(uint64, tag = "5")]
142    pub version_number: u64,
143}
144#[derive(Clone, PartialEq, ::prost::Message)]
145pub struct GetConnectAppRequest {
146    #[prost(string, tag = "1")]
147    pub rid: ::prost::alloc::string::String,
148    #[prost(message, optional, tag = "2")]
149    pub branch_or_commit: ::core::option::Option<
150        super::super::versioning::v1::BranchOrCommit,
151    >,
152}
153#[derive(Clone, PartialEq, ::prost::Message)]
154pub struct GetConnectAppBundleDownloadUrlRequest {
155    #[prost(string, tag = "1")]
156    pub rid: ::prost::alloc::string::String,
157    #[prost(message, optional, tag = "2")]
158    pub branch_or_commit: ::core::option::Option<
159        super::super::versioning::v1::BranchOrCommit,
160    >,
161}
162#[derive(Clone, PartialEq, ::prost::Message)]
163pub struct GetConnectAppBundleDownloadUrlResponse {
164    #[prost(string, tag = "1")]
165    pub url: ::prost::alloc::string::String,
166}
167#[derive(Clone, PartialEq, ::prost::Message)]
168pub struct GetConnectAppResponse {
169    #[prost(message, optional, tag = "1")]
170    pub app: ::core::option::Option<ConnectApp>,
171}
172#[derive(Clone, PartialEq, ::prost::Message)]
173pub struct UpdateConnectAppMetadataResponse {
174    #[prost(message, optional, tag = "1")]
175    pub app_metadata: ::core::option::Option<ConnectAppMetadata>,
176}
177#[derive(Clone, PartialEq, ::prost::Message)]
178pub struct CommitRequest {
179    #[prost(string, tag = "1")]
180    pub rid: ::prost::alloc::string::String,
181    #[prost(message, optional, tag = "2")]
182    pub bundle: ::core::option::Option<ConnectAppBundle>,
183    #[prost(string, tag = "3")]
184    pub message: ::prost::alloc::string::String,
185}
186#[derive(Clone, PartialEq, ::prost::Message)]
187pub struct CommitResponse {
188    #[prost(message, optional, tag = "1")]
189    pub app: ::core::option::Option<ConnectApp>,
190}
191#[derive(Clone, Copy, PartialEq, ::prost::Message)]
192pub struct SearchConnectAppsOptions {
193    #[prost(bool, optional, tag = "1")]
194    pub is_descending: ::core::option::Option<bool>,
195    #[prost(enumeration = "SearchConnectAppsSortField", optional, tag = "2")]
196    pub sort_field: ::core::option::Option<i32>,
197}
198#[derive(Clone, PartialEq, ::prost::Message)]
199pub struct SearchConnectAppsRequest {
200    #[prost(message, optional, tag = "1")]
201    pub query: ::core::option::Option<ConnectAppSearchQuery>,
202    #[prost(message, optional, tag = "2")]
203    pub options: ::core::option::Option<SearchConnectAppsOptions>,
204    #[prost(int32, optional, tag = "3")]
205    pub page_size: ::core::option::Option<i32>,
206    #[prost(string, optional, tag = "4")]
207    pub next_page_token: ::core::option::Option<::prost::alloc::string::String>,
208}
209#[derive(Clone, PartialEq, ::prost::Message)]
210pub struct SearchConnectAppsResponse {
211    #[prost(message, repeated, tag = "1")]
212    pub app_metadata: ::prost::alloc::vec::Vec<ConnectAppMetadata>,
213    #[prost(string, optional, tag = "2")]
214    pub next_page_token: ::core::option::Option<::prost::alloc::string::String>,
215}
216#[derive(Clone, PartialEq, ::prost::Message)]
217pub struct ArchiveConnectAppsRequest {
218    #[prost(string, repeated, tag = "1")]
219    pub rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
220}
221#[derive(Clone, PartialEq, ::prost::Message)]
222pub struct UnarchiveConnectAppsRequest {
223    #[prost(string, repeated, tag = "1")]
224    pub rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
225}
226#[derive(Clone, PartialEq, ::prost::Message)]
227pub struct ArchiveConnectAppsResponse {
228    #[prost(string, repeated, tag = "1")]
229    pub rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
230}
231#[derive(Clone, PartialEq, ::prost::Message)]
232pub struct UnarchiveConnectAppsResponse {
233    #[prost(string, repeated, tag = "1")]
234    pub rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
235}
236#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
237#[repr(i32)]
238pub enum SearchConnectAppsSortField {
239    Unspecified = 0,
240    Title = 1,
241    CreatedAt = 2,
242    DisplayName = 3,
243}
244impl SearchConnectAppsSortField {
245    /// String value of the enum field names used in the ProtoBuf definition.
246    ///
247    /// The values are not transformed in any way and thus are considered stable
248    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
249    pub fn as_str_name(&self) -> &'static str {
250        match self {
251            Self::Unspecified => "SEARCH_CONNECT_APPS_SORT_FIELD_UNSPECIFIED",
252            Self::Title => "SEARCH_CONNECT_APPS_SORT_FIELD_TITLE",
253            Self::CreatedAt => "SEARCH_CONNECT_APPS_SORT_FIELD_CREATED_AT",
254            Self::DisplayName => "SEARCH_CONNECT_APPS_SORT_FIELD_DISPLAY_NAME",
255        }
256    }
257    /// Creates an enum from field names used in the ProtoBuf definition.
258    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
259        match value {
260            "SEARCH_CONNECT_APPS_SORT_FIELD_UNSPECIFIED" => Some(Self::Unspecified),
261            "SEARCH_CONNECT_APPS_SORT_FIELD_TITLE" => Some(Self::Title),
262            "SEARCH_CONNECT_APPS_SORT_FIELD_CREATED_AT" => Some(Self::CreatedAt),
263            "SEARCH_CONNECT_APPS_SORT_FIELD_DISPLAY_NAME" => Some(Self::DisplayName),
264            _ => None,
265        }
266    }
267}
268#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
269#[repr(i32)]
270pub enum ConnectAppsServiceError {
271    Unspecified = 0,
272    AppNotFound = 1,
273    CommitNotFound = 2,
274    CannotCommitToArchivedConnectApp = 3,
275    InvalidSearchToken = 4,
276    MissingBundle = 5,
277}
278impl ConnectAppsServiceError {
279    /// String value of the enum field names used in the ProtoBuf definition.
280    ///
281    /// The values are not transformed in any way and thus are considered stable
282    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
283    pub fn as_str_name(&self) -> &'static str {
284        match self {
285            Self::Unspecified => "CONNECT_APPS_SERVICE_ERROR_UNSPECIFIED",
286            Self::AppNotFound => "CONNECT_APPS_SERVICE_ERROR_APP_NOT_FOUND",
287            Self::CommitNotFound => "CONNECT_APPS_SERVICE_ERROR_COMMIT_NOT_FOUND",
288            Self::CannotCommitToArchivedConnectApp => {
289                "CONNECT_APPS_SERVICE_ERROR_CANNOT_COMMIT_TO_ARCHIVED_CONNECT_APP"
290            }
291            Self::InvalidSearchToken => "CONNECT_APPS_SERVICE_ERROR_INVALID_SEARCH_TOKEN",
292            Self::MissingBundle => "CONNECT_APPS_SERVICE_ERROR_MISSING_BUNDLE",
293        }
294    }
295    /// Creates an enum from field names used in the ProtoBuf definition.
296    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
297        match value {
298            "CONNECT_APPS_SERVICE_ERROR_UNSPECIFIED" => Some(Self::Unspecified),
299            "CONNECT_APPS_SERVICE_ERROR_APP_NOT_FOUND" => Some(Self::AppNotFound),
300            "CONNECT_APPS_SERVICE_ERROR_COMMIT_NOT_FOUND" => Some(Self::CommitNotFound),
301            "CONNECT_APPS_SERVICE_ERROR_CANNOT_COMMIT_TO_ARCHIVED_CONNECT_APP" => {
302                Some(Self::CannotCommitToArchivedConnectApp)
303            }
304            "CONNECT_APPS_SERVICE_ERROR_INVALID_SEARCH_TOKEN" => {
305                Some(Self::InvalidSearchToken)
306            }
307            "CONNECT_APPS_SERVICE_ERROR_MISSING_BUNDLE" => Some(Self::MissingBundle),
308            _ => None,
309        }
310    }
311}
312/// Generated client implementations.
313pub mod connect_apps_service_client {
314    #![allow(
315        unused_variables,
316        dead_code,
317        missing_docs,
318        clippy::wildcard_imports,
319        clippy::let_unit_value,
320    )]
321    use tonic::codegen::*;
322    use tonic::codegen::http::Uri;
323    #[derive(Debug, Clone)]
324    pub struct ConnectAppsServiceClient<T> {
325        inner: tonic::client::Grpc<T>,
326    }
327    impl ConnectAppsServiceClient<tonic::transport::Channel> {
328        /// Attempt to create a new client by connecting to a given endpoint.
329        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
330        where
331            D: TryInto<tonic::transport::Endpoint>,
332            D::Error: Into<StdError>,
333        {
334            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
335            Ok(Self::new(conn))
336        }
337    }
338    impl<T> ConnectAppsServiceClient<T>
339    where
340        T: tonic::client::GrpcService<tonic::body::Body>,
341        T::Error: Into<StdError>,
342        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
343        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
344    {
345        pub fn new(inner: T) -> Self {
346            let inner = tonic::client::Grpc::new(inner);
347            Self { inner }
348        }
349        pub fn with_origin(inner: T, origin: Uri) -> Self {
350            let inner = tonic::client::Grpc::with_origin(inner, origin);
351            Self { inner }
352        }
353        pub fn with_interceptor<F>(
354            inner: T,
355            interceptor: F,
356        ) -> ConnectAppsServiceClient<InterceptedService<T, F>>
357        where
358            F: tonic::service::Interceptor,
359            T::ResponseBody: Default,
360            T: tonic::codegen::Service<
361                http::Request<tonic::body::Body>,
362                Response = http::Response<
363                    <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
364                >,
365            >,
366            <T as tonic::codegen::Service<
367                http::Request<tonic::body::Body>,
368            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
369        {
370            ConnectAppsServiceClient::new(InterceptedService::new(inner, interceptor))
371        }
372        /// Compress requests with the given encoding.
373        ///
374        /// This requires the server to support it otherwise it might respond with an
375        /// error.
376        #[must_use]
377        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
378            self.inner = self.inner.send_compressed(encoding);
379            self
380        }
381        /// Enable decompressing responses.
382        #[must_use]
383        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
384            self.inner = self.inner.accept_compressed(encoding);
385            self
386        }
387        /// Limits the maximum size of a decoded message.
388        ///
389        /// Default: `4MB`
390        #[must_use]
391        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
392            self.inner = self.inner.max_decoding_message_size(limit);
393            self
394        }
395        /// Limits the maximum size of an encoded message.
396        ///
397        /// Default: `usize::MAX`
398        #[must_use]
399        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
400            self.inner = self.inner.max_encoding_message_size(limit);
401            self
402        }
403        pub async fn create_connect_app(
404            &mut self,
405            request: impl tonic::IntoRequest<super::CreateConnectAppRequest>,
406        ) -> std::result::Result<
407            tonic::Response<super::CreateConnectAppResponse>,
408            tonic::Status,
409        > {
410            self.inner
411                .ready()
412                .await
413                .map_err(|e| {
414                    tonic::Status::unknown(
415                        format!("Service was not ready: {}", e.into()),
416                    )
417                })?;
418            let codec = tonic::codec::ProstCodec::default();
419            let path = http::uri::PathAndQuery::from_static(
420                "/nominal.connect.v1.ConnectAppsService/CreateConnectApp",
421            );
422            let mut req = request.into_request();
423            req.extensions_mut()
424                .insert(
425                    GrpcMethod::new(
426                        "nominal.connect.v1.ConnectAppsService",
427                        "CreateConnectApp",
428                    ),
429                );
430            self.inner.unary(req, path, codec).await
431        }
432        pub async fn get_connect_app(
433            &mut self,
434            request: impl tonic::IntoRequest<super::GetConnectAppRequest>,
435        ) -> std::result::Result<
436            tonic::Response<super::GetConnectAppResponse>,
437            tonic::Status,
438        > {
439            self.inner
440                .ready()
441                .await
442                .map_err(|e| {
443                    tonic::Status::unknown(
444                        format!("Service was not ready: {}", e.into()),
445                    )
446                })?;
447            let codec = tonic::codec::ProstCodec::default();
448            let path = http::uri::PathAndQuery::from_static(
449                "/nominal.connect.v1.ConnectAppsService/GetConnectApp",
450            );
451            let mut req = request.into_request();
452            req.extensions_mut()
453                .insert(
454                    GrpcMethod::new(
455                        "nominal.connect.v1.ConnectAppsService",
456                        "GetConnectApp",
457                    ),
458                );
459            self.inner.unary(req, path, codec).await
460        }
461        pub async fn update_connect_app_metadata(
462            &mut self,
463            request: impl tonic::IntoRequest<super::UpdateConnectAppMetadataRequest>,
464        ) -> std::result::Result<
465            tonic::Response<super::UpdateConnectAppMetadataResponse>,
466            tonic::Status,
467        > {
468            self.inner
469                .ready()
470                .await
471                .map_err(|e| {
472                    tonic::Status::unknown(
473                        format!("Service was not ready: {}", e.into()),
474                    )
475                })?;
476            let codec = tonic::codec::ProstCodec::default();
477            let path = http::uri::PathAndQuery::from_static(
478                "/nominal.connect.v1.ConnectAppsService/UpdateConnectAppMetadata",
479            );
480            let mut req = request.into_request();
481            req.extensions_mut()
482                .insert(
483                    GrpcMethod::new(
484                        "nominal.connect.v1.ConnectAppsService",
485                        "UpdateConnectAppMetadata",
486                    ),
487                );
488            self.inner.unary(req, path, codec).await
489        }
490        pub async fn commit(
491            &mut self,
492            request: impl tonic::IntoRequest<super::CommitRequest>,
493        ) -> std::result::Result<tonic::Response<super::CommitResponse>, tonic::Status> {
494            self.inner
495                .ready()
496                .await
497                .map_err(|e| {
498                    tonic::Status::unknown(
499                        format!("Service was not ready: {}", e.into()),
500                    )
501                })?;
502            let codec = tonic::codec::ProstCodec::default();
503            let path = http::uri::PathAndQuery::from_static(
504                "/nominal.connect.v1.ConnectAppsService/Commit",
505            );
506            let mut req = request.into_request();
507            req.extensions_mut()
508                .insert(
509                    GrpcMethod::new("nominal.connect.v1.ConnectAppsService", "Commit"),
510                );
511            self.inner.unary(req, path, codec).await
512        }
513        pub async fn search_connect_apps(
514            &mut self,
515            request: impl tonic::IntoRequest<super::SearchConnectAppsRequest>,
516        ) -> std::result::Result<
517            tonic::Response<super::SearchConnectAppsResponse>,
518            tonic::Status,
519        > {
520            self.inner
521                .ready()
522                .await
523                .map_err(|e| {
524                    tonic::Status::unknown(
525                        format!("Service was not ready: {}", e.into()),
526                    )
527                })?;
528            let codec = tonic::codec::ProstCodec::default();
529            let path = http::uri::PathAndQuery::from_static(
530                "/nominal.connect.v1.ConnectAppsService/SearchConnectApps",
531            );
532            let mut req = request.into_request();
533            req.extensions_mut()
534                .insert(
535                    GrpcMethod::new(
536                        "nominal.connect.v1.ConnectAppsService",
537                        "SearchConnectApps",
538                    ),
539                );
540            self.inner.unary(req, path, codec).await
541        }
542        pub async fn archive_connect_apps(
543            &mut self,
544            request: impl tonic::IntoRequest<super::ArchiveConnectAppsRequest>,
545        ) -> std::result::Result<
546            tonic::Response<super::ArchiveConnectAppsResponse>,
547            tonic::Status,
548        > {
549            self.inner
550                .ready()
551                .await
552                .map_err(|e| {
553                    tonic::Status::unknown(
554                        format!("Service was not ready: {}", e.into()),
555                    )
556                })?;
557            let codec = tonic::codec::ProstCodec::default();
558            let path = http::uri::PathAndQuery::from_static(
559                "/nominal.connect.v1.ConnectAppsService/ArchiveConnectApps",
560            );
561            let mut req = request.into_request();
562            req.extensions_mut()
563                .insert(
564                    GrpcMethod::new(
565                        "nominal.connect.v1.ConnectAppsService",
566                        "ArchiveConnectApps",
567                    ),
568                );
569            self.inner.unary(req, path, codec).await
570        }
571        pub async fn unarchive_connect_apps(
572            &mut self,
573            request: impl tonic::IntoRequest<super::UnarchiveConnectAppsRequest>,
574        ) -> std::result::Result<
575            tonic::Response<super::UnarchiveConnectAppsResponse>,
576            tonic::Status,
577        > {
578            self.inner
579                .ready()
580                .await
581                .map_err(|e| {
582                    tonic::Status::unknown(
583                        format!("Service was not ready: {}", e.into()),
584                    )
585                })?;
586            let codec = tonic::codec::ProstCodec::default();
587            let path = http::uri::PathAndQuery::from_static(
588                "/nominal.connect.v1.ConnectAppsService/UnarchiveConnectApps",
589            );
590            let mut req = request.into_request();
591            req.extensions_mut()
592                .insert(
593                    GrpcMethod::new(
594                        "nominal.connect.v1.ConnectAppsService",
595                        "UnarchiveConnectApps",
596                    ),
597                );
598            self.inner.unary(req, path, codec).await
599        }
600        pub async fn get_connect_app_bundle_download_url(
601            &mut self,
602            request: impl tonic::IntoRequest<
603                super::GetConnectAppBundleDownloadUrlRequest,
604            >,
605        ) -> std::result::Result<
606            tonic::Response<super::GetConnectAppBundleDownloadUrlResponse>,
607            tonic::Status,
608        > {
609            self.inner
610                .ready()
611                .await
612                .map_err(|e| {
613                    tonic::Status::unknown(
614                        format!("Service was not ready: {}", e.into()),
615                    )
616                })?;
617            let codec = tonic::codec::ProstCodec::default();
618            let path = http::uri::PathAndQuery::from_static(
619                "/nominal.connect.v1.ConnectAppsService/GetConnectAppBundleDownloadUrl",
620            );
621            let mut req = request.into_request();
622            req.extensions_mut()
623                .insert(
624                    GrpcMethod::new(
625                        "nominal.connect.v1.ConnectAppsService",
626                        "GetConnectAppBundleDownloadUrl",
627                    ),
628                );
629            self.inner.unary(req, path, codec).await
630        }
631    }
632}