Skip to main content

nominal_api_proto/proto/
nominal.mesh.v1.rs

1// This file is @generated by prost-build.
2#[derive(Clone, PartialEq, ::prost::Message)]
3pub struct MeshFlag {
4    #[prost(string, tag = "1")]
5    pub rid: ::prost::alloc::string::String,
6    #[prost(string, tag = "2")]
7    pub workspace_rid: ::prost::alloc::string::String,
8    #[prost(string, tag = "3")]
9    pub name: ::prost::alloc::string::String,
10}
11#[derive(Clone, PartialEq, ::prost::Message)]
12pub struct MeshFlagRidSet {
13    #[prost(string, repeated, tag = "1")]
14    pub flag_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
15}
16#[derive(Clone, PartialEq, ::prost::Message)]
17pub struct CreateMeshFlagRequest {
18    #[prost(message, optional, tag = "1")]
19    pub mesh_flag: ::core::option::Option<MeshFlag>,
20}
21#[derive(Clone, PartialEq, ::prost::Message)]
22pub struct CreateMeshFlagResponse {
23    #[prost(message, optional, tag = "1")]
24    pub mesh_flag: ::core::option::Option<MeshFlag>,
25}
26/// Generated client implementations.
27pub mod mesh_flag_service_client {
28    #![allow(
29        unused_variables,
30        dead_code,
31        missing_docs,
32        clippy::wildcard_imports,
33        clippy::let_unit_value,
34    )]
35    use tonic::codegen::*;
36    use tonic::codegen::http::Uri;
37    #[derive(Debug, Clone)]
38    pub struct MeshFlagServiceClient<T> {
39        inner: tonic::client::Grpc<T>,
40    }
41    impl MeshFlagServiceClient<tonic::transport::Channel> {
42        /// Attempt to create a new client by connecting to a given endpoint.
43        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
44        where
45            D: TryInto<tonic::transport::Endpoint>,
46            D::Error: Into<StdError>,
47        {
48            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
49            Ok(Self::new(conn))
50        }
51    }
52    impl<T> MeshFlagServiceClient<T>
53    where
54        T: tonic::client::GrpcService<tonic::body::Body>,
55        T::Error: Into<StdError>,
56        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
57        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
58    {
59        pub fn new(inner: T) -> Self {
60            let inner = tonic::client::Grpc::new(inner);
61            Self { inner }
62        }
63        pub fn with_origin(inner: T, origin: Uri) -> Self {
64            let inner = tonic::client::Grpc::with_origin(inner, origin);
65            Self { inner }
66        }
67        pub fn with_interceptor<F>(
68            inner: T,
69            interceptor: F,
70        ) -> MeshFlagServiceClient<InterceptedService<T, F>>
71        where
72            F: tonic::service::Interceptor,
73            T::ResponseBody: Default,
74            T: tonic::codegen::Service<
75                http::Request<tonic::body::Body>,
76                Response = http::Response<
77                    <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
78                >,
79            >,
80            <T as tonic::codegen::Service<
81                http::Request<tonic::body::Body>,
82            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
83        {
84            MeshFlagServiceClient::new(InterceptedService::new(inner, interceptor))
85        }
86        /// Compress requests with the given encoding.
87        ///
88        /// This requires the server to support it otherwise it might respond with an
89        /// error.
90        #[must_use]
91        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
92            self.inner = self.inner.send_compressed(encoding);
93            self
94        }
95        /// Enable decompressing responses.
96        #[must_use]
97        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
98            self.inner = self.inner.accept_compressed(encoding);
99            self
100        }
101        /// Limits the maximum size of a decoded message.
102        ///
103        /// Default: `4MB`
104        #[must_use]
105        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
106            self.inner = self.inner.max_decoding_message_size(limit);
107            self
108        }
109        /// Limits the maximum size of an encoded message.
110        ///
111        /// Default: `usize::MAX`
112        #[must_use]
113        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
114            self.inner = self.inner.max_encoding_message_size(limit);
115            self
116        }
117        pub async fn create_mesh_flag(
118            &mut self,
119            request: impl tonic::IntoRequest<super::CreateMeshFlagRequest>,
120        ) -> std::result::Result<
121            tonic::Response<super::CreateMeshFlagResponse>,
122            tonic::Status,
123        > {
124            self.inner
125                .ready()
126                .await
127                .map_err(|e| {
128                    tonic::Status::unknown(
129                        format!("Service was not ready: {}", e.into()),
130                    )
131                })?;
132            let codec = tonic::codec::ProstCodec::default();
133            let path = http::uri::PathAndQuery::from_static(
134                "/nominal.mesh.v1.MeshFlagService/CreateMeshFlag",
135            );
136            let mut req = request.into_request();
137            req.extensions_mut()
138                .insert(
139                    GrpcMethod::new("nominal.mesh.v1.MeshFlagService", "CreateMeshFlag"),
140                );
141            self.inner.unary(req, path, codec).await
142        }
143    }
144}
145#[derive(Clone, PartialEq, ::prost::Message)]
146pub struct MeshArtifact {
147    #[prost(string, tag = "1")]
148    pub artifact_rid: ::prost::alloc::string::String,
149    #[prost(string, repeated, tag = "2")]
150    pub flag_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
151}
152#[derive(Clone, PartialEq, ::prost::Message)]
153pub struct CreateMeshArtifactRequest {
154    #[prost(message, optional, tag = "1")]
155    pub mesh_artifact: ::core::option::Option<MeshArtifact>,
156}
157#[derive(Clone, PartialEq, ::prost::Message)]
158pub struct CreateMeshArtifactResponse {
159    #[prost(message, optional, tag = "1")]
160    pub mesh_artifact: ::core::option::Option<MeshArtifact>,
161}
162#[derive(Clone, PartialEq, ::prost::Message)]
163pub struct UpdateMeshArtifactRequest {
164    #[prost(string, tag = "1")]
165    pub artifact_rid: ::prost::alloc::string::String,
166    #[prost(message, optional, tag = "2")]
167    pub flag_rids: ::core::option::Option<MeshFlagRidSet>,
168}
169#[derive(Clone, PartialEq, ::prost::Message)]
170pub struct UpdateMeshArtifactResponse {
171    #[prost(message, optional, tag = "1")]
172    pub mesh_artifact: ::core::option::Option<MeshArtifact>,
173}
174/// Generated client implementations.
175pub mod mesh_artifact_service_client {
176    #![allow(
177        unused_variables,
178        dead_code,
179        missing_docs,
180        clippy::wildcard_imports,
181        clippy::let_unit_value,
182    )]
183    use tonic::codegen::*;
184    use tonic::codegen::http::Uri;
185    #[derive(Debug, Clone)]
186    pub struct MeshArtifactServiceClient<T> {
187        inner: tonic::client::Grpc<T>,
188    }
189    impl MeshArtifactServiceClient<tonic::transport::Channel> {
190        /// Attempt to create a new client by connecting to a given endpoint.
191        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
192        where
193            D: TryInto<tonic::transport::Endpoint>,
194            D::Error: Into<StdError>,
195        {
196            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
197            Ok(Self::new(conn))
198        }
199    }
200    impl<T> MeshArtifactServiceClient<T>
201    where
202        T: tonic::client::GrpcService<tonic::body::Body>,
203        T::Error: Into<StdError>,
204        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
205        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
206    {
207        pub fn new(inner: T) -> Self {
208            let inner = tonic::client::Grpc::new(inner);
209            Self { inner }
210        }
211        pub fn with_origin(inner: T, origin: Uri) -> Self {
212            let inner = tonic::client::Grpc::with_origin(inner, origin);
213            Self { inner }
214        }
215        pub fn with_interceptor<F>(
216            inner: T,
217            interceptor: F,
218        ) -> MeshArtifactServiceClient<InterceptedService<T, F>>
219        where
220            F: tonic::service::Interceptor,
221            T::ResponseBody: Default,
222            T: tonic::codegen::Service<
223                http::Request<tonic::body::Body>,
224                Response = http::Response<
225                    <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
226                >,
227            >,
228            <T as tonic::codegen::Service<
229                http::Request<tonic::body::Body>,
230            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
231        {
232            MeshArtifactServiceClient::new(InterceptedService::new(inner, interceptor))
233        }
234        /// Compress requests with the given encoding.
235        ///
236        /// This requires the server to support it otherwise it might respond with an
237        /// error.
238        #[must_use]
239        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
240            self.inner = self.inner.send_compressed(encoding);
241            self
242        }
243        /// Enable decompressing responses.
244        #[must_use]
245        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
246            self.inner = self.inner.accept_compressed(encoding);
247            self
248        }
249        /// Limits the maximum size of a decoded message.
250        ///
251        /// Default: `4MB`
252        #[must_use]
253        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
254            self.inner = self.inner.max_decoding_message_size(limit);
255            self
256        }
257        /// Limits the maximum size of an encoded message.
258        ///
259        /// Default: `usize::MAX`
260        #[must_use]
261        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
262            self.inner = self.inner.max_encoding_message_size(limit);
263            self
264        }
265        pub async fn create_mesh_artifact(
266            &mut self,
267            request: impl tonic::IntoRequest<super::CreateMeshArtifactRequest>,
268        ) -> std::result::Result<
269            tonic::Response<super::CreateMeshArtifactResponse>,
270            tonic::Status,
271        > {
272            self.inner
273                .ready()
274                .await
275                .map_err(|e| {
276                    tonic::Status::unknown(
277                        format!("Service was not ready: {}", e.into()),
278                    )
279                })?;
280            let codec = tonic::codec::ProstCodec::default();
281            let path = http::uri::PathAndQuery::from_static(
282                "/nominal.mesh.v1.MeshArtifactService/CreateMeshArtifact",
283            );
284            let mut req = request.into_request();
285            req.extensions_mut()
286                .insert(
287                    GrpcMethod::new(
288                        "nominal.mesh.v1.MeshArtifactService",
289                        "CreateMeshArtifact",
290                    ),
291                );
292            self.inner.unary(req, path, codec).await
293        }
294        pub async fn update_mesh_artifact(
295            &mut self,
296            request: impl tonic::IntoRequest<super::UpdateMeshArtifactRequest>,
297        ) -> std::result::Result<
298            tonic::Response<super::UpdateMeshArtifactResponse>,
299            tonic::Status,
300        > {
301            self.inner
302                .ready()
303                .await
304                .map_err(|e| {
305                    tonic::Status::unknown(
306                        format!("Service was not ready: {}", e.into()),
307                    )
308                })?;
309            let codec = tonic::codec::ProstCodec::default();
310            let path = http::uri::PathAndQuery::from_static(
311                "/nominal.mesh.v1.MeshArtifactService/UpdateMeshArtifact",
312            );
313            let mut req = request.into_request();
314            req.extensions_mut()
315                .insert(
316                    GrpcMethod::new(
317                        "nominal.mesh.v1.MeshArtifactService",
318                        "UpdateMeshArtifact",
319                    ),
320                );
321            self.inner.unary(req, path, codec).await
322        }
323    }
324}
325#[derive(Clone, PartialEq, ::prost::Message)]
326pub struct MeshFieldTag {
327    #[prost(int64, tag = "1")]
328    pub sum: i64,
329    #[prost(int64, tag = "2")]
330    pub hlc_wall_millis: i64,
331    #[prost(int32, tag = "3")]
332    pub hlc_logical_counter: i32,
333    #[prost(string, tag = "4")]
334    pub author_workspace_uuid: ::prost::alloc::string::String,
335    #[prost(int64, tag = "5")]
336    pub author_counter: i64,
337}
338#[derive(Clone, PartialEq, ::prost::Message)]
339pub struct MeshTaggedString {
340    #[prost(message, optional, tag = "1")]
341    pub tag: ::core::option::Option<MeshFieldTag>,
342    #[prost(string, optional, tag = "2")]
343    pub value: ::core::option::Option<::prost::alloc::string::String>,
344}
345#[derive(Clone, PartialEq, ::prost::Message)]
346pub struct MeshPropertyMap {
347    #[prost(map = "string, message", tag = "1")]
348    pub elements: ::std::collections::HashMap<
349        ::prost::alloc::string::String,
350        MeshPropertyElement,
351    >,
352}
353#[derive(Clone, PartialEq, ::prost::Message)]
354pub struct MeshPropertyElement {
355    #[prost(message, optional, tag = "1")]
356    pub tag: ::core::option::Option<MeshFieldTag>,
357    #[prost(message, optional, tag = "2")]
358    pub value: ::core::option::Option<super::super::types::TypedPropertyValue>,
359}
360#[derive(Clone, PartialEq, ::prost::Message)]
361pub struct MeshLabelSet {
362    #[prost(map = "string, message", tag = "1")]
363    pub elements: ::std::collections::HashMap<
364        ::prost::alloc::string::String,
365        MeshFieldTag,
366    >,
367}
368#[derive(Clone, PartialEq, ::prost::Message)]
369pub struct MeshLinkSet {
370    #[prost(map = "string, message", tag = "1")]
371    pub elements: ::std::collections::HashMap<
372        ::prost::alloc::string::String,
373        MeshLinkElement,
374    >,
375}
376#[derive(Clone, PartialEq, ::prost::Message)]
377pub struct MeshLinkElement {
378    #[prost(message, optional, tag = "1")]
379    pub tag: ::core::option::Option<MeshFieldTag>,
380    #[prost(message, optional, tag = "2")]
381    pub value: ::core::option::Option<MeshLinkValue>,
382}
383#[derive(Clone, PartialEq, ::prost::Message)]
384pub struct MeshLinkValue {
385    #[prost(string, optional, tag = "1")]
386    pub title: ::core::option::Option<::prost::alloc::string::String>,
387}
388#[derive(Clone, PartialEq, ::prost::Message)]
389pub struct MeshAssetPayload {
390    #[prost(message, optional, tag = "1")]
391    pub title: ::core::option::Option<MeshTaggedString>,
392    #[prost(message, optional, tag = "2")]
393    pub description: ::core::option::Option<MeshTaggedString>,
394    #[prost(message, optional, tag = "3")]
395    pub properties: ::core::option::Option<MeshPropertyMap>,
396    #[prost(message, optional, tag = "4")]
397    pub labels: ::core::option::Option<MeshLabelSet>,
398    #[prost(message, optional, tag = "5")]
399    pub links: ::core::option::Option<MeshLinkSet>,
400}
401#[derive(Clone, PartialEq, ::prost::Message)]
402pub struct RemoteConnection {
403    #[prost(string, tag = "1")]
404    pub rid: ::prost::alloc::string::String,
405    #[prost(string, tag = "2")]
406    pub name: ::prost::alloc::string::String,
407    #[prost(string, tag = "3")]
408    pub base_url: ::prost::alloc::string::String,
409    #[prost(string, tag = "4")]
410    pub secret_rid: ::prost::alloc::string::String,
411    #[prost(enumeration = "RemoteConnectionStatus", tag = "5")]
412    pub status: i32,
413    #[prost(message, optional, tag = "6")]
414    pub status_updated_at: ::core::option::Option<
415        super::super::super::google::protobuf::Timestamp,
416    >,
417    #[prost(string, repeated, tag = "7")]
418    pub flag_rids: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
419}
420#[derive(Clone, PartialEq, ::prost::Message)]
421pub struct CreateRemoteConnectionRequest {
422    #[prost(string, tag = "1")]
423    pub name: ::prost::alloc::string::String,
424    #[prost(string, tag = "2")]
425    pub base_url: ::prost::alloc::string::String,
426    #[prost(string, tag = "3")]
427    pub secret_rid: ::prost::alloc::string::String,
428    #[prost(string, tag = "4")]
429    pub workspace_rid: ::prost::alloc::string::String,
430}
431#[derive(Clone, PartialEq, ::prost::Message)]
432pub struct CreateRemoteConnectionResponse {
433    #[prost(message, optional, tag = "1")]
434    pub remote_connection: ::core::option::Option<RemoteConnection>,
435}
436#[derive(Clone, PartialEq, ::prost::Message)]
437pub struct GetRemoteConnectionRequest {
438    #[prost(string, tag = "1")]
439    pub remote_connection_rid: ::prost::alloc::string::String,
440}
441#[derive(Clone, PartialEq, ::prost::Message)]
442pub struct GetRemoteConnectionResponse {
443    #[prost(message, optional, tag = "1")]
444    pub remote_connection: ::core::option::Option<RemoteConnection>,
445}
446#[derive(Clone, PartialEq, ::prost::Message)]
447pub struct UpdateRemoteConnectionRequest {
448    #[prost(string, tag = "1")]
449    pub remote_connection_rid: ::prost::alloc::string::String,
450    #[prost(string, optional, tag = "2")]
451    pub name: ::core::option::Option<::prost::alloc::string::String>,
452    #[prost(string, optional, tag = "3")]
453    pub base_url: ::core::option::Option<::prost::alloc::string::String>,
454    #[prost(string, optional, tag = "4")]
455    pub secret_rid: ::core::option::Option<::prost::alloc::string::String>,
456    #[prost(message, optional, tag = "5")]
457    pub flag_rids: ::core::option::Option<MeshFlagRidSet>,
458}
459#[derive(Clone, PartialEq, ::prost::Message)]
460pub struct UpdateRemoteConnectionResponse {
461    #[prost(message, optional, tag = "1")]
462    pub remote_connection: ::core::option::Option<RemoteConnection>,
463}
464#[derive(Clone, PartialEq, ::prost::Message)]
465pub struct DeleteRemoteConnectionRequest {
466    #[prost(string, tag = "1")]
467    pub remote_connection_rid: ::prost::alloc::string::String,
468}
469#[derive(Clone, Copy, PartialEq, ::prost::Message)]
470pub struct DeleteRemoteConnectionResponse {}
471#[derive(Clone, PartialEq, ::prost::Message)]
472pub struct ListRemoteConnectionsRequest {
473    #[prost(string, tag = "1")]
474    pub workspace_rid: ::prost::alloc::string::String,
475    #[prost(int32, tag = "2")]
476    pub page_size: i32,
477    #[prost(string, optional, tag = "3")]
478    pub page_token: ::core::option::Option<::prost::alloc::string::String>,
479}
480#[derive(Clone, PartialEq, ::prost::Message)]
481pub struct ListRemoteConnectionsResponse {
482    #[prost(message, repeated, tag = "1")]
483    pub remote_connections: ::prost::alloc::vec::Vec<RemoteConnection>,
484    #[prost(string, optional, tag = "2")]
485    pub next_page_token: ::core::option::Option<::prost::alloc::string::String>,
486}
487#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
488#[repr(i32)]
489pub enum RemoteConnectionStatus {
490    Unspecified = 0,
491    Online = 1,
492    Offline = 2,
493}
494impl RemoteConnectionStatus {
495    /// String value of the enum field names used in the ProtoBuf definition.
496    ///
497    /// The values are not transformed in any way and thus are considered stable
498    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
499    pub fn as_str_name(&self) -> &'static str {
500        match self {
501            Self::Unspecified => "REMOTE_CONNECTION_STATUS_UNSPECIFIED",
502            Self::Online => "REMOTE_CONNECTION_STATUS_ONLINE",
503            Self::Offline => "REMOTE_CONNECTION_STATUS_OFFLINE",
504        }
505    }
506    /// Creates an enum from field names used in the ProtoBuf definition.
507    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
508        match value {
509            "REMOTE_CONNECTION_STATUS_UNSPECIFIED" => Some(Self::Unspecified),
510            "REMOTE_CONNECTION_STATUS_ONLINE" => Some(Self::Online),
511            "REMOTE_CONNECTION_STATUS_OFFLINE" => Some(Self::Offline),
512            _ => None,
513        }
514    }
515}
516#[derive(Clone, PartialEq, ::prost::Message)]
517pub struct Link {
518    #[prost(string, tag = "1")]
519    pub rid: ::prost::alloc::string::String,
520    #[prost(string, tag = "2")]
521    pub local_resource_rid: ::prost::alloc::string::String,
522    #[prost(string, tag = "3")]
523    pub remote_resource_rid: ::prost::alloc::string::String,
524    #[prost(string, tag = "4")]
525    pub remote_connection_rid: ::prost::alloc::string::String,
526    #[prost(bool, tag = "5")]
527    pub enabled: bool,
528    #[prost(enumeration = "ResourceType", tag = "6")]
529    pub resource_type: i32,
530}
531#[derive(Clone, PartialEq, ::prost::Message)]
532pub struct CreateLinkRequest {
533    #[prost(string, tag = "1")]
534    pub local_resource_rid: ::prost::alloc::string::String,
535    #[prost(string, tag = "2")]
536    pub remote_resource_rid: ::prost::alloc::string::String,
537    #[prost(string, tag = "3")]
538    pub remote_connection_rid: ::prost::alloc::string::String,
539    #[prost(bool, tag = "4")]
540    pub enabled: bool,
541    #[prost(enumeration = "ResourceType", tag = "5")]
542    pub resource_type: i32,
543    #[prost(string, tag = "6")]
544    pub workspace_rid: ::prost::alloc::string::String,
545}
546#[derive(Clone, Copy, PartialEq, ::prost::Message)]
547pub struct CreateLinkResponse {}
548#[derive(Clone, PartialEq, ::prost::Message)]
549pub struct GetLinkRequest {
550    #[prost(string, tag = "1")]
551    pub link_rid: ::prost::alloc::string::String,
552}
553#[derive(Clone, PartialEq, ::prost::Message)]
554pub struct GetLinkResponse {
555    #[prost(message, optional, tag = "1")]
556    pub link: ::core::option::Option<Link>,
557}
558#[derive(Clone, PartialEq, ::prost::Message)]
559pub struct UpdateLinkRequest {
560    #[prost(string, tag = "1")]
561    pub link_rid: ::prost::alloc::string::String,
562    #[prost(string, optional, tag = "2")]
563    pub remote_connection_rid: ::core::option::Option<::prost::alloc::string::String>,
564    #[prost(bool, optional, tag = "3")]
565    pub enabled: ::core::option::Option<bool>,
566    #[prost(string, optional, tag = "4")]
567    pub remote_resource_rid: ::core::option::Option<::prost::alloc::string::String>,
568}
569#[derive(Clone, PartialEq, ::prost::Message)]
570pub struct UpdateLinkResponse {
571    #[prost(message, optional, tag = "1")]
572    pub link: ::core::option::Option<Link>,
573}
574#[derive(Clone, PartialEq, ::prost::Message)]
575pub struct DeleteLinkRequest {
576    #[prost(string, tag = "1")]
577    pub link_rid: ::prost::alloc::string::String,
578}
579#[derive(Clone, Copy, PartialEq, ::prost::Message)]
580pub struct DeleteLinkResponse {}
581#[derive(Clone, PartialEq, ::prost::Message)]
582pub struct SearchLinksRequest {
583    #[prost(string, tag = "1")]
584    pub workspace_rid: ::prost::alloc::string::String,
585    #[prost(int32, tag = "2")]
586    pub page_size: i32,
587    #[prost(bool, optional, tag = "3")]
588    pub enabled: ::core::option::Option<bool>,
589    #[prost(enumeration = "ResourceType", optional, tag = "4")]
590    pub resource_type: ::core::option::Option<i32>,
591    #[prost(string, optional, tag = "5")]
592    pub local_resource_rid: ::core::option::Option<::prost::alloc::string::String>,
593    #[prost(string, optional, tag = "6")]
594    pub remote_connection_rid: ::core::option::Option<::prost::alloc::string::String>,
595    #[prost(string, optional, tag = "7")]
596    pub page_token: ::core::option::Option<::prost::alloc::string::String>,
597}
598#[derive(Clone, PartialEq, ::prost::Message)]
599pub struct SearchLinksResponse {
600    #[prost(message, repeated, tag = "1")]
601    pub links: ::prost::alloc::vec::Vec<Link>,
602    #[prost(string, optional, tag = "2")]
603    pub next_page_token: ::core::option::Option<::prost::alloc::string::String>,
604}
605#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
606#[repr(i32)]
607pub enum ResourceType {
608    Unspecified = 0,
609    Dataset = 1,
610}
611impl ResourceType {
612    /// String value of the enum field names used in the ProtoBuf definition.
613    ///
614    /// The values are not transformed in any way and thus are considered stable
615    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
616    pub fn as_str_name(&self) -> &'static str {
617        match self {
618            Self::Unspecified => "RESOURCE_TYPE_UNSPECIFIED",
619            Self::Dataset => "RESOURCE_TYPE_DATASET",
620        }
621    }
622    /// Creates an enum from field names used in the ProtoBuf definition.
623    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
624        match value {
625            "RESOURCE_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
626            "RESOURCE_TYPE_DATASET" => Some(Self::Dataset),
627            _ => None,
628        }
629    }
630}
631#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
632#[repr(i32)]
633pub enum MeshServiceError {
634    LinkNotFound = 0,
635    LinkAlreadyExists = 1,
636    RemoteConnectionNotFound = 2,
637    RemoteConnectionAlreadyExists = 3,
638    RemoteConnectionHasDependentLinks = 4,
639    InvalidApiToken = 5,
640    FlagAlreadyExists = 6,
641    FlagNotFound = 7,
642    ArtifactNotFound = 8,
643    UnsupportedArtifactType = 9,
644}
645impl MeshServiceError {
646    /// String value of the enum field names used in the ProtoBuf definition.
647    ///
648    /// The values are not transformed in any way and thus are considered stable
649    /// (if the ProtoBuf definition does not change) and safe for programmatic use.
650    pub fn as_str_name(&self) -> &'static str {
651        match self {
652            Self::LinkNotFound => "MESH_SERVICE_ERROR_LINK_NOT_FOUND",
653            Self::LinkAlreadyExists => "MESH_SERVICE_ERROR_LINK_ALREADY_EXISTS",
654            Self::RemoteConnectionNotFound => {
655                "MESH_SERVICE_ERROR_REMOTE_CONNECTION_NOT_FOUND"
656            }
657            Self::RemoteConnectionAlreadyExists => {
658                "MESH_SERVICE_ERROR_REMOTE_CONNECTION_ALREADY_EXISTS"
659            }
660            Self::RemoteConnectionHasDependentLinks => {
661                "MESH_SERVICE_ERROR_REMOTE_CONNECTION_HAS_DEPENDENT_LINKS"
662            }
663            Self::InvalidApiToken => "MESH_SERVICE_ERROR_INVALID_API_TOKEN",
664            Self::FlagAlreadyExists => "MESH_SERVICE_ERROR_FLAG_ALREADY_EXISTS",
665            Self::FlagNotFound => "MESH_SERVICE_ERROR_FLAG_NOT_FOUND",
666            Self::ArtifactNotFound => "MESH_SERVICE_ERROR_ARTIFACT_NOT_FOUND",
667            Self::UnsupportedArtifactType => {
668                "MESH_SERVICE_ERROR_UNSUPPORTED_ARTIFACT_TYPE"
669            }
670        }
671    }
672    /// Creates an enum from field names used in the ProtoBuf definition.
673    pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
674        match value {
675            "MESH_SERVICE_ERROR_LINK_NOT_FOUND" => Some(Self::LinkNotFound),
676            "MESH_SERVICE_ERROR_LINK_ALREADY_EXISTS" => Some(Self::LinkAlreadyExists),
677            "MESH_SERVICE_ERROR_REMOTE_CONNECTION_NOT_FOUND" => {
678                Some(Self::RemoteConnectionNotFound)
679            }
680            "MESH_SERVICE_ERROR_REMOTE_CONNECTION_ALREADY_EXISTS" => {
681                Some(Self::RemoteConnectionAlreadyExists)
682            }
683            "MESH_SERVICE_ERROR_REMOTE_CONNECTION_HAS_DEPENDENT_LINKS" => {
684                Some(Self::RemoteConnectionHasDependentLinks)
685            }
686            "MESH_SERVICE_ERROR_INVALID_API_TOKEN" => Some(Self::InvalidApiToken),
687            "MESH_SERVICE_ERROR_FLAG_ALREADY_EXISTS" => Some(Self::FlagAlreadyExists),
688            "MESH_SERVICE_ERROR_FLAG_NOT_FOUND" => Some(Self::FlagNotFound),
689            "MESH_SERVICE_ERROR_ARTIFACT_NOT_FOUND" => Some(Self::ArtifactNotFound),
690            "MESH_SERVICE_ERROR_UNSUPPORTED_ARTIFACT_TYPE" => {
691                Some(Self::UnsupportedArtifactType)
692            }
693            _ => None,
694        }
695    }
696}
697#[derive(Clone, PartialEq, ::prost::Message)]
698pub struct MeshRequest {
699    #[prost(oneof = "mesh_request::Request", tags = "1, 2")]
700    pub request: ::core::option::Option<mesh_request::Request>,
701}
702/// Nested message and enum types in `MeshRequest`.
703pub mod mesh_request {
704    #[derive(Clone, PartialEq, ::prost::Oneof)]
705    pub enum Request {
706        #[prost(message, tag = "1")]
707        DataStream(super::DataStreamRequest),
708        #[prost(message, tag = "2")]
709        FileIngest(super::FileIngestRequest),
710    }
711}
712#[derive(Clone, Copy, PartialEq, ::prost::Message)]
713pub struct MeshResponse {}
714#[derive(Clone, PartialEq, ::prost::Message)]
715pub struct DataStreamRequest {
716    #[prost(message, repeated, tag = "1")]
717    pub write_batches_request: ::prost::alloc::vec::Vec<
718        super::super::direct_channel_writer::v2::InternalWriteBatchesRequest,
719    >,
720}
721#[derive(Clone, PartialEq, ::prost::Message)]
722pub struct FileIngestRequest {
723    #[prost(bytes = "vec", tag = "1")]
724    pub ingest_request: ::prost::alloc::vec::Vec<u8>,
725}
726#[derive(Clone, Copy, PartialEq, ::prost::Message)]
727pub struct HealthCheckRequest {}
728#[derive(Clone, Copy, PartialEq, ::prost::Message)]
729pub struct HealthCheckResponse {}
730/// Generated client implementations.
731pub mod mesh_service_client {
732    #![allow(
733        unused_variables,
734        dead_code,
735        missing_docs,
736        clippy::wildcard_imports,
737        clippy::let_unit_value,
738    )]
739    use tonic::codegen::*;
740    use tonic::codegen::http::Uri;
741    #[derive(Debug, Clone)]
742    pub struct MeshServiceClient<T> {
743        inner: tonic::client::Grpc<T>,
744    }
745    impl MeshServiceClient<tonic::transport::Channel> {
746        /// Attempt to create a new client by connecting to a given endpoint.
747        pub async fn connect<D>(dst: D) -> Result<Self, tonic::transport::Error>
748        where
749            D: TryInto<tonic::transport::Endpoint>,
750            D::Error: Into<StdError>,
751        {
752            let conn = tonic::transport::Endpoint::new(dst)?.connect().await?;
753            Ok(Self::new(conn))
754        }
755    }
756    impl<T> MeshServiceClient<T>
757    where
758        T: tonic::client::GrpcService<tonic::body::Body>,
759        T::Error: Into<StdError>,
760        T::ResponseBody: Body<Data = Bytes> + std::marker::Send + 'static,
761        <T::ResponseBody as Body>::Error: Into<StdError> + std::marker::Send,
762    {
763        pub fn new(inner: T) -> Self {
764            let inner = tonic::client::Grpc::new(inner);
765            Self { inner }
766        }
767        pub fn with_origin(inner: T, origin: Uri) -> Self {
768            let inner = tonic::client::Grpc::with_origin(inner, origin);
769            Self { inner }
770        }
771        pub fn with_interceptor<F>(
772            inner: T,
773            interceptor: F,
774        ) -> MeshServiceClient<InterceptedService<T, F>>
775        where
776            F: tonic::service::Interceptor,
777            T::ResponseBody: Default,
778            T: tonic::codegen::Service<
779                http::Request<tonic::body::Body>,
780                Response = http::Response<
781                    <T as tonic::client::GrpcService<tonic::body::Body>>::ResponseBody,
782                >,
783            >,
784            <T as tonic::codegen::Service<
785                http::Request<tonic::body::Body>,
786            >>::Error: Into<StdError> + std::marker::Send + std::marker::Sync,
787        {
788            MeshServiceClient::new(InterceptedService::new(inner, interceptor))
789        }
790        /// Compress requests with the given encoding.
791        ///
792        /// This requires the server to support it otherwise it might respond with an
793        /// error.
794        #[must_use]
795        pub fn send_compressed(mut self, encoding: CompressionEncoding) -> Self {
796            self.inner = self.inner.send_compressed(encoding);
797            self
798        }
799        /// Enable decompressing responses.
800        #[must_use]
801        pub fn accept_compressed(mut self, encoding: CompressionEncoding) -> Self {
802            self.inner = self.inner.accept_compressed(encoding);
803            self
804        }
805        /// Limits the maximum size of a decoded message.
806        ///
807        /// Default: `4MB`
808        #[must_use]
809        pub fn max_decoding_message_size(mut self, limit: usize) -> Self {
810            self.inner = self.inner.max_decoding_message_size(limit);
811            self
812        }
813        /// Limits the maximum size of an encoded message.
814        ///
815        /// Default: `usize::MAX`
816        #[must_use]
817        pub fn max_encoding_message_size(mut self, limit: usize) -> Self {
818            self.inner = self.inner.max_encoding_message_size(limit);
819            self
820        }
821        pub async fn mesh(
822            &mut self,
823            request: impl tonic::IntoRequest<super::MeshRequest>,
824        ) -> std::result::Result<tonic::Response<super::MeshResponse>, tonic::Status> {
825            self.inner
826                .ready()
827                .await
828                .map_err(|e| {
829                    tonic::Status::unknown(
830                        format!("Service was not ready: {}", e.into()),
831                    )
832                })?;
833            let codec = tonic::codec::ProstCodec::default();
834            let path = http::uri::PathAndQuery::from_static(
835                "/nominal.mesh.v1.MeshService/Mesh",
836            );
837            let mut req = request.into_request();
838            req.extensions_mut()
839                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "Mesh"));
840            self.inner.unary(req, path, codec).await
841        }
842        pub async fn health_check(
843            &mut self,
844            request: impl tonic::IntoRequest<super::HealthCheckRequest>,
845        ) -> std::result::Result<
846            tonic::Response<super::HealthCheckResponse>,
847            tonic::Status,
848        > {
849            self.inner
850                .ready()
851                .await
852                .map_err(|e| {
853                    tonic::Status::unknown(
854                        format!("Service was not ready: {}", e.into()),
855                    )
856                })?;
857            let codec = tonic::codec::ProstCodec::default();
858            let path = http::uri::PathAndQuery::from_static(
859                "/nominal.mesh.v1.MeshService/HealthCheck",
860            );
861            let mut req = request.into_request();
862            req.extensions_mut()
863                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "HealthCheck"));
864            self.inner.unary(req, path, codec).await
865        }
866        pub async fn create_link(
867            &mut self,
868            request: impl tonic::IntoRequest<super::CreateLinkRequest>,
869        ) -> std::result::Result<
870            tonic::Response<super::CreateLinkResponse>,
871            tonic::Status,
872        > {
873            self.inner
874                .ready()
875                .await
876                .map_err(|e| {
877                    tonic::Status::unknown(
878                        format!("Service was not ready: {}", e.into()),
879                    )
880                })?;
881            let codec = tonic::codec::ProstCodec::default();
882            let path = http::uri::PathAndQuery::from_static(
883                "/nominal.mesh.v1.MeshService/CreateLink",
884            );
885            let mut req = request.into_request();
886            req.extensions_mut()
887                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "CreateLink"));
888            self.inner.unary(req, path, codec).await
889        }
890        pub async fn get_link(
891            &mut self,
892            request: impl tonic::IntoRequest<super::GetLinkRequest>,
893        ) -> std::result::Result<
894            tonic::Response<super::GetLinkResponse>,
895            tonic::Status,
896        > {
897            self.inner
898                .ready()
899                .await
900                .map_err(|e| {
901                    tonic::Status::unknown(
902                        format!("Service was not ready: {}", e.into()),
903                    )
904                })?;
905            let codec = tonic::codec::ProstCodec::default();
906            let path = http::uri::PathAndQuery::from_static(
907                "/nominal.mesh.v1.MeshService/GetLink",
908            );
909            let mut req = request.into_request();
910            req.extensions_mut()
911                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "GetLink"));
912            self.inner.unary(req, path, codec).await
913        }
914        pub async fn update_link(
915            &mut self,
916            request: impl tonic::IntoRequest<super::UpdateLinkRequest>,
917        ) -> std::result::Result<
918            tonic::Response<super::UpdateLinkResponse>,
919            tonic::Status,
920        > {
921            self.inner
922                .ready()
923                .await
924                .map_err(|e| {
925                    tonic::Status::unknown(
926                        format!("Service was not ready: {}", e.into()),
927                    )
928                })?;
929            let codec = tonic::codec::ProstCodec::default();
930            let path = http::uri::PathAndQuery::from_static(
931                "/nominal.mesh.v1.MeshService/UpdateLink",
932            );
933            let mut req = request.into_request();
934            req.extensions_mut()
935                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "UpdateLink"));
936            self.inner.unary(req, path, codec).await
937        }
938        pub async fn delete_link(
939            &mut self,
940            request: impl tonic::IntoRequest<super::DeleteLinkRequest>,
941        ) -> std::result::Result<
942            tonic::Response<super::DeleteLinkResponse>,
943            tonic::Status,
944        > {
945            self.inner
946                .ready()
947                .await
948                .map_err(|e| {
949                    tonic::Status::unknown(
950                        format!("Service was not ready: {}", e.into()),
951                    )
952                })?;
953            let codec = tonic::codec::ProstCodec::default();
954            let path = http::uri::PathAndQuery::from_static(
955                "/nominal.mesh.v1.MeshService/DeleteLink",
956            );
957            let mut req = request.into_request();
958            req.extensions_mut()
959                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "DeleteLink"));
960            self.inner.unary(req, path, codec).await
961        }
962        pub async fn search_links(
963            &mut self,
964            request: impl tonic::IntoRequest<super::SearchLinksRequest>,
965        ) -> std::result::Result<
966            tonic::Response<super::SearchLinksResponse>,
967            tonic::Status,
968        > {
969            self.inner
970                .ready()
971                .await
972                .map_err(|e| {
973                    tonic::Status::unknown(
974                        format!("Service was not ready: {}", e.into()),
975                    )
976                })?;
977            let codec = tonic::codec::ProstCodec::default();
978            let path = http::uri::PathAndQuery::from_static(
979                "/nominal.mesh.v1.MeshService/SearchLinks",
980            );
981            let mut req = request.into_request();
982            req.extensions_mut()
983                .insert(GrpcMethod::new("nominal.mesh.v1.MeshService", "SearchLinks"));
984            self.inner.unary(req, path, codec).await
985        }
986        pub async fn create_remote_connection(
987            &mut self,
988            request: impl tonic::IntoRequest<super::CreateRemoteConnectionRequest>,
989        ) -> std::result::Result<
990            tonic::Response<super::CreateRemoteConnectionResponse>,
991            tonic::Status,
992        > {
993            self.inner
994                .ready()
995                .await
996                .map_err(|e| {
997                    tonic::Status::unknown(
998                        format!("Service was not ready: {}", e.into()),
999                    )
1000                })?;
1001            let codec = tonic::codec::ProstCodec::default();
1002            let path = http::uri::PathAndQuery::from_static(
1003                "/nominal.mesh.v1.MeshService/CreateRemoteConnection",
1004            );
1005            let mut req = request.into_request();
1006            req.extensions_mut()
1007                .insert(
1008                    GrpcMethod::new(
1009                        "nominal.mesh.v1.MeshService",
1010                        "CreateRemoteConnection",
1011                    ),
1012                );
1013            self.inner.unary(req, path, codec).await
1014        }
1015        pub async fn get_remote_connection(
1016            &mut self,
1017            request: impl tonic::IntoRequest<super::GetRemoteConnectionRequest>,
1018        ) -> std::result::Result<
1019            tonic::Response<super::GetRemoteConnectionResponse>,
1020            tonic::Status,
1021        > {
1022            self.inner
1023                .ready()
1024                .await
1025                .map_err(|e| {
1026                    tonic::Status::unknown(
1027                        format!("Service was not ready: {}", e.into()),
1028                    )
1029                })?;
1030            let codec = tonic::codec::ProstCodec::default();
1031            let path = http::uri::PathAndQuery::from_static(
1032                "/nominal.mesh.v1.MeshService/GetRemoteConnection",
1033            );
1034            let mut req = request.into_request();
1035            req.extensions_mut()
1036                .insert(
1037                    GrpcMethod::new("nominal.mesh.v1.MeshService", "GetRemoteConnection"),
1038                );
1039            self.inner.unary(req, path, codec).await
1040        }
1041        pub async fn update_remote_connection(
1042            &mut self,
1043            request: impl tonic::IntoRequest<super::UpdateRemoteConnectionRequest>,
1044        ) -> std::result::Result<
1045            tonic::Response<super::UpdateRemoteConnectionResponse>,
1046            tonic::Status,
1047        > {
1048            self.inner
1049                .ready()
1050                .await
1051                .map_err(|e| {
1052                    tonic::Status::unknown(
1053                        format!("Service was not ready: {}", e.into()),
1054                    )
1055                })?;
1056            let codec = tonic::codec::ProstCodec::default();
1057            let path = http::uri::PathAndQuery::from_static(
1058                "/nominal.mesh.v1.MeshService/UpdateRemoteConnection",
1059            );
1060            let mut req = request.into_request();
1061            req.extensions_mut()
1062                .insert(
1063                    GrpcMethod::new(
1064                        "nominal.mesh.v1.MeshService",
1065                        "UpdateRemoteConnection",
1066                    ),
1067                );
1068            self.inner.unary(req, path, codec).await
1069        }
1070        pub async fn delete_remote_connection(
1071            &mut self,
1072            request: impl tonic::IntoRequest<super::DeleteRemoteConnectionRequest>,
1073        ) -> std::result::Result<
1074            tonic::Response<super::DeleteRemoteConnectionResponse>,
1075            tonic::Status,
1076        > {
1077            self.inner
1078                .ready()
1079                .await
1080                .map_err(|e| {
1081                    tonic::Status::unknown(
1082                        format!("Service was not ready: {}", e.into()),
1083                    )
1084                })?;
1085            let codec = tonic::codec::ProstCodec::default();
1086            let path = http::uri::PathAndQuery::from_static(
1087                "/nominal.mesh.v1.MeshService/DeleteRemoteConnection",
1088            );
1089            let mut req = request.into_request();
1090            req.extensions_mut()
1091                .insert(
1092                    GrpcMethod::new(
1093                        "nominal.mesh.v1.MeshService",
1094                        "DeleteRemoteConnection",
1095                    ),
1096                );
1097            self.inner.unary(req, path, codec).await
1098        }
1099        pub async fn list_remote_connections(
1100            &mut self,
1101            request: impl tonic::IntoRequest<super::ListRemoteConnectionsRequest>,
1102        ) -> std::result::Result<
1103            tonic::Response<super::ListRemoteConnectionsResponse>,
1104            tonic::Status,
1105        > {
1106            self.inner
1107                .ready()
1108                .await
1109                .map_err(|e| {
1110                    tonic::Status::unknown(
1111                        format!("Service was not ready: {}", e.into()),
1112                    )
1113                })?;
1114            let codec = tonic::codec::ProstCodec::default();
1115            let path = http::uri::PathAndQuery::from_static(
1116                "/nominal.mesh.v1.MeshService/ListRemoteConnections",
1117            );
1118            let mut req = request.into_request();
1119            req.extensions_mut()
1120                .insert(
1121                    GrpcMethod::new(
1122                        "nominal.mesh.v1.MeshService",
1123                        "ListRemoteConnections",
1124                    ),
1125                );
1126            self.inner.unary(req, path, codec).await
1127        }
1128    }
1129}
1130#[derive(Clone, PartialEq, ::prost::Message)]
1131pub struct MeshArtifactPayload {
1132    #[prost(string, tag = "1")]
1133    pub global_rid: ::prost::alloc::string::String,
1134    #[prost(map = "string, int64", tag = "2")]
1135    pub version_vector: ::std::collections::HashMap<::prost::alloc::string::String, i64>,
1136    #[prost(oneof = "mesh_artifact_payload::Artifact", tags = "3")]
1137    pub artifact: ::core::option::Option<mesh_artifact_payload::Artifact>,
1138}
1139/// Nested message and enum types in `MeshArtifactPayload`.
1140pub mod mesh_artifact_payload {
1141    #[derive(Clone, PartialEq, ::prost::Oneof)]
1142    pub enum Artifact {
1143        #[prost(message, tag = "3")]
1144        Asset(super::MeshAssetPayload),
1145    }
1146}