
io.envoyproxy.envoy.extensions.clusters.dns.v3.DnsClusterOrBuilder Maven / Gradle / Ivy
The newest version!
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: envoy/extensions/clusters/dns/v3/dns_cluster.proto
// Protobuf Java Version: 3.25.1
package io.envoyproxy.envoy.extensions.clusters.dns.v3;
public interface DnsClusterOrBuilder extends
// @@protoc_insertion_point(interface_extends:envoy.extensions.clusters.dns.v3.DnsCluster)
com.google.protobuf.MessageOrBuilder {
/**
*
* This value is the cluster’s DNS refresh rate. The value configured must be at least 1ms.
* If this setting is not specified, the
* value defaults to 5000ms.
*
*
* .google.protobuf.Duration dns_refresh_rate = 3 [(.validate.rules) = { ... }
* @return Whether the dnsRefreshRate field is set.
*/
boolean hasDnsRefreshRate();
/**
*
* This value is the cluster’s DNS refresh rate. The value configured must be at least 1ms.
* If this setting is not specified, the
* value defaults to 5000ms.
*
*
* .google.protobuf.Duration dns_refresh_rate = 3 [(.validate.rules) = { ... }
* @return The dnsRefreshRate.
*/
com.google.protobuf.Duration getDnsRefreshRate();
/**
*
* This value is the cluster’s DNS refresh rate. The value configured must be at least 1ms.
* If this setting is not specified, the
* value defaults to 5000ms.
*
*
* .google.protobuf.Duration dns_refresh_rate = 3 [(.validate.rules) = { ... }
*/
com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder();
/**
*
* This is the cluster’s DNS refresh rate when requests are failing. If this setting is
* not specified, the failure refresh rate defaults to the DNS refresh rate.
*
*
* .envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate dns_failure_refresh_rate = 4;
* @return Whether the dnsFailureRefreshRate field is set.
*/
boolean hasDnsFailureRefreshRate();
/**
*
* This is the cluster’s DNS refresh rate when requests are failing. If this setting is
* not specified, the failure refresh rate defaults to the DNS refresh rate.
*
*
* .envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate dns_failure_refresh_rate = 4;
* @return The dnsFailureRefreshRate.
*/
io.envoyproxy.envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate getDnsFailureRefreshRate();
/**
*
* This is the cluster’s DNS refresh rate when requests are failing. If this setting is
* not specified, the failure refresh rate defaults to the DNS refresh rate.
*
*
* .envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRate dns_failure_refresh_rate = 4;
*/
io.envoyproxy.envoy.extensions.clusters.dns.v3.DnsCluster.RefreshRateOrBuilder getDnsFailureRefreshRateOrBuilder();
/**
*
* Optional configuration for setting cluster's DNS refresh rate. If the value is set to true,
* cluster's DNS refresh rate will be set to resource record's TTL which comes from DNS
* resolution.
*
*
* bool respect_dns_ttl = 5;
* @return The respectDnsTtl.
*/
boolean getRespectDnsTtl();
/**
*
* DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a
* stampede of DNS requests. This value sets the upper bound (exclusive) for the random amount.
* There will be no jitter if this value is omitted.
*
*
* .google.protobuf.Duration dns_jitter = 6 [(.validate.rules) = { ... }
* @return Whether the dnsJitter field is set.
*/
boolean hasDnsJitter();
/**
*
* DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a
* stampede of DNS requests. This value sets the upper bound (exclusive) for the random amount.
* There will be no jitter if this value is omitted.
*
*
* .google.protobuf.Duration dns_jitter = 6 [(.validate.rules) = { ... }
* @return The dnsJitter.
*/
com.google.protobuf.Duration getDnsJitter();
/**
*
* DNS jitter causes the cluster to refresh DNS entries later by a random amount of time to avoid a
* stampede of DNS requests. This value sets the upper bound (exclusive) for the random amount.
* There will be no jitter if this value is omitted.
*
*
* .google.protobuf.Duration dns_jitter = 6 [(.validate.rules) = { ... }
*/
com.google.protobuf.DurationOrBuilder getDnsJitterOrBuilder();
/**
*
* DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
* or any other DNS resolver types and the related parameters.
* For example, an object of
* :ref:`CaresDnsResolverConfig<envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
* can be packed into this ``typed_dns_resolver_config``. This configuration replaces the
* :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`
* configuration which replaces :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`.
* During the transition period when
* :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`,
* :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`,
* and :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
* exist, Envoy will use
* :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`
* and ignore
* DNS resolver-related fields in :ref:`Cluster<envoy_v3_api_msg_config.cluster.v3.Cluster>` if the cluster is configured via the
* :ref:`Cluster.cluster_type<envoy_v3_api_field_config.cluster.v3.Cluster.cluster_type>` extension point with the
* :ref:`DnsCluster<envoy_v3_api_msg_extensions.clusters.dns.v3.DnsCluster>` extension type.
* Otherwise, see :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
* [#extension-category: envoy.network.dns_resolver]
*
*
* .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 7;
* @return Whether the typedDnsResolverConfig field is set.
*/
boolean hasTypedDnsResolverConfig();
/**
*
* DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
* or any other DNS resolver types and the related parameters.
* For example, an object of
* :ref:`CaresDnsResolverConfig<envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
* can be packed into this ``typed_dns_resolver_config``. This configuration replaces the
* :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`
* configuration which replaces :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`.
* During the transition period when
* :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`,
* :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`,
* and :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
* exist, Envoy will use
* :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`
* and ignore
* DNS resolver-related fields in :ref:`Cluster<envoy_v3_api_msg_config.cluster.v3.Cluster>` if the cluster is configured via the
* :ref:`Cluster.cluster_type<envoy_v3_api_field_config.cluster.v3.Cluster.cluster_type>` extension point with the
* :ref:`DnsCluster<envoy_v3_api_msg_extensions.clusters.dns.v3.DnsCluster>` extension type.
* Otherwise, see :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
* [#extension-category: envoy.network.dns_resolver]
*
*
* .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 7;
* @return The typedDnsResolverConfig.
*/
io.envoyproxy.envoy.config.core.v3.TypedExtensionConfig getTypedDnsResolverConfig();
/**
*
* DNS resolver type configuration extension. This extension can be used to configure c-ares, apple,
* or any other DNS resolver types and the related parameters.
* For example, an object of
* :ref:`CaresDnsResolverConfig<envoy_v3_api_msg_extensions.network.dns_resolver.cares.v3.CaresDnsResolverConfig>`
* can be packed into this ``typed_dns_resolver_config``. This configuration replaces the
* :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`
* configuration which replaces :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`.
* During the transition period when
* :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`,
* :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`,
* and :ref:`Cluster.dns_resolution_config<envoy_v3_api_field_config.cluster.v3.Cluster.dns_resolution_config>`
* exist, Envoy will use
* :ref:`DnsCluster.typed_dns_resolver_config<envoy_v3_api_field_extensions.clusters.dns.v3.DnsCluster.typed_dns_resolver_config>`
* and ignore
* DNS resolver-related fields in :ref:`Cluster<envoy_v3_api_msg_config.cluster.v3.Cluster>` if the cluster is configured via the
* :ref:`Cluster.cluster_type<envoy_v3_api_field_config.cluster.v3.Cluster.cluster_type>` extension point with the
* :ref:`DnsCluster<envoy_v3_api_msg_extensions.clusters.dns.v3.DnsCluster>` extension type.
* Otherwise, see :ref:`Cluster.typed_dns_resolver_config<envoy_v3_api_field_config.cluster.v3.Cluster.typed_dns_resolver_config>`.
* [#extension-category: envoy.network.dns_resolver]
*
*
* .envoy.config.core.v3.TypedExtensionConfig typed_dns_resolver_config = 7;
*/
io.envoyproxy.envoy.config.core.v3.TypedExtensionConfigOrBuilder getTypedDnsResolverConfigOrBuilder();
/**
*
* The DNS IP address resolution policy. If this setting is not specified, the
* value defaults to
* :ref:`AUTO<envoy_v3_api_enum_value_extensions.clusters.common.dns.v3.DnsLookupFamily.AUTO>`.
*
*
* .envoy.extensions.clusters.common.dns.v3.DnsLookupFamily dns_lookup_family = 8;
* @return The enum numeric value on the wire for dnsLookupFamily.
*/
int getDnsLookupFamilyValue();
/**
*
* The DNS IP address resolution policy. If this setting is not specified, the
* value defaults to
* :ref:`AUTO<envoy_v3_api_enum_value_extensions.clusters.common.dns.v3.DnsLookupFamily.AUTO>`.
*
*
* .envoy.extensions.clusters.common.dns.v3.DnsLookupFamily dns_lookup_family = 8;
* @return The dnsLookupFamily.
*/
io.envoyproxy.envoy.extensions.clusters.common.dns.v3.DnsLookupFamily getDnsLookupFamily();
/**
*
* If true, all returned addresses are considered to be associated with a single endpoint,
* which maps to :ref:`logical DNS discovery <arch_overview_service_discovery_types_logical_dns>`
* semantics. Otherwise, each address is considered to be a separate endpoint, which maps to
* :ref:`strict DNS discovery <arch_overview_service_discovery_types_strict_dns>` semantics.
*
*
* bool all_addresses_in_single_endpoint = 9;
* @return The allAddressesInSingleEndpoint.
*/
boolean getAllAddressesInSingleEndpoint();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy