envoy-types 0.7.3

Collection of protobuf types and other assets to work with the Envoy Proxy through Rust gRPC services.
Documentation
// This file is @generated by prost-build.
/// Configuration for a cluster of type REVERSE_CONNECTION.
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ReverseConnectionClusterConfig {
    /// Time interval after which Envoy removes unused dynamic hosts created for reverse connections.
    /// Hosts that are not referenced by any connection pool are deleted during cleanup.
    ///
    /// If unset, Envoy uses a default of 60s.
    #[prost(message, optional, tag = "1")]
    pub cleanup_interval: ::core::option::Option<
        super::super::super::super::super::google::protobuf::Duration,
    >,
    /// Host identifier format string.
    ///
    /// This format string is evaluated against the downstream request context to compute
    /// the host identifier for selecting the reverse connection endpoint. The format string
    /// supports Envoy's standard formatter syntax, including:
    ///
    /// * `%REQ(header-name)%`: Extract request header value.
    /// * `%DYNAMIC_METADATA(namespace:key)%`: Extract dynamic metadata value.
    /// * `%CEL(expression)%`: Evaluate CEL expression.
    /// * `%DOWNSTREAM_REMOTE_ADDRESS%`: Downstream connection address.
    /// * `%DOWNSTREAM_LOCAL_ADDRESS%`: Downstream local address.
    /// * Plain text and combinations of the above.
    ///
    /// Examples:
    ///
    /// * `%REQ(x-remote-node-id)%`: Use the value of the `x-remote-node-id` header.
    /// * `%REQ(host):EXTRACT_FIRST_PART%`: Extract the first part of the Host header before a dot.
    /// * `%CEL(request.headers\['x-node-id'\] | orValue('default'))%`: Use CEL with fallback.
    /// * `node-%REQ(x-tenant-id)%-%REQ(x-region)%`: Combine multiple values.
    ///
    /// If the format string evaluates to an empty value, the request will not be routed.
    #[prost(string, tag = "2")]
    pub host_id_format: ::prost::alloc::string::String,
}
impl ::prost::Name for ReverseConnectionClusterConfig {
    const NAME: &'static str = "ReverseConnectionClusterConfig";
    const PACKAGE: &'static str = "envoy.extensions.clusters.reverse_connection.v3";
    fn full_name() -> ::prost::alloc::string::String {
        "envoy.extensions.clusters.reverse_connection.v3.ReverseConnectionClusterConfig"
            .into()
    }
    fn type_url() -> ::prost::alloc::string::String {
        "type.googleapis.com/envoy.extensions.clusters.reverse_connection.v3.ReverseConnectionClusterConfig"
            .into()
    }
}