All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.envoyproxy.envoy.api.v2.ClusterOrBuilder Maven / Gradle / Ivy

There is a newer version: 1.0.47
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: envoy/api/v2/cds.proto

package io.envoyproxy.envoy.api.v2;

public interface ClusterOrBuilder extends
    // @@protoc_insertion_point(interface_extends:envoy.api.v2.Cluster)
    com.google.protobuf.MessageOrBuilder {

  /**
   * 
   * Supplies the name of the cluster which must be unique across all clusters.
   * The cluster name is used when emitting
   * :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name
   * <envoy_api_field_Cluster.alt_stat_name>` is not provided.
   * Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
   * By default, the maximum length of a cluster name is limited to 60
   * characters. This limit can be increased by setting the
   * :option:`--max-obj-name-len` command line argument to the desired value.
   * 
* * string name = 1 [(.validate.rules) = { ... } */ java.lang.String getName(); /** *
   * Supplies the name of the cluster which must be unique across all clusters.
   * The cluster name is used when emitting
   * :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name
   * <envoy_api_field_Cluster.alt_stat_name>` is not provided.
   * Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
   * By default, the maximum length of a cluster name is limited to 60
   * characters. This limit can be increased by setting the
   * :option:`--max-obj-name-len` command line argument to the desired value.
   * 
* * string name = 1 [(.validate.rules) = { ... } */ com.google.protobuf.ByteString getNameBytes(); /** *
   * An optional alternative to the cluster name to be used while emitting stats.
   * Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be
   * confused with :ref:`Router Filter Header
   * <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
   * 
* * string alt_stat_name = 28; */ java.lang.String getAltStatName(); /** *
   * An optional alternative to the cluster name to be used while emitting stats.
   * Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be
   * confused with :ref:`Router Filter Header
   * <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
   * 
* * string alt_stat_name = 28; */ com.google.protobuf.ByteString getAltStatNameBytes(); /** *
   * The :ref:`service discovery type <arch_overview_service_discovery_types>`
   * to use for resolving the cluster.
   * 
* * .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... } */ int getTypeValue(); /** *
   * The :ref:`service discovery type <arch_overview_service_discovery_types>`
   * to use for resolving the cluster.
   * 
* * .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... } */ io.envoyproxy.envoy.api.v2.Cluster.DiscoveryType getType(); /** *
   * Configuration to use for EDS updates for the Cluster.
   * 
* * .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3; */ boolean hasEdsClusterConfig(); /** *
   * Configuration to use for EDS updates for the Cluster.
   * 
* * .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3; */ io.envoyproxy.envoy.api.v2.Cluster.EdsClusterConfig getEdsClusterConfig(); /** *
   * Configuration to use for EDS updates for the Cluster.
   * 
* * .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3; */ io.envoyproxy.envoy.api.v2.Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder(); /** *
   * The timeout for new network connections to hosts in the cluster.
   * 
* * .google.protobuf.Duration connect_timeout = 4 [(.gogoproto.nullable) = false, (.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ boolean hasConnectTimeout(); /** *
   * The timeout for new network connections to hosts in the cluster.
   * 
* * .google.protobuf.Duration connect_timeout = 4 [(.gogoproto.nullable) = false, (.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ com.google.protobuf.Duration getConnectTimeout(); /** *
   * The timeout for new network connections to hosts in the cluster.
   * 
* * .google.protobuf.Duration connect_timeout = 4 [(.gogoproto.nullable) = false, (.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ com.google.protobuf.DurationOrBuilder getConnectTimeoutOrBuilder(); /** *
   * Soft limit on size of the cluster’s connections read and write buffers. If
   * unspecified, an implementation defined default is applied (1MiB).
   * 
* * .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5; */ boolean hasPerConnectionBufferLimitBytes(); /** *
   * Soft limit on size of the cluster’s connections read and write buffers. If
   * unspecified, an implementation defined default is applied (1MiB).
   * 
* * .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5; */ com.google.protobuf.UInt32Value getPerConnectionBufferLimitBytes(); /** *
   * Soft limit on size of the cluster’s connections read and write buffers. If
   * unspecified, an implementation defined default is applied (1MiB).
   * 
* * .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5; */ com.google.protobuf.UInt32ValueOrBuilder getPerConnectionBufferLimitBytesOrBuilder(); /** *
   * The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
   * when picking a host in the cluster.
   * 
* * .envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... } */ int getLbPolicyValue(); /** *
   * The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
   * when picking a host in the cluster.
   * 
* * .envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... } */ io.envoyproxy.envoy.api.v2.Cluster.LbPolicy getLbPolicy(); /** *
   * If the service discovery type is
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * then hosts is required.
   * .. attention::
   *   **This field is deprecated**. Set the
   *   :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
   * 
* * repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true]; */ @java.lang.Deprecated java.util.List getHostsList(); /** *
   * If the service discovery type is
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * then hosts is required.
   * .. attention::
   *   **This field is deprecated**. Set the
   *   :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
   * 
* * repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true]; */ @java.lang.Deprecated io.envoyproxy.envoy.api.v2.core.Address getHosts(int index); /** *
   * If the service discovery type is
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * then hosts is required.
   * .. attention::
   *   **This field is deprecated**. Set the
   *   :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
   * 
* * repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true]; */ @java.lang.Deprecated int getHostsCount(); /** *
   * If the service discovery type is
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * then hosts is required.
   * .. attention::
   *   **This field is deprecated**. Set the
   *   :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
   * 
* * repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true]; */ @java.lang.Deprecated java.util.List getHostsOrBuilderList(); /** *
   * If the service discovery type is
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * then hosts is required.
   * .. attention::
   *   **This field is deprecated**. Set the
   *   :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
   * 
* * repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true]; */ @java.lang.Deprecated io.envoyproxy.envoy.api.v2.core.AddressOrBuilder getHostsOrBuilder( int index); /** *
   * Setting this is required for specifying members of
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
   * This field supersedes :ref:`hosts<envoy_api_field_Cluster.hosts>` field.
   * [#comment:TODO(dio): Deprecate the hosts field and add it to DEPRECATED.md
   * once load_assignment is implemented.]
   * .. attention::
   *   Setting this allows non-EDS cluster types to contain embedded EDS equivalent
   *   :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
   *   Setting this overrides :ref:`hosts<envoy_api_field_Cluster.hosts>` values.
   * 
* * .envoy.api.v2.ClusterLoadAssignment load_assignment = 33; */ boolean hasLoadAssignment(); /** *
   * Setting this is required for specifying members of
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
   * This field supersedes :ref:`hosts<envoy_api_field_Cluster.hosts>` field.
   * [#comment:TODO(dio): Deprecate the hosts field and add it to DEPRECATED.md
   * once load_assignment is implemented.]
   * .. attention::
   *   Setting this allows non-EDS cluster types to contain embedded EDS equivalent
   *   :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
   *   Setting this overrides :ref:`hosts<envoy_api_field_Cluster.hosts>` values.
   * 
* * .envoy.api.v2.ClusterLoadAssignment load_assignment = 33; */ io.envoyproxy.envoy.api.v2.ClusterLoadAssignment getLoadAssignment(); /** *
   * Setting this is required for specifying members of
   * :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
   * This field supersedes :ref:`hosts<envoy_api_field_Cluster.hosts>` field.
   * [#comment:TODO(dio): Deprecate the hosts field and add it to DEPRECATED.md
   * once load_assignment is implemented.]
   * .. attention::
   *   Setting this allows non-EDS cluster types to contain embedded EDS equivalent
   *   :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
   *   Setting this overrides :ref:`hosts<envoy_api_field_Cluster.hosts>` values.
   * 
* * .envoy.api.v2.ClusterLoadAssignment load_assignment = 33; */ io.envoyproxy.envoy.api.v2.ClusterLoadAssignmentOrBuilder getLoadAssignmentOrBuilder(); /** *
   * Optional :ref:`active health checking <arch_overview_health_checking>`
   * configuration for the cluster. If no
   * configuration is specified no health checking will be done and all cluster
   * members will be considered healthy at all times.
   * 
* * repeated .envoy.api.v2.core.HealthCheck health_checks = 8; */ java.util.List getHealthChecksList(); /** *
   * Optional :ref:`active health checking <arch_overview_health_checking>`
   * configuration for the cluster. If no
   * configuration is specified no health checking will be done and all cluster
   * members will be considered healthy at all times.
   * 
* * repeated .envoy.api.v2.core.HealthCheck health_checks = 8; */ io.envoyproxy.envoy.api.v2.core.HealthCheck getHealthChecks(int index); /** *
   * Optional :ref:`active health checking <arch_overview_health_checking>`
   * configuration for the cluster. If no
   * configuration is specified no health checking will be done and all cluster
   * members will be considered healthy at all times.
   * 
* * repeated .envoy.api.v2.core.HealthCheck health_checks = 8; */ int getHealthChecksCount(); /** *
   * Optional :ref:`active health checking <arch_overview_health_checking>`
   * configuration for the cluster. If no
   * configuration is specified no health checking will be done and all cluster
   * members will be considered healthy at all times.
   * 
* * repeated .envoy.api.v2.core.HealthCheck health_checks = 8; */ java.util.List getHealthChecksOrBuilderList(); /** *
   * Optional :ref:`active health checking <arch_overview_health_checking>`
   * configuration for the cluster. If no
   * configuration is specified no health checking will be done and all cluster
   * members will be considered healthy at all times.
   * 
* * repeated .envoy.api.v2.core.HealthCheck health_checks = 8; */ io.envoyproxy.envoy.api.v2.core.HealthCheckOrBuilder getHealthChecksOrBuilder( int index); /** *
   * Optional maximum requests for a single upstream connection. This parameter
   * is respected by both the HTTP/1.1 and HTTP/2 connection pool
   * implementations. If not specified, there is no limit. Setting this
   * parameter to 1 will effectively disable keep alive.
   * 
* * .google.protobuf.UInt32Value max_requests_per_connection = 9; */ boolean hasMaxRequestsPerConnection(); /** *
   * Optional maximum requests for a single upstream connection. This parameter
   * is respected by both the HTTP/1.1 and HTTP/2 connection pool
   * implementations. If not specified, there is no limit. Setting this
   * parameter to 1 will effectively disable keep alive.
   * 
* * .google.protobuf.UInt32Value max_requests_per_connection = 9; */ com.google.protobuf.UInt32Value getMaxRequestsPerConnection(); /** *
   * Optional maximum requests for a single upstream connection. This parameter
   * is respected by both the HTTP/1.1 and HTTP/2 connection pool
   * implementations. If not specified, there is no limit. Setting this
   * parameter to 1 will effectively disable keep alive.
   * 
* * .google.protobuf.UInt32Value max_requests_per_connection = 9; */ com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder(); /** *
   * Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
   * 
* * .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10; */ boolean hasCircuitBreakers(); /** *
   * Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
   * 
* * .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10; */ io.envoyproxy.envoy.api.v2.cluster.CircuitBreakers getCircuitBreakers(); /** *
   * Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
   * 
* * .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10; */ io.envoyproxy.envoy.api.v2.cluster.CircuitBreakersOrBuilder getCircuitBreakersOrBuilder(); /** *
   * The TLS configuration for connections to the upstream cluster. If no TLS
   * configuration is specified, TLS will not be used for new connections.
   * .. attention::
   *   Server certificate verification is not enabled by default. Configure
   *   :ref:`trusted_ca<envoy_api_field_auth.CertificateValidationContext.trusted_ca>` to enable
   *   verification.
   * 
* * .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11; */ boolean hasTlsContext(); /** *
   * The TLS configuration for connections to the upstream cluster. If no TLS
   * configuration is specified, TLS will not be used for new connections.
   * .. attention::
   *   Server certificate verification is not enabled by default. Configure
   *   :ref:`trusted_ca<envoy_api_field_auth.CertificateValidationContext.trusted_ca>` to enable
   *   verification.
   * 
* * .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11; */ io.envoyproxy.envoy.api.v2.auth.UpstreamTlsContext getTlsContext(); /** *
   * The TLS configuration for connections to the upstream cluster. If no TLS
   * configuration is specified, TLS will not be used for new connections.
   * .. attention::
   *   Server certificate verification is not enabled by default. Configure
   *   :ref:`trusted_ca<envoy_api_field_auth.CertificateValidationContext.trusted_ca>` to enable
   *   verification.
   * 
* * .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11; */ io.envoyproxy.envoy.api.v2.auth.UpstreamTlsContextOrBuilder getTlsContextOrBuilder(); /** *
   * Additional options when handling HTTP requests. These options will be applicable to both
   * HTTP1 and HTTP2 requests.
   * 
* * .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29; */ boolean hasCommonHttpProtocolOptions(); /** *
   * Additional options when handling HTTP requests. These options will be applicable to both
   * HTTP1 and HTTP2 requests.
   * 
* * .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29; */ io.envoyproxy.envoy.api.v2.core.HttpProtocolOptions getCommonHttpProtocolOptions(); /** *
   * Additional options when handling HTTP requests. These options will be applicable to both
   * HTTP1 and HTTP2 requests.
   * 
* * .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29; */ io.envoyproxy.envoy.api.v2.core.HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder(); /** *
   * Additional options when handling HTTP1 requests.
   * 
* * .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13; */ boolean hasHttpProtocolOptions(); /** *
   * Additional options when handling HTTP1 requests.
   * 
* * .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13; */ io.envoyproxy.envoy.api.v2.core.Http1ProtocolOptions getHttpProtocolOptions(); /** *
   * Additional options when handling HTTP1 requests.
   * 
* * .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13; */ io.envoyproxy.envoy.api.v2.core.Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder(); /** *
   * Even if default HTTP2 protocol options are desired, this field must be
   * set so that Envoy will assume that the upstream supports HTTP/2 when
   * making new HTTP connection pool connections. Currently, Envoy only
   * supports prior knowledge for upstream connections. Even if TLS is used
   * with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
   * connections to happen over plain text.
   * 
* * .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14; */ boolean hasHttp2ProtocolOptions(); /** *
   * Even if default HTTP2 protocol options are desired, this field must be
   * set so that Envoy will assume that the upstream supports HTTP/2 when
   * making new HTTP connection pool connections. Currently, Envoy only
   * supports prior knowledge for upstream connections. Even if TLS is used
   * with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
   * connections to happen over plain text.
   * 
* * .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14; */ io.envoyproxy.envoy.api.v2.core.Http2ProtocolOptions getHttp2ProtocolOptions(); /** *
   * Even if default HTTP2 protocol options are desired, this field must be
   * set so that Envoy will assume that the upstream supports HTTP/2 when
   * making new HTTP connection pool connections. Currently, Envoy only
   * supports prior knowledge for upstream connections. Even if TLS is used
   * with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
   * connections to happen over plain text.
   * 
* * .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14; */ io.envoyproxy.envoy.api.v2.core.Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true]; */ @java.lang.Deprecated int getExtensionProtocolOptionsCount(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true]; */ @java.lang.Deprecated boolean containsExtensionProtocolOptions( java.lang.String key); /** * Use {@link #getExtensionProtocolOptionsMap()} instead. */ @java.lang.Deprecated java.util.Map getExtensionProtocolOptions(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true]; */ @java.lang.Deprecated java.util.Map getExtensionProtocolOptionsMap(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true]; */ @java.lang.Deprecated com.google.protobuf.Struct getExtensionProtocolOptionsOrDefault( java.lang.String key, com.google.protobuf.Struct defaultValue); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true]; */ @java.lang.Deprecated com.google.protobuf.Struct getExtensionProtocolOptionsOrThrow( java.lang.String key); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Any> typed_extension_protocol_options = 36; */ int getTypedExtensionProtocolOptionsCount(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Any> typed_extension_protocol_options = 36; */ boolean containsTypedExtensionProtocolOptions( java.lang.String key); /** * Use {@link #getTypedExtensionProtocolOptionsMap()} instead. */ @java.lang.Deprecated java.util.Map getTypedExtensionProtocolOptions(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Any> typed_extension_protocol_options = 36; */ java.util.Map getTypedExtensionProtocolOptionsMap(); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Any> typed_extension_protocol_options = 36; */ com.google.protobuf.Any getTypedExtensionProtocolOptionsOrDefault( java.lang.String key, com.google.protobuf.Any defaultValue); /** *
   * The extension_protocol_options field is used to provide extension-specific protocol options
   * for upstream connections. The key should match the extension filter name, such as
   * "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
   * specific options.
   * 
* * map<string, .google.protobuf.Any> typed_extension_protocol_options = 36; */ com.google.protobuf.Any getTypedExtensionProtocolOptionsOrThrow( java.lang.String key); /** *
   * If the DNS refresh rate is specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used as the cluster’s DNS refresh
   * rate. If this setting is not specified, the value defaults to 5000ms. For
   * cluster types other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * .google.protobuf.Duration dns_refresh_rate = 16 [(.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ boolean hasDnsRefreshRate(); /** *
   * If the DNS refresh rate is specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used as the cluster’s DNS refresh
   * rate. If this setting is not specified, the value defaults to 5000ms. For
   * cluster types other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * .google.protobuf.Duration dns_refresh_rate = 16 [(.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ com.google.protobuf.Duration getDnsRefreshRate(); /** *
   * If the DNS refresh rate is specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used as the cluster’s DNS refresh
   * rate. If this setting is not specified, the value defaults to 5000ms. For
   * cluster types other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * .google.protobuf.Duration dns_refresh_rate = 16 [(.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder(); /** *
   * The DNS IP address resolution policy. If this setting is not specified, the
   * value defaults to
   * :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
   * 
* * .envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... } */ int getDnsLookupFamilyValue(); /** *
   * The DNS IP address resolution policy. If this setting is not specified, the
   * value defaults to
   * :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
   * 
* * .envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... } */ io.envoyproxy.envoy.api.v2.Cluster.DnsLookupFamily getDnsLookupFamily(); /** *
   * If DNS resolvers are specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used to specify the cluster’s dns resolvers.
   * If this setting is not specified, the value defaults to the default
   * resolver, which uses /etc/resolv.conf for configuration. For cluster types
   * other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * repeated .envoy.api.v2.core.Address dns_resolvers = 18; */ java.util.List getDnsResolversList(); /** *
   * If DNS resolvers are specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used to specify the cluster’s dns resolvers.
   * If this setting is not specified, the value defaults to the default
   * resolver, which uses /etc/resolv.conf for configuration. For cluster types
   * other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * repeated .envoy.api.v2.core.Address dns_resolvers = 18; */ io.envoyproxy.envoy.api.v2.core.Address getDnsResolvers(int index); /** *
   * If DNS resolvers are specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used to specify the cluster’s dns resolvers.
   * If this setting is not specified, the value defaults to the default
   * resolver, which uses /etc/resolv.conf for configuration. For cluster types
   * other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * repeated .envoy.api.v2.core.Address dns_resolvers = 18; */ int getDnsResolversCount(); /** *
   * If DNS resolvers are specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used to specify the cluster’s dns resolvers.
   * If this setting is not specified, the value defaults to the default
   * resolver, which uses /etc/resolv.conf for configuration. For cluster types
   * other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * repeated .envoy.api.v2.core.Address dns_resolvers = 18; */ java.util.List getDnsResolversOrBuilderList(); /** *
   * If DNS resolvers are specified and the cluster type is either
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
   * or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
   * this value is used to specify the cluster’s dns resolvers.
   * If this setting is not specified, the value defaults to the default
   * resolver, which uses /etc/resolv.conf for configuration. For cluster types
   * other than
   * :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
   * and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
   * this setting is ignored.
   * 
* * repeated .envoy.api.v2.core.Address dns_resolvers = 18; */ io.envoyproxy.envoy.api.v2.core.AddressOrBuilder getDnsResolversOrBuilder( int index); /** *
   * If specified, outlier detection will be enabled for this upstream cluster.
   * Each of the configuration values can be overridden via
   * :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
   * 
* * .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19; */ boolean hasOutlierDetection(); /** *
   * If specified, outlier detection will be enabled for this upstream cluster.
   * Each of the configuration values can be overridden via
   * :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
   * 
* * .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19; */ io.envoyproxy.envoy.api.v2.cluster.OutlierDetection getOutlierDetection(); /** *
   * If specified, outlier detection will be enabled for this upstream cluster.
   * Each of the configuration values can be overridden via
   * :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
   * 
* * .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19; */ io.envoyproxy.envoy.api.v2.cluster.OutlierDetectionOrBuilder getOutlierDetectionOrBuilder(); /** *
   * The interval for removing stale hosts from a cluster type
   * :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
   * Hosts are considered stale if they have not been used
   * as upstream destinations during this interval. New hosts are added
   * to original destination clusters on demand as new connections are
   * redirected to Envoy, causing the number of hosts in the cluster to
   * grow over time. Hosts that are not stale (they are actively used as
   * destinations) are kept in the cluster, which allows connections to
   * them remain open, saving the latency that would otherwise be spent
   * on opening new connections. If this setting is not specified, the
   * value defaults to 5000ms. For cluster types other than
   * :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
   * this setting is ignored.
   * 
* * .google.protobuf.Duration cleanup_interval = 20 [(.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ boolean hasCleanupInterval(); /** *
   * The interval for removing stale hosts from a cluster type
   * :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
   * Hosts are considered stale if they have not been used
   * as upstream destinations during this interval. New hosts are added
   * to original destination clusters on demand as new connections are
   * redirected to Envoy, causing the number of hosts in the cluster to
   * grow over time. Hosts that are not stale (they are actively used as
   * destinations) are kept in the cluster, which allows connections to
   * them remain open, saving the latency that would otherwise be spent
   * on opening new connections. If this setting is not specified, the
   * value defaults to 5000ms. For cluster types other than
   * :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
   * this setting is ignored.
   * 
* * .google.protobuf.Duration cleanup_interval = 20 [(.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ com.google.protobuf.Duration getCleanupInterval(); /** *
   * The interval for removing stale hosts from a cluster type
   * :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
   * Hosts are considered stale if they have not been used
   * as upstream destinations during this interval. New hosts are added
   * to original destination clusters on demand as new connections are
   * redirected to Envoy, causing the number of hosts in the cluster to
   * grow over time. Hosts that are not stale (they are actively used as
   * destinations) are kept in the cluster, which allows connections to
   * them remain open, saving the latency that would otherwise be spent
   * on opening new connections. If this setting is not specified, the
   * value defaults to 5000ms. For cluster types other than
   * :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
   * this setting is ignored.
   * 
* * .google.protobuf.Duration cleanup_interval = 20 [(.gogoproto.stdduration) = true, (.validate.rules) = { ... } */ com.google.protobuf.DurationOrBuilder getCleanupIntervalOrBuilder(); /** *
   * Optional configuration used to bind newly established upstream connections.
   * This overrides any bind_config specified in the bootstrap proto.
   * If the address and port are empty, no bind will be performed.
   * 
* * .envoy.api.v2.core.BindConfig upstream_bind_config = 21; */ boolean hasUpstreamBindConfig(); /** *
   * Optional configuration used to bind newly established upstream connections.
   * This overrides any bind_config specified in the bootstrap proto.
   * If the address and port are empty, no bind will be performed.
   * 
* * .envoy.api.v2.core.BindConfig upstream_bind_config = 21; */ io.envoyproxy.envoy.api.v2.core.BindConfig getUpstreamBindConfig(); /** *
   * Optional configuration used to bind newly established upstream connections.
   * This overrides any bind_config specified in the bootstrap proto.
   * If the address and port are empty, no bind will be performed.
   * 
* * .envoy.api.v2.core.BindConfig upstream_bind_config = 21; */ io.envoyproxy.envoy.api.v2.core.BindConfigOrBuilder getUpstreamBindConfigOrBuilder(); /** *
   * Configuration for load balancing subsetting.
   * 
* * .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22; */ boolean hasLbSubsetConfig(); /** *
   * Configuration for load balancing subsetting.
   * 
* * .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22; */ io.envoyproxy.envoy.api.v2.Cluster.LbSubsetConfig getLbSubsetConfig(); /** *
   * Configuration for load balancing subsetting.
   * 
* * .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22; */ io.envoyproxy.envoy.api.v2.Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder(); /** *
   * Optional configuration for the Ring Hash load balancing policy.
   * 
* * .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23; */ boolean hasRingHashLbConfig(); /** *
   * Optional configuration for the Ring Hash load balancing policy.
   * 
* * .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23; */ io.envoyproxy.envoy.api.v2.Cluster.RingHashLbConfig getRingHashLbConfig(); /** *
   * Optional configuration for the Ring Hash load balancing policy.
   * 
* * .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23; */ io.envoyproxy.envoy.api.v2.Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder(); /** *
   * Optional configuration for the Original Destination load balancing policy.
   * 
* * .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34; */ boolean hasOriginalDstLbConfig(); /** *
   * Optional configuration for the Original Destination load balancing policy.
   * 
* * .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34; */ io.envoyproxy.envoy.api.v2.Cluster.OriginalDstLbConfig getOriginalDstLbConfig(); /** *
   * Optional configuration for the Original Destination load balancing policy.
   * 
* * .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34; */ io.envoyproxy.envoy.api.v2.Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder(); /** *
   * Optional configuration for the LeastRequest load balancing policy.
   * 
* * .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37; */ boolean hasLeastRequestLbConfig(); /** *
   * Optional configuration for the LeastRequest load balancing policy.
   * 
* * .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37; */ io.envoyproxy.envoy.api.v2.Cluster.LeastRequestLbConfig getLeastRequestLbConfig(); /** *
   * Optional configuration for the LeastRequest load balancing policy.
   * 
* * .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37; */ io.envoyproxy.envoy.api.v2.Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder(); /** *
   * Common configuration for all load balancer implementations.
   * 
* * .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27; */ boolean hasCommonLbConfig(); /** *
   * Common configuration for all load balancer implementations.
   * 
* * .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27; */ io.envoyproxy.envoy.api.v2.Cluster.CommonLbConfig getCommonLbConfig(); /** *
   * Common configuration for all load balancer implementations.
   * 
* * .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27; */ io.envoyproxy.envoy.api.v2.Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder(); /** *
   * Optional custom transport socket implementation to use for upstream connections.
   * 
* * .envoy.api.v2.core.TransportSocket transport_socket = 24; */ boolean hasTransportSocket(); /** *
   * Optional custom transport socket implementation to use for upstream connections.
   * 
* * .envoy.api.v2.core.TransportSocket transport_socket = 24; */ io.envoyproxy.envoy.api.v2.core.TransportSocket getTransportSocket(); /** *
   * Optional custom transport socket implementation to use for upstream connections.
   * 
* * .envoy.api.v2.core.TransportSocket transport_socket = 24; */ io.envoyproxy.envoy.api.v2.core.TransportSocketOrBuilder getTransportSocketOrBuilder(); /** *
   * The Metadata field can be used to provide additional information about the
   * cluster. It can be used for stats, logging, and varying filter behavior.
   * Fields should use reverse DNS notation to denote which entity within Envoy
   * will need the information. For instance, if the metadata is intended for
   * the Router filter, the filter name should be specified as *envoy.router*.
   * 
* * .envoy.api.v2.core.Metadata metadata = 25; */ boolean hasMetadata(); /** *
   * The Metadata field can be used to provide additional information about the
   * cluster. It can be used for stats, logging, and varying filter behavior.
   * Fields should use reverse DNS notation to denote which entity within Envoy
   * will need the information. For instance, if the metadata is intended for
   * the Router filter, the filter name should be specified as *envoy.router*.
   * 
* * .envoy.api.v2.core.Metadata metadata = 25; */ io.envoyproxy.envoy.api.v2.core.Metadata getMetadata(); /** *
   * The Metadata field can be used to provide additional information about the
   * cluster. It can be used for stats, logging, and varying filter behavior.
   * Fields should use reverse DNS notation to denote which entity within Envoy
   * will need the information. For instance, if the metadata is intended for
   * the Router filter, the filter name should be specified as *envoy.router*.
   * 
* * .envoy.api.v2.core.Metadata metadata = 25; */ io.envoyproxy.envoy.api.v2.core.MetadataOrBuilder getMetadataOrBuilder(); /** *
   * Determines how Envoy selects the protocol used to speak to upstream hosts.
   * 
* * .envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26; */ int getProtocolSelectionValue(); /** *
   * Determines how Envoy selects the protocol used to speak to upstream hosts.
   * 
* * .envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26; */ io.envoyproxy.envoy.api.v2.Cluster.ClusterProtocolSelection getProtocolSelection(); /** *
   * Optional options for upstream connections.
   * 
* * .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30; */ boolean hasUpstreamConnectionOptions(); /** *
   * Optional options for upstream connections.
   * 
* * .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30; */ io.envoyproxy.envoy.api.v2.UpstreamConnectionOptions getUpstreamConnectionOptions(); /** *
   * Optional options for upstream connections.
   * 
* * .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30; */ io.envoyproxy.envoy.api.v2.UpstreamConnectionOptionsOrBuilder getUpstreamConnectionOptionsOrBuilder(); /** *
   * If an upstream host becomes unhealthy (as determined by the configured health checks
   * or outlier detection), immediately close all connections to the failed host.
   * .. note::
   *   This is currently only supported for connections created by tcp_proxy.
   * .. note::
   *   The current implementation of this feature closes all connections immediately when
   *   the unhealthy status is detected. If there are a large number of connections open
   *   to an upstream host that becomes unhealthy, Envoy may spend a substantial amount of
   *   time exclusively closing these connections, and not processing any other traffic.
   * 
* * bool close_connections_on_host_health_failure = 31; */ boolean getCloseConnectionsOnHostHealthFailure(); /** *
   * If this cluster uses EDS or STRICT_DNS to configure its hosts, immediately drain
   * connections from any hosts that are removed from service discovery.
   * This only affects behavior for hosts that are being actively health checked.
   * If this flag is not set to true, Envoy will wait until the hosts fail active health
   * checking before removing it from the cluster.
   * 
* * bool drain_connections_on_host_removal = 32; */ boolean getDrainConnectionsOnHostRemoval(); public io.envoyproxy.envoy.api.v2.Cluster.LbConfigCase getLbConfigCase(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy