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

io.envoyproxy.envoy.config.route.v3.RouteActionOrBuilder 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/config/route/v3/route_components.proto

package io.envoyproxy.envoy.config.route.v3;

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

  /**
   * 
   * Indicates the upstream cluster to which the request should be routed
   * to.
   * 
* * string cluster = 1 [(.validate.rules) = { ... } */ java.lang.String getCluster(); /** *
   * Indicates the upstream cluster to which the request should be routed
   * to.
   * 
* * string cluster = 1 [(.validate.rules) = { ... } */ 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.
   * 
* * string cluster_header = 2 [(.validate.rules) = { ... } */ 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.
   * 
* * string cluster_header = 2 [(.validate.rules) = { ... } */ 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.config.route.v3.WeightedCluster weighted_clusters = 3; */ 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.config.route.v3.WeightedCluster weighted_clusters = 3; */ io.envoyproxy.envoy.config.route.v3.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.config.route.v3.WeightedCluster weighted_clusters = 3; */ io.envoyproxy.envoy.config.route.v3.WeightedClusterOrBuilder getWeightedClustersOrBuilder(); /** *
   * The HTTP status code to use when configured cluster is not found.
   * The default response code is 503 Service Unavailable.
   * 
* * .envoy.config.route.v3.RouteAction.ClusterNotFoundResponseCode cluster_not_found_response_code = 20 [(.validate.rules) = { ... } */ int getClusterNotFoundResponseCodeValue(); /** *
   * The HTTP status code to use when configured cluster is not found.
   * The default response code is 503 Service Unavailable.
   * 
* * .envoy.config.route.v3.RouteAction.ClusterNotFoundResponseCode cluster_not_found_response_code = 20 [(.validate.rules) = { ... } */ io.envoyproxy.envoy.config.route.v3.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_config.route.v3.RouteAction.weighted_clusters>`, metadata will be merged, with values
   * provided there taking precedence. The filter name should be specified as *envoy.lb*.
   * 
* * .envoy.config.core.v3.Metadata metadata_match = 4; */ 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_config.route.v3.RouteAction.weighted_clusters>`, metadata will be merged, with values
   * provided there taking precedence. The filter name should be specified as *envoy.lb*.
   * 
* * .envoy.config.core.v3.Metadata metadata_match = 4; */ io.envoyproxy.envoy.config.core.v3.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_config.route.v3.RouteAction.weighted_clusters>`, metadata will be merged, with values
   * provided there taking precedence. The filter name should be specified as *envoy.lb*.
   * 
* * .envoy.config.core.v3.Metadata metadata_match = 4; */ io.envoyproxy.envoy.config.core.v3.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.
   * .. attention::
   *   Pay careful attention to the use of trailing slashes in the
   *   :ref:`route's match <envoy_api_field_config.route.v3.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_config.route.v3.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; */ 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.
   * .. attention::
   *   Pay careful attention to the use of trailing slashes in the
   *   :ref:`route's match <envoy_api_field_config.route.v3.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_config.route.v3.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; */ com.google.protobuf.ByteString getPrefixRewriteBytes(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * this value.
   * 
* * string host_rewrite_literal = 6; */ java.lang.String getHostRewriteLiteral(); /** *
   * Indicates that during forwarding, the host header will be swapped with
   * this value.
   * 
* * string host_rewrite_literal = 6; */ com.google.protobuf.ByteString getHostRewriteLiteralBytes(); /** *
   * 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* or *logical_dns*. Setting this to true with other cluster
   * types has no effect.
   * 
* * .google.protobuf.BoolValue auto_host_rewrite = 7; */ 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* or *logical_dns*. Setting this to true with other cluster
   * types has no effect.
   * 
* * .google.protobuf.BoolValue auto_host_rewrite = 7; */ 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* or *logical_dns*. 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.
   * 
* * string host_rewrite_header = 29; */ java.lang.String getHostRewriteHeader(); /** *
   * 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.
   * 
* * string host_rewrite_header = 29; */ com.google.protobuf.ByteString getHostRewriteHeaderBytes(); /** *
   * 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; */ 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; */ 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_extensions.filters.network.http_connection_manager.v3.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_config.route.v3.RouteAction.timeout>`, which provides an upper bound
   * on the upstream response time; :ref:`idle_timeout
   * <envoy_api_field_config.route.v3.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; */ 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_extensions.filters.network.http_connection_manager.v3.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_config.route.v3.RouteAction.timeout>`, which provides an upper bound
   * on the upstream response time; :ref:`idle_timeout
   * <envoy_api_field_config.route.v3.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.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_extensions.filters.network.http_connection_manager.v3.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_config.route.v3.RouteAction.timeout>`, which provides an upper bound
   * on the upstream response time; :ref:`idle_timeout
   * <envoy_api_field_config.route.v3.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.config.route.v3.RetryPolicy retry_policy = 9; */ 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.config.route.v3.RetryPolicy retry_policy = 9; */ io.envoyproxy.envoy.config.route.v3.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.config.route.v3.RetryPolicy retry_policy = 9; */ io.envoyproxy.envoy.config.route.v3.RetryPolicyOrBuilder getRetryPolicyOrBuilder(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.config.route.v3.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ java.util.List getRequestMirrorPoliciesList(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.config.route.v3.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ io.envoyproxy.envoy.config.route.v3.RouteAction.RequestMirrorPolicy getRequestMirrorPolicies(int index); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.config.route.v3.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ int getRequestMirrorPoliciesCount(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.config.route.v3.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ java.util.List getRequestMirrorPoliciesOrBuilderList(); /** *
   * Indicates that the route has request mirroring policies.
   * 
* * repeated .envoy.config.route.v3.RouteAction.RequestMirrorPolicy request_mirror_policies = 30; */ io.envoyproxy.envoy.config.route.v3.RouteAction.RequestMirrorPolicyOrBuilder getRequestMirrorPoliciesOrBuilder( int index); /** *
   * Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
   * 
* * .envoy.config.core.v3.RoutingPriority priority = 11 [(.validate.rules) = { ... } */ int getPriorityValue(); /** *
   * Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
   * 
* * .envoy.config.core.v3.RoutingPriority priority = 11 [(.validate.rules) = { ... } */ io.envoyproxy.envoy.config.core.v3.RoutingPriority getPriority(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.config.route.v3.RateLimit rate_limits = 13; */ java.util.List getRateLimitsList(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.config.route.v3.RateLimit rate_limits = 13; */ io.envoyproxy.envoy.config.route.v3.RateLimit getRateLimits(int index); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.config.route.v3.RateLimit rate_limits = 13; */ int getRateLimitsCount(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.config.route.v3.RateLimit rate_limits = 13; */ java.util.List getRateLimitsOrBuilderList(); /** *
   * Specifies a set of rate limit configurations that could be applied to the
   * route.
   * 
* * repeated .envoy.config.route.v3.RateLimit rate_limits = 13; */ io.envoyproxy.envoy.config.route.v3.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_config.route.v3.VirtualHost.rate_limits>` are not applied to the
   * request.
   * 
* * .google.protobuf.BoolValue include_vh_rate_limits = 14; */ 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_config.route.v3.VirtualHost.rate_limits>` are not applied to the
   * request.
   * 
* * .google.protobuf.BoolValue include_vh_rate_limits = 14; */ 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_config.route.v3.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.config.route.v3.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.config.route.v3.RouteAction.HashPolicy hash_policy = 15; */ io.envoyproxy.envoy.config.route.v3.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.config.route.v3.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.config.route.v3.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.config.route.v3.RouteAction.HashPolicy hash_policy = 15; */ io.envoyproxy.envoy.config.route.v3.RouteAction.HashPolicyOrBuilder getHashPolicyOrBuilder( int index); /** *
   * Indicates that the route has a CORS policy.
   * 
* * .envoy.config.route.v3.CorsPolicy cors = 17; */ boolean hasCors(); /** *
   * Indicates that the route has a CORS policy.
   * 
* * .envoy.config.route.v3.CorsPolicy cors = 17; */ io.envoyproxy.envoy.config.route.v3.CorsPolicy getCors(); /** *
   * Indicates that the route has a CORS policy.
   * 
* * .envoy.config.route.v3.CorsPolicy cors = 17; */ io.envoyproxy.envoy.config.route.v3.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_config.route.v3.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_config.route.v3.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.
   * 
* * .google.protobuf.Duration max_grpc_timeout = 23; */ 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_config.route.v3.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_config.route.v3.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.
   * 
* * .google.protobuf.Duration max_grpc_timeout = 23; */ 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_config.route.v3.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_config.route.v3.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.
   * 
* * .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; */ 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; */ 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.config.route.v3.RouteAction.UpgradeConfig upgrade_configs = 25; */ java.util.List getUpgradeConfigsList(); /** * repeated .envoy.config.route.v3.RouteAction.UpgradeConfig upgrade_configs = 25; */ io.envoyproxy.envoy.config.route.v3.RouteAction.UpgradeConfig getUpgradeConfigs(int index); /** * repeated .envoy.config.route.v3.RouteAction.UpgradeConfig upgrade_configs = 25; */ int getUpgradeConfigsCount(); /** * repeated .envoy.config.route.v3.RouteAction.UpgradeConfig upgrade_configs = 25; */ java.util.List getUpgradeConfigsOrBuilderList(); /** * repeated .envoy.config.route.v3.RouteAction.UpgradeConfig upgrade_configs = 25; */ io.envoyproxy.envoy.config.route.v3.RouteAction.UpgradeConfigOrBuilder getUpgradeConfigsOrBuilder( int index); /** * .envoy.config.route.v3.RouteAction.InternalRedirectAction internal_redirect_action = 26; */ int getInternalRedirectActionValue(); /** * .envoy.config.route.v3.RouteAction.InternalRedirectAction internal_redirect_action = 26; */ io.envoyproxy.envoy.config.route.v3.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_config.route.v3.RouteAction.internal_redirect_action>`
   * is set to :ref:`HANDLE_INTERNAL_REDIRECT
   * <envoy_api_enum_value_config.route.v3.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_config.route.v3.RouteAction.internal_redirect_action>`
   * set to
   * :ref:`PASS_THROUGH_INTERNAL_REDIRECT
   * <envoy_api_enum_value_config.route.v3.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; */ 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_config.route.v3.RouteAction.internal_redirect_action>`
   * is set to :ref:`HANDLE_INTERNAL_REDIRECT
   * <envoy_api_enum_value_config.route.v3.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_config.route.v3.RouteAction.internal_redirect_action>`
   * set to
   * :ref:`PASS_THROUGH_INTERNAL_REDIRECT
   * <envoy_api_enum_value_config.route.v3.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.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_config.route.v3.RouteAction.internal_redirect_action>`
   * is set to :ref:`HANDLE_INTERNAL_REDIRECT
   * <envoy_api_enum_value_config.route.v3.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_config.route.v3.RouteAction.internal_redirect_action>`
   * set to
   * :ref:`PASS_THROUGH_INTERNAL_REDIRECT
   * <envoy_api_enum_value_config.route.v3.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.config.route.v3.HedgePolicy hedge_policy = 27; */ 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.config.route.v3.HedgePolicy hedge_policy = 27; */ io.envoyproxy.envoy.config.route.v3.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.config.route.v3.HedgePolicy hedge_policy = 27; */ io.envoyproxy.envoy.config.route.v3.HedgePolicyOrBuilder getHedgePolicyOrBuilder(); public io.envoyproxy.envoy.config.route.v3.RouteAction.ClusterSpecifierCase getClusterSpecifierCase(); public io.envoyproxy.envoy.config.route.v3.RouteAction.HostRewriteSpecifierCase getHostRewriteSpecifierCase(); }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy