summaryrefslogtreecommitdiff
path: root/src/rpc/envoy.service.status.v2.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/rpc/envoy.service.status.v2.rs')
-rw-r--r--src/rpc/envoy.service.status.v2.rs97
1 files changed, 97 insertions, 0 deletions
diff --git a/src/rpc/envoy.service.status.v2.rs b/src/rpc/envoy.service.status.v2.rs
new file mode 100644
index 00000000..cac4d796
--- /dev/null
+++ b/src/rpc/envoy.service.status.v2.rs
@@ -0,0 +1,97 @@
+// @generated
+// This file is @generated by prost-build.
+/// Request for client status of clients identified by a list of NodeMatchers.
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct ClientStatusRequest {
+ /// Management server can use these match criteria to identify clients.
+ /// The match follows OR semantics.
+ #[prost(message, repeated, tag="1")]
+ pub node_matchers: ::prost::alloc::vec::Vec<super::super::super::r#type::matcher::NodeMatcher>,
+}
+/// Detailed config (per xDS) with status.
+/// \[#next-free-field: 6\]
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct PerXdsConfig {
+ #[prost(enumeration="ConfigStatus", tag="1")]
+ pub status: i32,
+ #[prost(oneof="per_xds_config::PerXdsConfig", tags="2, 3, 4, 5")]
+ pub per_xds_config: ::core::option::Option<per_xds_config::PerXdsConfig>,
+}
+/// Nested message and enum types in `PerXdsConfig`.
+pub mod per_xds_config {
+ #[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Oneof)]
+ pub enum PerXdsConfig {
+ #[prost(message, tag="2")]
+ ListenerConfig(super::super::super::super::admin::v2alpha::ListenersConfigDump),
+ #[prost(message, tag="3")]
+ ClusterConfig(super::super::super::super::admin::v2alpha::ClustersConfigDump),
+ #[prost(message, tag="4")]
+ RouteConfig(super::super::super::super::admin::v2alpha::RoutesConfigDump),
+ #[prost(message, tag="5")]
+ ScopedRouteConfig(super::super::super::super::admin::v2alpha::ScopedRoutesConfigDump),
+ }
+}
+/// All xds configs for a particular client.
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct ClientConfig {
+ /// Node for a particular client.
+ #[prost(message, optional, tag="1")]
+ pub node: ::core::option::Option<super::super::super::api::v2::core::Node>,
+ #[prost(message, repeated, tag="2")]
+ pub xds_config: ::prost::alloc::vec::Vec<PerXdsConfig>,
+}
+#[allow(clippy::derive_partial_eq_without_eq)]
+#[derive(Clone, PartialEq, ::prost::Message)]
+pub struct ClientStatusResponse {
+ /// Client configs for the clients specified in the ClientStatusRequest.
+ #[prost(message, repeated, tag="1")]
+ pub config: ::prost::alloc::vec::Vec<ClientConfig>,
+}
+/// Status of a config.
+#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
+#[repr(i32)]
+pub enum ConfigStatus {
+ /// Status info is not available/unknown.
+ Unknown = 0,
+ /// Management server has sent the config to client and received ACK.
+ Synced = 1,
+ /// Config is not sent.
+ NotSent = 2,
+ /// Management server has sent the config to client but hasn’t received
+ /// ACK/NACK.
+ Stale = 3,
+ /// Management server has sent the config to client but received NACK.
+ Error = 4,
+}
+impl ConfigStatus {
+ /// String value of the enum field names used in the ProtoBuf definition.
+ ///
+ /// The values are not transformed in any way and thus are considered stable
+ /// (if the ProtoBuf definition does not change) and safe for programmatic use.
+ pub fn as_str_name(&self) -> &'static str {
+ match self {
+ ConfigStatus::Unknown => "UNKNOWN",
+ ConfigStatus::Synced => "SYNCED",
+ ConfigStatus::NotSent => "NOT_SENT",
+ ConfigStatus::Stale => "STALE",
+ ConfigStatus::Error => "ERROR",
+ }
+ }
+ /// Creates an enum from field names used in the ProtoBuf definition.
+ pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
+ match value {
+ "UNKNOWN" => Some(Self::Unknown),
+ "SYNCED" => Some(Self::Synced),
+ "NOT_SENT" => Some(Self::NotSent),
+ "STALE" => Some(Self::Stale),
+ "ERROR" => Some(Self::Error),
+ _ => None,
+ }
+ }
+}
+include!("envoy.service.status.v2.tonic.rs");
+// @@protoc_insertion_point(module) \ No newline at end of file