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

io.envoyproxy.envoy.api.v2.route.RouteActionOrBuilder Maven / Gradle / Ivy

The newest version!
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: envoy/api/v2/route/route_components.proto

package io.envoyproxy.envoy.api.v2.route;

public interface RouteActionOrBuilder extends
    // @@protoc_insertion_point(interface_extends:envoy.api.v2.route.RouteAction)
    com.google.protobuf.MessageOrBuilder {

  /**
   * 
   * Indicates the upstream cluster to which the request should be routed
   * to.
   * 
* * string cluster = 1 [(.validate.rules) = { ... } * @return Whether the cluster field is set. */ boolean hasCluster(); /** *
   * Indicates the upstream cluster to which the request should be routed
   * to.
   * 
* * string cluster = 1 [(.validate.rules) = { ... } * @return The cluster. */ java.lang.String getCluster(); /** *
   * Indicates the upstream cluster to which the request should be routed
   * to.
   * 
* * string cluster = 1 [(.validate.rules) = { ... } * @return The bytes for cluster. */ com.google.protobuf.ByteString getClusterBytes(); /** *
   * Envoy will determine the cluster to route to by reading the value of the
   * HTTP header named by cluster_header from the request headers. If the
   * header is not found or the referenced cluster does not exist, Envoy will
   * return a 404 response.
   * .. attention::
   *   Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1
   *   *Host* header. Thus, if attempting to match on *Host*, match on *:authority* instead.
   * .. note::
   *   If the header appears multiple times only the first value is used.
   * 
* * string cluster_header = 2 [(.validate.rules) = { ... } * @return Whether the clusterHeader field is set. */ boolean hasClusterHeader(); /** *
   * Envoy will determine the cluster to route to by reading the value of the
   * HTTP header named by cluster_header from the request headers. If the
   * header is not found or the referenced cluster does not exist, Envoy will
   * return a 404 response.
   * .. attention::
   *   Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1
   *   *Host* header. Thus, if attempting to match on *Host*, match on *:authority* instead.
   * .. note::
   *   If the header appears multiple times only the first value is used.
   * 
* * string cluster_header = 2 [(.validate.rules) = { ... } * @return The clusterHeader. */ java.lang.String getClusterHeader(); /** *
   * Envoy will determine the cluster to route to by reading the value of the
   * HTTP header named by cluster_header from the request headers. If the
   * header is not found or the referenced cluster does not exist, Envoy will
   * return a 404 response.
   * .. attention::
   *   Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1
   *   *Host* header. Thus, if attempting to match on *Host*, match on *:authority* instead.
   * .. note::
   *   If the header appears multiple times only the first value is used.
   * 
* * string cluster_header = 2 [(.validate.rules) = { ... } * @return The bytes for clusterHeader. */ com.google.protobuf.ByteString getClusterHeaderBytes(); /** *
   * Multiple upstream clusters can be specified for a given route. The
   * request is routed to one of the upstream clusters based on weights
   * assigned to each cluster. See
   * :ref:`traffic splitting <config_http_conn_man_route_table_traffic_splitting_split>`
   * for additional documentation.
   * 
* * .envoy.api.v2.route.WeightedCluster weighted_clusters = 3; * @return Whether the weightedClusters field is set. */ boolean hasWeightedClusters(); /** *
   * Multiple upstream clusters can be specified for a given route. The
   * request is routed to one of the upstream clusters based on weights
   * assigned to each cluster. See
   * :ref:`traffic splitting <config_http_conn_man_route_table_traffic_splitting_split>`
   * for additional documentation.
   * 
* * .envoy.api.v2.route.WeightedCluster weighted_clusters = 3; * @return The weightedClusters. */ io.envoyproxy.envoy.api.v2.route.WeightedCluster getWeightedClusters(); /** *
   * Multiple upstream clusters can be specified for a given route. The
   * request is routed to one of the upstream clusters based on weights
   * assigned to each cluster. See
   * :ref:`traffic splitting <config_http_conn_man_route_table_traffic_splitting_split>`
   * for additional documentation.
   * 
* * .envoy.api.v2.route.WeightedCluster weighted_clusters = 3; */ io.envoyproxy.envoy.api.v2.route.WeightedClusterOrBuilder getWeightedClustersOrBuilder(); /** *
   * The HTTP status code to use when configured cluster is not found.
   * The default response code is 503 Service Unavailable.
   * 
* * .envoy.api.v2.route.RouteAction.ClusterNotFoundResponseCode cluster_not_found_response_code = 20 [(.validate.rules) = { ... } * @return The enum numeric value on the wire for clusterNotFoundResponseCode. */ int getClusterNotFoundResponseCodeValue(); /** *
   * The HTTP status code to use when configured cluster is not found.
   * The default response code is 503 Service Unavailable.
   * 
* * .envoy.api.v2.route.RouteAction.ClusterNotFoundResponseCode cluster_not_found_response_code = 20 [(.validate.rules) = { ... } * @return The clusterNotFoundResponseCode. */ io.envoyproxy.envoy.api.v2.route.RouteAction.ClusterNotFoundResponseCode getClusterNotFoundResponseCode(); /** *
   * Optional endpoint metadata match criteria used by the subset load balancer. Only endpoints
   * in the upstream cluster with metadata matching what's set in this field will be considered
   * for load balancing. If using :ref:`weighted_clusters
   * <envoy_api_field_route.RouteAction.weighted_clusters>`, metadata will be merged, with values
   * provided there taking precedence. The filter name should be specified as *envoy.lb*.
   * 
* * .envoy.api.v2.core.Metadata metadata_match = 4; * @return Whether the metadataMatch field is set. */ boolean hasMetadataMatch(); /** *
   * Optional endpoint metadata match criteria used by the subset load balancer. Only endpoints
   * in the upstream cluster with metadata matching what's set in this field will be considered
   * for load balancing. If using :ref:`weighted_clusters
   * <envoy_api_field_route.RouteAction.weighted_clusters>`, metadata will be merged, with values
   * provided there taking precedence. The filter name should be specified as *envoy.lb*.
   * 
* * .envoy.api.v2.core.Metadata metadata_match = 4; * @return The metadataMatch. */ io.envoyproxy.envoy.api.v2.core.Metadata getMetadataMatch(); /** *
   * Optional endpoint metadata match criteria used by the subset load balancer. Only endpoints
   * in the upstream cluster with metadata matching what's set in this field will be considered
   * for load balancing. If using :ref:`weighted_clusters
   * <envoy_api_field_route.RouteAction.weighted_clusters>`, metadata will be merged, with values
   * provided there taking precedence. The filter name should be specified as *envoy.lb*.
   * 
* * .envoy.api.v2.core.Metadata metadata_match = 4; */ io.envoyproxy.envoy.api.v2.core.MetadataOrBuilder getMetadataMatchOrBuilder(); /** *
   * Indicates that during forwarding, the matched prefix (or path) should be
   * swapped with this value. This option allows application URLs to be rooted
   * at a different path from those exposed at the reverse proxy layer. The router filter will
   * place the original path before rewrite into the :ref:`x-envoy-original-path
   * <config_http_filters_router_x-envoy-original-path>` header.
   * Only one of *prefix_rewrite* or
   * :ref:`regex_rewrite <envoy_api_field_route.RouteAction.regex_rewrite>`
   * may be specified.
   * .. attention::
   *   Pay careful attention to the use of trailing slashes in the
   *   :ref:`route's match <envoy_api_field_route.Route.match>` prefix value.
   *   Stripping a prefix from a path requires multiple Routes to handle all cases. For example,
   *   rewriting */prefix* to */* and */prefix/etc* to */etc* cannot be done in a single
   *   :ref:`Route <envoy_api_msg_route.Route>`, as shown by the below config entries:
   *   .. code-block:: yaml
   *     - match:
   *         prefix: "/prefix/"
   *       route:
   *         prefix_rewrite: "/"
   *     - match:
   *         prefix: "/prefix"
   *       route:
   *         prefix_rewrite: "/"
   *   Having above entries in the config, requests to */prefix* will be stripped to */*, while
   *   requests to */prefix/etc* will be stripped to */etc*.
   * 
* * string prefix_rewrite = 5 [(.validate.rules) = { ... } * @return The prefixRewrite. */ java.lang.String getPrefixRewrite(); /** *
   * Indicates that during forwarding, the matched prefix (or path) should be
   * swapped with this value. This option allows application URLs to be rooted
   * at a different path from those exposed at the reverse proxy layer. The router filter will
   * place the original path before rewrite into the :ref:`x-envoy-original-path
   * <config_http_filters_router_x-envoy-original-path>` header.
   * Only one of *prefix_rewrite* or
   * :ref:`regex_rewrite <envoy_api_field_route.RouteAction.regex_rewrite>`
   * may be specified.
   * .. attention::
   *   Pay careful attention to the use of trailing slashes in the
   *   :ref:`route's match <envoy_api_field_route.Route.match>` prefix value.
   *   Stripping a prefix from a path requires multiple Routes to handle all cases. For example,
   *   rewriting */prefix* to */* and */prefix/etc* to */etc* cannot be done in a single
   *   :ref:`Route <envoy_api_msg_route.Route>`, as shown by the below config entries:
   *   .. code-block:: yaml
   *     - match:
   *         prefix: "/prefix/"
   *       route:
   *         prefix_rewrite: "/"
   *     - match:
   *         prefix: "/prefix"
   *       route:
   *         prefix_rewrite: "/"
   *   Having above entries in the config, requests to */prefix* will be stripped to */*, while
   *   requests to */prefix/etc* will be stripped to */etc*.
   * 
* * string prefix_rewrite = 5 [(.validate.rules) = { ... } * @return The bytes for prefixRewrite. */ com.google.protobuf.ByteString getPrefixRewriteBytes(); /** *
   * Indicates that during forwarding, portions of the path that match the
   * pattern should be rewritten, even allowing the substitution of capture
   * groups from the pattern into the new path as specified by the rewrite
   * substitution string. This is useful to allow application paths to be
   * rewritten in a way that is aware of segments with variable content like
   * identifiers. The router filter will place the original path as it was
   * before the rewrite into the :ref:`x-envoy-original-path
   * <config_http_filters_router_x-envoy-original-path>` header.
   * Only one of :ref:`prefix_rewrite <envoy_api_field_route.RouteAction.prefix_rewrite>`
   * or *regex_rewrite* may be specified.
   * Examples using Google's `RE2 <https://github.com/google/re2>`_ engine:
   * * The path pattern ``^/service/([^/]+)(/.*)$`` paired with a substitution
   *   string of ``\2/instance/\1`` would transform ``/service/foo/v1/api``
   *   into ``/v1/api/instance/foo``.
   * * The pattern ``one`` paired with a substitution string of ``two`` would
   *   transform ``/xxx/one/yyy/one/zzz`` into ``/xxx/two/yyy/two/zzz``.
   * * The pattern ``^(.*?)one(.*)$`` paired with a substitution string of
   *   ``\1two\2`` would replace only the first occurrence of ``one``,
   *   transforming path ``/xxx/one/yyy/one/zzz`` into ``/xxx/two/yyy/one/zzz``.
   * * The pattern ``(?i)/xxx/`` paired with a substitution string of ``/yyy/``
   *   would do a case-insensitive match and transform path ``/aaa/XxX/bbb`` to
   *   ``/aaa/yyy/bbb``.
   * 
* * .envoy.type.matcher.RegexMatchAndSubstitute regex_rewrite = 32; * @return Whether the regexRewrite field is set. */ boolean hasRegexRewrite(); /** *
   * Indicates that during forwarding, portions of the path that match the
   * pattern should be rewritten, even allowing the substitution of capture
   * groups from the pattern into the new path as specified by the rewrite
   * substitution string. This is useful to allow application paths to be
   * rewritten in a way that is aware of segments with variable content like
   * identifiers. The router filter will place the original path as it was
   * before the rewrite into the :ref:`x-envoy-original-path
   * <config_http_filters_router_x-envoy-original-path>` header.
   * Only one of :ref:`prefix_rewrite <envoy_api_field_route.RouteAction.prefix_rewrite>`
   * or *regex_rewrite* may be specified.
   * Examples using Google's `RE2 <https://github.com/google/re2>`_ engine:
   * * The path pattern ``^/service/([^/]+)(/.*)$`` paired with a substitution
   *   string of ``\2/instance/\1`` would transform ``/service/foo/v1/api``
   *   into ``/v1/api/instance/foo``.
   * * The pattern ``one`` paired with a substitution string of ``two`` would
   *   transform ``/xxx/one/yyy/one/zzz`` into ``/xxx/two/yyy/two/zzz``.
   * * The pattern ``^(.*?)one(.*)$`` paired with a substitution string of
   *   ``\1two\2`` would replace only the first occurrence of ``one``,
   *   transforming path ``/xxx/one/yyy/one/zzz`` into ``/xxx/two/yyy/one/zzz``.
   * * The pattern ``(?i)/xxx/`` paired with a substitution string of ``/yyy/``
   *   would do a case-insensitive match and transform path ``/aaa/XxX/bbb`` to
   *   ``/aaa/yyy/bbb``.
   * 
* * .envoy.type.matcher.RegexMatchAndSubstitute regex_rewrite = 32; * @return The regexRewrite. */ io.envoyproxy.envoy.type.matcher.RegexMatchAndSubstitute getRegexRewrite(); /** *
   * Indicates that during forwarding, portions of the path that match the
   * pattern should be rewritten, even allowing the substitution of capture
   * groups from the pattern into the new path as specified by the rewrite
   * substitution string. This is useful to allow application paths to be
   * rewritten in a way that is aware of segments with variable content like
   * identifiers. The router filter will place the original path as it was
   * before the rewrite into the :ref:`x-envoy-original-path
   * <config_http_filters_router_x-envoy-original-path>` header.
   * Only one of :ref:`prefix_rewrite <envoy_api_field_route.RouteAction.prefix_rewrite>`
   * or *regex_rewrite* may be specified.
   * Examples using Google's `RE2 <https://github.com/google/re2>`_ engine:
   * * The path pattern ``^/service/([^/]+)(/.*)$`` paired with a substitution
   *   string of ``\2/instance/\1`` would transform ``/service/foo/v1/api``
   *   into ``/v1/api/instance/foo``.
   * * The pattern ``one`` paired with a substitution string of ``two`` would
   *   transform ``/xxx/one/yyy/one/zzz`` into ``/xxx/two/yyy/two/zzz``.
   * * The pattern ``^(.*?)one(.*)$`` paired with a substitution string of
   *   ``\1two\2`` would replace only the first occurrence of ``one``,
   *   transforming path ``/xxx/one/yyy/one/zzz`` into ``/xxx/two/yyy/one/zzz``.
   * * The pattern ``(?i)/xxx/`` paired with a substitution string of ``/yyy/``
   *   would do a case-insensitive match and transform path ``/aaa/XxX/bbb`` to
   *   ``/aaa/yyy/bbb``.
   * 
* * .envoy.type.matcher.RegexMatchAndSubstitute regex_rewrite = 32; */ io.envoyproxy.envoy.type.matcher.RegexMatchAndSubstituteOrBuilder getRegexRewriteOrBuilder(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * this value.
   * 
* * string host_rewrite = 6 [(.validate.rules) = { ... } * @return Whether the hostRewrite field is set. */ boolean hasHostRewrite(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * this value.
   * 
* * string host_rewrite = 6 [(.validate.rules) = { ... } * @return The hostRewrite. */ java.lang.String getHostRewrite(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * this value.
   * 
* * string host_rewrite = 6 [(.validate.rules) = { ... } * @return The bytes for hostRewrite. */ com.google.protobuf.ByteString getHostRewriteBytes(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * the hostname of the upstream host chosen by the cluster manager. This
   * option is applicable only when the destination cluster for a route is of
   * type ``STRICT_DNS``,  ``LOGICAL_DNS`` or ``STATIC``. For ``STATIC`` clusters, the
   * hostname attribute of the endpoint must be configured. Setting this to true
   * with other cluster types has no effect.
   * 
* * .google.protobuf.BoolValue auto_host_rewrite = 7; * @return Whether the autoHostRewrite field is set. */ boolean hasAutoHostRewrite(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * the hostname of the upstream host chosen by the cluster manager. This
   * option is applicable only when the destination cluster for a route is of
   * type ``STRICT_DNS``,  ``LOGICAL_DNS`` or ``STATIC``. For ``STATIC`` clusters, the
   * hostname attribute of the endpoint must be configured. Setting this to true
   * with other cluster types has no effect.
   * 
* * .google.protobuf.BoolValue auto_host_rewrite = 7; * @return The autoHostRewrite. */ com.google.protobuf.BoolValue getAutoHostRewrite(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * the hostname of the upstream host chosen by the cluster manager. This
   * option is applicable only when the destination cluster for a route is of
   * type ``STRICT_DNS``,  ``LOGICAL_DNS`` or ``STATIC``. For ``STATIC`` clusters, the
   * hostname attribute of the endpoint must be configured. Setting this to true
   * with other cluster types has no effect.
   * 
* * .google.protobuf.BoolValue auto_host_rewrite = 7; */ com.google.protobuf.BoolValueOrBuilder getAutoHostRewriteOrBuilder(); /** *
   * Indicates that during forwarding, the host header will be swapped with the content of given
   * downstream or :ref:`custom <config_http_conn_man_headers_custom_request_headers>` header.
   * If header value is empty, host header is left intact.
   * .. attention::
   *   Pay attention to the potential security implications of using this option. Provided header
   *   must come from trusted source.
   * .. note::
   *   If the header appears multiple times only the first value is used.
   * 
* * string auto_host_rewrite_header = 29 [(.validate.rules) = { ... } * @return Whether the autoHostRewriteHeader field is set. */ boolean hasAutoHostRewriteHeader(); /** *
   * Indicates that during forwarding, the host header will be swapped with the content of given
   * downstream or :ref:`custom <config_http_conn_man_headers_custom_request_headers>` header.
   * If header value is empty, host header is left intact.
   * .. attention::
   *   Pay attention to the potential security implications of using this option. Provided header
   *   must come from trusted source.
   * .. note::
   *   If the header appears multiple times only the first value is used.
   * 
* * string auto_host_rewrite_header = 29 [(.validate.rules) = { ... } * @return The autoHostRewriteHeader. */ java.lang.String getAutoHostRewriteHeader(); /** *
   * Indicates that during forwarding, the host header will be swapped with the content of given
   * downstream or :ref:`custom <config_http_conn_man_headers_custom_request_headers>` header.
   * If header value is empty, host header is left intact.
   * .. attention::
   *   Pay attention to the potential security implications of using this option. Provided header
   *   must come from trusted source.
   * .. note::
   *   If the header appears multiple times only the first value is used.
   * 
* * string auto_host_rewrite_header = 29 [(.validate.rules) = { ... } * @return The bytes for autoHostRewriteHeader. */ com.google.protobuf.ByteString getAutoHostRewriteHeaderBytes(); /** *
   * Specifies the upstream timeout for the route. If not specified, the default is 15s. This
   * spans between the point at which the entire downstream request (i.e. end-of-stream) has been
   * processed and when the upstream response has been completely processed. A value of 0 will
   * disable the route's timeout.
   * .. note::
   *   This timeout includes all retries. See also
   *   :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`,
   *   :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`, and the
   *   :ref:`retry overview <arch_overview_http_routing_retry>`.
   * 
* * .google.protobuf.Duration timeout = 8; * @return Whether the timeout field is set. */ boolean hasTimeout(); /** *
   * Specifies the upstream timeout for the route. If not specified, the default is 15s. This
   * spans between the point at which the entire downstream request (i.e. end-of-stream) has been
   * processed and when the upstream response has been completely processed. A value of 0 will
   * disable the route's timeout.
   * .. note::
   *   This timeout includes all retries. See also
   *   :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`,
   *   :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`, and the
   *   :ref:`retry overview <arch_overview_http_routing_retry>`.
   * 
* * .google.protobuf.Duration timeout = 8; * @return The timeout. */ com.google.protobuf.Duration getTimeout(); /** *
   * Specifies the upstream timeout for the route. If not specified, the default is 15s. This
   * spans between the point at which the entire downstream request (i.e. end-of-stream) has been
   * processed and when the upstream response has been completely processed. A value of 0 will
   * disable the route's timeout.
   * .. note::
   *   This timeout includes all retries. See also
   *   :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`,
   *   :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`, and the
   *   :ref:`retry overview <arch_overview_http_routing_retry>`.
   * 
* * .google.protobuf.Duration timeout = 8; */ com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder(); /** *
   * Specifies the idle timeout for the route. If not specified, there is no per-route idle timeout,
   * although the connection manager wide :ref:`stream_idle_timeout
   * <envoy_api_field_config.filter.network.http_connection_manager.v2.HttpConnectionManager.stream_idle_timeout>`
   * will still apply. A value of 0 will completely disable the route's idle timeout, even if a
   * connection manager stream idle timeout is configured.
   * The idle timeout is distinct to :ref:`timeout
   * <envoy_api_field_route.RouteAction.timeout>`, which provides an upper bound
   * on the upstream response time; :ref:`idle_timeout
   * <envoy_api_field_route.RouteAction.idle_timeout>` instead bounds the amount
   * of time the request's stream may be idle.
   * After header decoding, the idle timeout will apply on downstream and
   * upstream request events. Each time an encode/decode event for headers or
   * data is processed for the stream, the timer will be reset. If the timeout
   * fires, the stream is terminated with a 408 Request Timeout error code if no
   * upstream response header has been received, otherwise a stream reset
   * occurs.
   * 
* * .google.protobuf.Duration idle_timeout = 24; * @return Whether the idleTimeout field is set. */ boolean hasIdleTimeout(); /** *
   * Specifies the idle timeout for the route. If not specified, there is no per-route idle timeout,
   * although the connection manager wide :ref:`stream_idle_timeout
   * <envoy_api_field_config.filter.network.http_connection_manager.v2.HttpConnectionManager.stream_idle_timeout>`
   * will still apply. A value of 0 will completely disable the route's idle timeout, even if a
   * connection manager stream idle timeout is configured.
   * The idle timeout is distinct to :ref:`timeout
   * <envoy_api_field_route.RouteAction.timeout>`, which provides an upper bound
   * on the upstream response time; :ref:`idle_timeout
   * <envoy_api_field_route.RouteAction.idle_timeout>` instead bounds the amount
   * of time the request's stream may be idle.
   * After header decoding, the idle timeout will apply on downstream and
   * upstream request events. Each time an encode/decode event for headers or
   * data is processed for the stream, the timer will be reset. If the timeout
   * fires, the stream is terminated with a 408 Request Timeout error code if no
   * upstream response header has been received, otherwise a stream reset
   * occurs.
   * 
* * .google.protobuf.Duration idle_timeout = 24; * @return The idleTimeout. */ com.google.protobuf.Duration getIdleTimeout(); /** *
   * Specifies the idle timeout for the route. If not specified, there is no per-route idle timeout,
   * although the connection manager wide :ref:`stream_idle_timeout
   * <envoy_api_field_config.filter.network.http_connection_manager.v2.HttpConnectionManager.stream_idle_timeout>`
   * will still apply. A value of 0 will completely disable the route's idle timeout, even if a
   * connection manager stream idle timeout is configured.
   * The idle timeout is distinct to :ref:`timeout
   * <envoy_api_field_route.RouteAction.timeout>`, which provides an upper bound
   * on the upstream response time; :ref:`idle_timeout
   * <envoy_api_field_route.RouteAction.idle_timeout>` instead bounds the amount
   * of time the request's stream may be idle.
   * After header decoding, the idle timeout will apply on downstream and
   * upstream request events. Each time an encode/decode event for headers or
   * data is processed for the stream, the timer will be reset. If the timeout
   * fires, the stream is terminated with a 408 Request Timeout error code if no
   * upstream response header has been received, otherwise a stream reset
   * occurs.
   * 
* * .google.protobuf.Duration idle_timeout = 24; */ com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder(); /** *
   * Indicates that the route has a retry policy. Note that if this is set,
   * it'll take precedence over the virtual host level retry policy entirely
   * (e.g.: policies are not merged, most internal one becomes the enforced policy).
   * 
* * .envoy.api.v2.route.RetryPolicy retry_policy = 9; * @return Whether the retryPolicy field is set. */ boolean hasRetryPolicy(); /** *
   * Indicates that the route has a retry policy. Note that if this is set,
   * it'll take precedence over the virtual host level retry policy entirely
   * (e.g.: policies are not merged, most internal one becomes the enforced policy).
   * 
* * .envoy.api.v2.route.RetryPolicy retry_policy = 9; * @return The retryPolicy. */ io.envoyproxy.envoy.api.v2.route.RetryPolicy getRetryPolicy(); /** *
   * Indicates that the route has a retry policy. Note that if this is set,
   * it'll take precedence over the virtual host level retry policy entirely
   * (e.g.: policies are not merged, most internal one becomes the enforced policy).
   * 
* * .envoy.api.v2.route.RetryPolicy retry_policy = 9; */ io.envoyproxy.envoy.api.v2.route.RetryPolicyOrBuilder getRetryPolicyOrBuilder(); /** *
   * [#not-implemented-hide:]
   * Specifies the configuration for retry policy extension. Note that if this is set, it'll take
   * precedence over the virtual host level retry policy entirely (e.g.: policies are not merged,
   * most internal one becomes the enforced policy). :ref:`Retry policy <envoy_api_field_route.VirtualHost.retry_policy>`
   * should not be set if this field is used.
   * 
* * .google.protobuf.Any retry_policy_typed_config = 33; * @return Whether the retryPolicyTypedConfig field is set. */ boolean hasRetryPolicyTypedConfig(); /** *
   * [#not-implemented-hide:]
   * Specifies the configuration for retry policy extension. Note that if this is set, it'll take
   * precedence over the virtual host level retry policy entirely (e.g.: policies are not merged,
   * most internal one becomes the enforced policy). :ref:`Retry policy <envoy_api_field_route.VirtualHost.retry_policy>`
   * should not be set if this field is used.
   * 
* * .google.protobuf.Any retry_policy_typed_config = 33; * @return The retryPolicyTypedConfig. */ com.google.protobuf.Any getRetryPolicyTypedConfig(); /** *
   * [#not-implemented-hide:]
   * Specifies the configuration for retry policy extension. Note that if this is set, it'll take
   * precedence over the virtual host level retry policy entirely (e.g.: policies are not merged,
   * most internal one becomes the enforced policy). :ref:`Retry policy <envoy_api_field_route.VirtualHost.retry_policy>`
   * should not be set if this field is used.
   * 
* * .google.protobuf.Any retry_policy_typed_config = 33; */ com.google.protobuf.AnyOrBuilder getRetryPolicyTypedConfigOrBuilder(); /** *
   * Indicates that the route has a request mirroring policy.
   * .. attention::
   *   This field has been deprecated in favor of `request_mirror_policies` which supports one or
   *   more mirroring policies.
   * 
* * .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policy = 10 [deprecated = true]; * @deprecated envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated. * See envoy/api/v2/route/route_components.proto;l=934 * @return Whether the requestMirrorPolicy field is set. */ @java.lang.Deprecated boolean hasRequestMirrorPolicy(); /** *
   * Indicates that the route has a request mirroring policy.
   * .. attention::
   *   This field has been deprecated in favor of `request_mirror_policies` which supports one or
   *   more mirroring policies.
   * 
* * .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policy = 10 [deprecated = true]; * @deprecated envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated. * See envoy/api/v2/route/route_components.proto;l=934 * @return The requestMirrorPolicy. */ @java.lang.Deprecated io.envoyproxy.envoy.api.v2.route.RouteAction.RequestMirrorPolicy getRequestMirrorPolicy(); /** *
   * Indicates that the route has a request mirroring policy.
   * .. attention::
   *   This field has been deprecated in favor of `request_mirror_policies` which supports one or
   *   more mirroring policies.
   * 
* * .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policy = 10 [deprecated = true]; */ @java.lang.Deprecated io.envoyproxy.envoy.api.v2.route.RouteAction.RequestMirrorPolicyOrBuilder getRequestMirrorPolicyOrBuilder(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ java.util.List getRequestMirrorPoliciesList(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ io.envoyproxy.envoy.api.v2.route.RouteAction.RequestMirrorPolicy getRequestMirrorPolicies(int index); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ int getRequestMirrorPoliciesCount(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ java.util.List getRequestMirrorPoliciesOrBuilderList(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ io.envoyproxy.envoy.api.v2.route.RouteAction.RequestMirrorPolicyOrBuilder getRequestMirrorPoliciesOrBuilder( int index); /** *
   * Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
   * 
* * .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... } * @return The enum numeric value on the wire for priority. */ int getPriorityValue(); /** *
   * Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
   * 
* * .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... } * @return The priority. */ io.envoyproxy.envoy.api.v2.core.RoutingPriority getPriority(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.api.v2.route.RateLimit rate_limits = 13; */ java.util.List getRateLimitsList(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.api.v2.route.RateLimit rate_limits = 13; */ io.envoyproxy.envoy.api.v2.route.RateLimit getRateLimits(int index); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.api.v2.route.RateLimit rate_limits = 13; */ int getRateLimitsCount(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.api.v2.route.RateLimit rate_limits = 13; */ java.util.List getRateLimitsOrBuilderList(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.api.v2.route.RateLimit rate_limits = 13; */ io.envoyproxy.envoy.api.v2.route.RateLimitOrBuilder getRateLimitsOrBuilder( int index); /** *
   * Specifies if the rate limit filter should include the virtual host rate
   * limits. By default, if the route configured rate limits, the virtual host
   * :ref:`rate_limits <envoy_api_field_route.VirtualHost.rate_limits>` are not applied to the
   * request.
   * 
* * .google.protobuf.BoolValue include_vh_rate_limits = 14; * @return Whether the includeVhRateLimits field is set. */ boolean hasIncludeVhRateLimits(); /** *
   * Specifies if the rate limit filter should include the virtual host rate
   * limits. By default, if the route configured rate limits, the virtual host
   * :ref:`rate_limits <envoy_api_field_route.VirtualHost.rate_limits>` are not applied to the
   * request.
   * 
* * .google.protobuf.BoolValue include_vh_rate_limits = 14; * @return The includeVhRateLimits. */ com.google.protobuf.BoolValue getIncludeVhRateLimits(); /** *
   * Specifies if the rate limit filter should include the virtual host rate
   * limits. By default, if the route configured rate limits, the virtual host
   * :ref:`rate_limits <envoy_api_field_route.VirtualHost.rate_limits>` are not applied to the
   * request.
   * 
* * .google.protobuf.BoolValue include_vh_rate_limits = 14; */ com.google.protobuf.BoolValueOrBuilder getIncludeVhRateLimitsOrBuilder(); /** *
   * Specifies a list of hash policies to use for ring hash load balancing. Each
   * hash policy is evaluated individually and the combined result is used to
   * route the request. The method of combination is deterministic such that
   * identical lists of hash policies will produce the same hash. Since a hash
   * policy examines specific parts of a request, it can fail to produce a hash
   * (i.e. if the hashed header is not present). If (and only if) all configured
   * hash policies fail to generate a hash, no hash will be produced for
   * the route. In this case, the behavior is the same as if no hash policies
   * were specified (i.e. the ring hash load balancer will choose a random
   * backend). If a hash policy has the "terminal" attribute set to true, and
   * there is already a hash generated, the hash is returned immediately,
   * ignoring the rest of the hash policy list.
   * 
* * repeated .envoy.api.v2.route.RouteAction.HashPolicy hash_policy = 15; */ java.util.List getHashPolicyList(); /** *
   * Specifies a list of hash policies to use for ring hash load balancing. Each
   * hash policy is evaluated individually and the combined result is used to
   * route the request. The method of combination is deterministic such that
   * identical lists of hash policies will produce the same hash. Since a hash
   * policy examines specific parts of a request, it can fail to produce a hash
   * (i.e. if the hashed header is not present). If (and only if) all configured
   * hash policies fail to generate a hash, no hash will be produced for
   * the route. In this case, the behavior is the same as if no hash policies
   * were specified (i.e. the ring hash load balancer will choose a random
   * backend). If a hash policy has the "terminal" attribute set to true, and
   * there is already a hash generated, the hash is returned immediately,
   * ignoring the rest of the hash policy list.
   * 
* * repeated .envoy.api.v2.route.RouteAction.HashPolicy hash_policy = 15; */ io.envoyproxy.envoy.api.v2.route.RouteAction.HashPolicy getHashPolicy(int index); /** *
   * Specifies a list of hash policies to use for ring hash load balancing. Each
   * hash policy is evaluated individually and the combined result is used to
   * route the request. The method of combination is deterministic such that
   * identical lists of hash policies will produce the same hash. Since a hash
   * policy examines specific parts of a request, it can fail to produce a hash
   * (i.e. if the hashed header is not present). If (and only if) all configured
   * hash policies fail to generate a hash, no hash will be produced for
   * the route. In this case, the behavior is the same as if no hash policies
   * were specified (i.e. the ring hash load balancer will choose a random
   * backend). If a hash policy has the "terminal" attribute set to true, and
   * there is already a hash generated, the hash is returned immediately,
   * ignoring the rest of the hash policy list.
   * 
* * repeated .envoy.api.v2.route.RouteAction.HashPolicy hash_policy = 15; */ int getHashPolicyCount(); /** *
   * Specifies a list of hash policies to use for ring hash load balancing. Each
   * hash policy is evaluated individually and the combined result is used to
   * route the request. The method of combination is deterministic such that
   * identical lists of hash policies will produce the same hash. Since a hash
   * policy examines specific parts of a request, it can fail to produce a hash
   * (i.e. if the hashed header is not present). If (and only if) all configured
   * hash policies fail to generate a hash, no hash will be produced for
   * the route. In this case, the behavior is the same as if no hash policies
   * were specified (i.e. the ring hash load balancer will choose a random
   * backend). If a hash policy has the "terminal" attribute set to true, and
   * there is already a hash generated, the hash is returned immediately,
   * ignoring the rest of the hash policy list.
   * 
* * repeated .envoy.api.v2.route.RouteAction.HashPolicy hash_policy = 15; */ java.util.List getHashPolicyOrBuilderList(); /** *
   * Specifies a list of hash policies to use for ring hash load balancing. Each
   * hash policy is evaluated individually and the combined result is used to
   * route the request. The method of combination is deterministic such that
   * identical lists of hash policies will produce the same hash. Since a hash
   * policy examines specific parts of a request, it can fail to produce a hash
   * (i.e. if the hashed header is not present). If (and only if) all configured
   * hash policies fail to generate a hash, no hash will be produced for
   * the route. In this case, the behavior is the same as if no hash policies
   * were specified (i.e. the ring hash load balancer will choose a random
   * backend). If a hash policy has the "terminal" attribute set to true, and
   * there is already a hash generated, the hash is returned immediately,
   * ignoring the rest of the hash policy list.
   * 
* * repeated .envoy.api.v2.route.RouteAction.HashPolicy hash_policy = 15; */ io.envoyproxy.envoy.api.v2.route.RouteAction.HashPolicyOrBuilder getHashPolicyOrBuilder( int index); /** *
   * Indicates that the route has a CORS policy.
   * 
* * .envoy.api.v2.route.CorsPolicy cors = 17; * @return Whether the cors field is set. */ boolean hasCors(); /** *
   * Indicates that the route has a CORS policy.
   * 
* * .envoy.api.v2.route.CorsPolicy cors = 17; * @return The cors. */ io.envoyproxy.envoy.api.v2.route.CorsPolicy getCors(); /** *
   * Indicates that the route has a CORS policy.
   * 
* * .envoy.api.v2.route.CorsPolicy cors = 17; */ io.envoyproxy.envoy.api.v2.route.CorsPolicyOrBuilder getCorsOrBuilder(); /** *
   * If present, and the request is a gRPC request, use the
   * `grpc-timeout header <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_,
   * or its default value (infinity) instead of
   * :ref:`timeout <envoy_api_field_route.RouteAction.timeout>`, but limit the applied timeout
   * to the maximum value specified here. If configured as 0, the maximum allowed timeout for
   * gRPC requests is infinity. If not configured at all, the `grpc-timeout` header is not used
   * and gRPC requests time out like any other requests using
   * :ref:`timeout <envoy_api_field_route.RouteAction.timeout>` or its default.
   * This can be used to prevent unexpected upstream request timeouts due to potentially long
   * time gaps between gRPC request and response in gRPC streaming mode.
   * .. note::
   *    If a timeout is specified using :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`, it takes
   *    precedence over `grpc-timeout header <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_, when
   *    both are present. See also
   *    :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`,
   *    :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`, and the
   *    :ref:`retry overview <arch_overview_http_routing_retry>`.
   * 
* * .google.protobuf.Duration max_grpc_timeout = 23; * @return Whether the maxGrpcTimeout field is set. */ boolean hasMaxGrpcTimeout(); /** *
   * If present, and the request is a gRPC request, use the
   * `grpc-timeout header <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_,
   * or its default value (infinity) instead of
   * :ref:`timeout <envoy_api_field_route.RouteAction.timeout>`, but limit the applied timeout
   * to the maximum value specified here. If configured as 0, the maximum allowed timeout for
   * gRPC requests is infinity. If not configured at all, the `grpc-timeout` header is not used
   * and gRPC requests time out like any other requests using
   * :ref:`timeout <envoy_api_field_route.RouteAction.timeout>` or its default.
   * This can be used to prevent unexpected upstream request timeouts due to potentially long
   * time gaps between gRPC request and response in gRPC streaming mode.
   * .. note::
   *    If a timeout is specified using :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`, it takes
   *    precedence over `grpc-timeout header <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_, when
   *    both are present. See also
   *    :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`,
   *    :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`, and the
   *    :ref:`retry overview <arch_overview_http_routing_retry>`.
   * 
* * .google.protobuf.Duration max_grpc_timeout = 23; * @return The maxGrpcTimeout. */ com.google.protobuf.Duration getMaxGrpcTimeout(); /** *
   * If present, and the request is a gRPC request, use the
   * `grpc-timeout header <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_,
   * or its default value (infinity) instead of
   * :ref:`timeout <envoy_api_field_route.RouteAction.timeout>`, but limit the applied timeout
   * to the maximum value specified here. If configured as 0, the maximum allowed timeout for
   * gRPC requests is infinity. If not configured at all, the `grpc-timeout` header is not used
   * and gRPC requests time out like any other requests using
   * :ref:`timeout <envoy_api_field_route.RouteAction.timeout>` or its default.
   * This can be used to prevent unexpected upstream request timeouts due to potentially long
   * time gaps between gRPC request and response in gRPC streaming mode.
   * .. note::
   *    If a timeout is specified using :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`, it takes
   *    precedence over `grpc-timeout header <https://github.com/grpc/grpc/blob/master/doc/PROTOCOL-HTTP2.md>`_, when
   *    both are present. See also
   *    :ref:`config_http_filters_router_x-envoy-upstream-rq-timeout-ms`,
   *    :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms`, and the
   *    :ref:`retry overview <arch_overview_http_routing_retry>`.
   * 
* * .google.protobuf.Duration max_grpc_timeout = 23; */ com.google.protobuf.DurationOrBuilder getMaxGrpcTimeoutOrBuilder(); /** *
   * If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting
   * the provided duration from the header. This is useful in allowing Envoy to set its global
   * timeout to be less than that of the deadline imposed by the calling client, which makes it more
   * likely that Envoy will handle the timeout instead of having the call canceled by the client.
   * The offset will only be applied if the provided grpc_timeout is greater than the offset. This
   * ensures that the offset will only ever decrease the timeout and never set it to 0 (meaning
   * infinity).
   * 
* * .google.protobuf.Duration grpc_timeout_offset = 28; * @return Whether the grpcTimeoutOffset field is set. */ boolean hasGrpcTimeoutOffset(); /** *
   * If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting
   * the provided duration from the header. This is useful in allowing Envoy to set its global
   * timeout to be less than that of the deadline imposed by the calling client, which makes it more
   * likely that Envoy will handle the timeout instead of having the call canceled by the client.
   * The offset will only be applied if the provided grpc_timeout is greater than the offset. This
   * ensures that the offset will only ever decrease the timeout and never set it to 0 (meaning
   * infinity).
   * 
* * .google.protobuf.Duration grpc_timeout_offset = 28; * @return The grpcTimeoutOffset. */ com.google.protobuf.Duration getGrpcTimeoutOffset(); /** *
   * If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting
   * the provided duration from the header. This is useful in allowing Envoy to set its global
   * timeout to be less than that of the deadline imposed by the calling client, which makes it more
   * likely that Envoy will handle the timeout instead of having the call canceled by the client.
   * The offset will only be applied if the provided grpc_timeout is greater than the offset. This
   * ensures that the offset will only ever decrease the timeout and never set it to 0 (meaning
   * infinity).
   * 
* * .google.protobuf.Duration grpc_timeout_offset = 28; */ com.google.protobuf.DurationOrBuilder getGrpcTimeoutOffsetOrBuilder(); /** * repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25; */ java.util.List getUpgradeConfigsList(); /** * repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25; */ io.envoyproxy.envoy.api.v2.route.RouteAction.UpgradeConfig getUpgradeConfigs(int index); /** * repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25; */ int getUpgradeConfigsCount(); /** * repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25; */ java.util.List getUpgradeConfigsOrBuilderList(); /** * repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25; */ io.envoyproxy.envoy.api.v2.route.RouteAction.UpgradeConfigOrBuilder getUpgradeConfigsOrBuilder( int index); /** * .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26; * @return The enum numeric value on the wire for internalRedirectAction. */ int getInternalRedirectActionValue(); /** * .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26; * @return The internalRedirectAction. */ io.envoyproxy.envoy.api.v2.route.RouteAction.InternalRedirectAction getInternalRedirectAction(); /** *
   * An internal redirect is handled, iff the number of previous internal redirects that a
   * downstream request has encountered is lower than this value, and
   * :ref:`internal_redirect_action <envoy_api_field_route.RouteAction.internal_redirect_action>`
   * is set to :ref:`HANDLE_INTERNAL_REDIRECT
   * <envoy_api_enum_value_route.RouteAction.InternalRedirectAction.HANDLE_INTERNAL_REDIRECT>`
   * In the case where a downstream request is bounced among multiple routes by internal redirect,
   * the first route that hits this threshold, or has
   * :ref:`internal_redirect_action <envoy_api_field_route.RouteAction.internal_redirect_action>`
   * set to
   * :ref:`PASS_THROUGH_INTERNAL_REDIRECT
   * <envoy_api_enum_value_route.RouteAction.InternalRedirectAction.PASS_THROUGH_INTERNAL_REDIRECT>`
   * will pass the redirect back to downstream.
   * If not specified, at most one redirect will be followed.
   * 
* * .google.protobuf.UInt32Value max_internal_redirects = 31; * @return Whether the maxInternalRedirects field is set. */ boolean hasMaxInternalRedirects(); /** *
   * An internal redirect is handled, iff the number of previous internal redirects that a
   * downstream request has encountered is lower than this value, and
   * :ref:`internal_redirect_action <envoy_api_field_route.RouteAction.internal_redirect_action>`
   * is set to :ref:`HANDLE_INTERNAL_REDIRECT
   * <envoy_api_enum_value_route.RouteAction.InternalRedirectAction.HANDLE_INTERNAL_REDIRECT>`
   * In the case where a downstream request is bounced among multiple routes by internal redirect,
   * the first route that hits this threshold, or has
   * :ref:`internal_redirect_action <envoy_api_field_route.RouteAction.internal_redirect_action>`
   * set to
   * :ref:`PASS_THROUGH_INTERNAL_REDIRECT
   * <envoy_api_enum_value_route.RouteAction.InternalRedirectAction.PASS_THROUGH_INTERNAL_REDIRECT>`
   * will pass the redirect back to downstream.
   * If not specified, at most one redirect will be followed.
   * 
* * .google.protobuf.UInt32Value max_internal_redirects = 31; * @return The maxInternalRedirects. */ com.google.protobuf.UInt32Value getMaxInternalRedirects(); /** *
   * An internal redirect is handled, iff the number of previous internal redirects that a
   * downstream request has encountered is lower than this value, and
   * :ref:`internal_redirect_action <envoy_api_field_route.RouteAction.internal_redirect_action>`
   * is set to :ref:`HANDLE_INTERNAL_REDIRECT
   * <envoy_api_enum_value_route.RouteAction.InternalRedirectAction.HANDLE_INTERNAL_REDIRECT>`
   * In the case where a downstream request is bounced among multiple routes by internal redirect,
   * the first route that hits this threshold, or has
   * :ref:`internal_redirect_action <envoy_api_field_route.RouteAction.internal_redirect_action>`
   * set to
   * :ref:`PASS_THROUGH_INTERNAL_REDIRECT
   * <envoy_api_enum_value_route.RouteAction.InternalRedirectAction.PASS_THROUGH_INTERNAL_REDIRECT>`
   * will pass the redirect back to downstream.
   * If not specified, at most one redirect will be followed.
   * 
* * .google.protobuf.UInt32Value max_internal_redirects = 31; */ com.google.protobuf.UInt32ValueOrBuilder getMaxInternalRedirectsOrBuilder(); /** *
   * Indicates that the route has a hedge policy. Note that if this is set,
   * it'll take precedence over the virtual host level hedge policy entirely
   * (e.g.: policies are not merged, most internal one becomes the enforced policy).
   * 
* * .envoy.api.v2.route.HedgePolicy hedge_policy = 27; * @return Whether the hedgePolicy field is set. */ boolean hasHedgePolicy(); /** *
   * Indicates that the route has a hedge policy. Note that if this is set,
   * it'll take precedence over the virtual host level hedge policy entirely
   * (e.g.: policies are not merged, most internal one becomes the enforced policy).
   * 
* * .envoy.api.v2.route.HedgePolicy hedge_policy = 27; * @return The hedgePolicy. */ io.envoyproxy.envoy.api.v2.route.HedgePolicy getHedgePolicy(); /** *
   * Indicates that the route has a hedge policy. Note that if this is set,
   * it'll take precedence over the virtual host level hedge policy entirely
   * (e.g.: policies are not merged, most internal one becomes the enforced policy).
   * 
* * .envoy.api.v2.route.HedgePolicy hedge_policy = 27; */ io.envoyproxy.envoy.api.v2.route.HedgePolicyOrBuilder getHedgePolicyOrBuilder(); public io.envoyproxy.envoy.api.v2.route.RouteAction.ClusterSpecifierCase getClusterSpecifierCase(); public io.envoyproxy.envoy.api.v2.route.RouteAction.HostRewriteSpecifierCase getHostRewriteSpecifierCase(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy