Interface RouteActionOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
RouteAction, RouteAction.Builder

public interface RouteActionOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Summary

    Modifier and Type
    Method
    Description
    com.google.protobuf.BoolValue
    Indicates that during forwarding, the host header will be swapped with the hostname of the upstream host chosen by the cluster manager.
    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.
    com.google.protobuf.ByteString
    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.
    com.google.protobuf.BoolValueOrBuilder
    Indicates that during forwarding, the host header will be swapped with the hostname of the upstream host chosen by the cluster manager.
    Indicates the upstream cluster to which the request should be routed to.
    com.google.protobuf.ByteString
    Indicates the upstream cluster to which the request should be routed to.
    Envoy will determine the cluster to route to by reading the value of the HTTP header named by cluster_header from the request headers.
    com.google.protobuf.ByteString
    Envoy will determine the cluster to route to by reading the value of the HTTP header named by cluster_header from the request headers.
    The HTTP status code to use when configured cluster is not found.
    int
    The HTTP status code to use when configured cluster is not found.
     
    Indicates that the route has a CORS policy.
    Indicates that the route has a CORS policy.
    com.google.protobuf.Duration
    If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting the provided duration from the header.
    com.google.protobuf.DurationOrBuilder
    If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting the provided duration from the header.
    getHashPolicy(int index)
    Specifies a list of hash policies to use for ring hash load balancing.
    int
    Specifies a list of hash policies to use for ring hash load balancing.
    Specifies a list of hash policies to use for ring hash load balancing.
    Specifies a list of hash policies to use for ring hash load balancing.
    Specifies a list of hash policies to use for ring hash load balancing.
    Indicates that the route has a hedge policy.
    Indicates that the route has a hedge policy.
    Indicates that during forwarding, the host header will be swapped with this value.
    com.google.protobuf.ByteString
    Indicates that during forwarding, the host header will be swapped with this value.
     
    com.google.protobuf.Duration
    Specifies the idle timeout for the route.
    com.google.protobuf.DurationOrBuilder
    Specifies the idle timeout for the route.
    com.google.protobuf.BoolValue
    Specifies if the rate limit filter should include the virtual host rate limits.
    com.google.protobuf.BoolValueOrBuilder
    Specifies if the rate limit filter should include the virtual host rate limits.
    .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
    int
    .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
    com.google.protobuf.Duration
    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.
    com.google.protobuf.DurationOrBuilder
    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.
    com.google.protobuf.UInt32Value
    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.
    com.google.protobuf.UInt32ValueOrBuilder
    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.
    Optional endpoint metadata match criteria used by the subset load balancer.
    Optional endpoint metadata match criteria used by the subset load balancer.
    Indicates that during forwarding, the matched prefix (or path) should be swapped with this value.
    com.google.protobuf.ByteString
    Indicates that during forwarding, the matched prefix (or path) should be swapped with this value.
    Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
    int
    Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
    getRateLimits(int index)
    Specifies a set of rate limit configurations that could be applied to the route.
    int
    Specifies a set of rate limit configurations that could be applied to the route.
    Specifies a set of rate limit configurations that could be applied to the route.
    Specifies a set of rate limit configurations that could be applied to the route.
    Specifies a set of rate limit configurations that could be applied to the route.
    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.
    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.
    Indicates that the route has request mirroring policies.
    int
    Indicates that the route has request mirroring policies.
    Indicates that the route has request mirroring policies.
    Indicates that the route has request mirroring policies.
    Indicates that the route has request mirroring policies.
    Deprecated.
    envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated.
    Deprecated.
    Indicates that the route has a retry policy.
    Indicates that the route has a retry policy.
    com.google.protobuf.Any
    [#not-implemented-hide:] Specifies the configuration for retry policy extension.
    com.google.protobuf.AnyOrBuilder
    [#not-implemented-hide:] Specifies the configuration for retry policy extension.
    com.google.protobuf.Duration
    Specifies the upstream timeout for the route.
    com.google.protobuf.DurationOrBuilder
    Specifies the upstream timeout for the route.
    getUpgradeConfigs(int index)
    repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    int
    repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    Multiple upstream clusters can be specified for a given route.
    Multiple upstream clusters can be specified for a given route.
    boolean
    Indicates that during forwarding, the host header will be swapped with the hostname of the upstream host chosen by the cluster manager.
    boolean
    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.
    boolean
    Indicates the upstream cluster to which the request should be routed to.
    boolean
    Envoy will determine the cluster to route to by reading the value of the HTTP header named by cluster_header from the request headers.
    boolean
    Indicates that the route has a CORS policy.
    boolean
    If present, Envoy will adjust the timeout provided by the `grpc-timeout` header by subtracting the provided duration from the header.
    boolean
    Indicates that the route has a hedge policy.
    boolean
    Indicates that during forwarding, the host header will be swapped with this value.
    boolean
    Specifies the idle timeout for the route.
    boolean
    Specifies if the rate limit filter should include the virtual host rate limits.
    boolean
    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.
    boolean
    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.
    boolean
    Optional endpoint metadata match criteria used by the subset load balancer.
    boolean
    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.
    boolean
    Deprecated.
    envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated.
    boolean
    Indicates that the route has a retry policy.
    boolean
    [#not-implemented-hide:] Specifies the configuration for retry policy extension.
    boolean
    Specifies the upstream timeout for the route.
    boolean
    Multiple upstream clusters can be specified for a given route.

    Methods inherited from interface com.google.protobuf.MessageLiteOrBuilder

    isInitialized

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDefaultInstanceForType, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Method Details

    • hasCluster

      boolean hasCluster()
       Indicates the upstream cluster to which the request should be routed
       to.
       
      string cluster = 1 [(.validate.rules) = { ... }
      Returns:
      Whether the cluster field is set.
    • getCluster

      String getCluster()
       Indicates the upstream cluster to which the request should be routed
       to.
       
      string cluster = 1 [(.validate.rules) = { ... }
      Returns:
      The cluster.
    • getClusterBytes

      com.google.protobuf.ByteString getClusterBytes()
       Indicates the upstream cluster to which the request should be routed
       to.
       
      string cluster = 1 [(.validate.rules) = { ... }
      Returns:
      The bytes for cluster.
    • hasClusterHeader

      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) = { ... }
      Returns:
      Whether the clusterHeader field is set.
    • getClusterHeader

      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) = { ... }
      Returns:
      The clusterHeader.
    • getClusterHeaderBytes

      com.google.protobuf.ByteString getClusterHeaderBytes()
       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) = { ... }
      Returns:
      The bytes for clusterHeader.
    • hasWeightedClusters

      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;
      Returns:
      Whether the weightedClusters field is set.
    • getWeightedClusters

      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;
      Returns:
      The weightedClusters.
    • getWeightedClustersOrBuilder

      WeightedClusterOrBuilder getWeightedClustersOrBuilder()
       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;
    • getClusterNotFoundResponseCodeValue

      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) = { ... }
      Returns:
      The enum numeric value on the wire for clusterNotFoundResponseCode.
    • getClusterNotFoundResponseCode

      RouteAction.ClusterNotFoundResponseCode getClusterNotFoundResponseCode()
       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) = { ... }
      Returns:
      The clusterNotFoundResponseCode.
    • hasMetadataMatch

      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;
      Returns:
      Whether the metadataMatch field is set.
    • getMetadataMatch

      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;
      Returns:
      The metadataMatch.
    • getMetadataMatchOrBuilder

      MetadataOrBuilder getMetadataMatchOrBuilder()
       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;
    • getPrefixRewrite

      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) = { ... }
      Returns:
      The prefixRewrite.
    • getPrefixRewriteBytes

      com.google.protobuf.ByteString getPrefixRewriteBytes()
       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) = { ... }
      Returns:
      The bytes for prefixRewrite.
    • hasRegexRewrite

      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;
      Returns:
      Whether the regexRewrite field is set.
    • getRegexRewrite

      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;
      Returns:
      The regexRewrite.
    • getRegexRewriteOrBuilder

      RegexMatchAndSubstituteOrBuilder getRegexRewriteOrBuilder()
       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;
    • hasHostRewrite

      boolean hasHostRewrite()
       Indicates that during forwarding, the host header will be swapped with
       this value.
       
      string host_rewrite = 6 [(.validate.rules) = { ... }
      Returns:
      Whether the hostRewrite field is set.
    • getHostRewrite

      String getHostRewrite()
       Indicates that during forwarding, the host header will be swapped with
       this value.
       
      string host_rewrite = 6 [(.validate.rules) = { ... }
      Returns:
      The hostRewrite.
    • getHostRewriteBytes

      com.google.protobuf.ByteString getHostRewriteBytes()
       Indicates that during forwarding, the host header will be swapped with
       this value.
       
      string host_rewrite = 6 [(.validate.rules) = { ... }
      Returns:
      The bytes for hostRewrite.
    • hasAutoHostRewrite

      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;
      Returns:
      Whether the autoHostRewrite field is set.
    • getAutoHostRewrite

      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;
      Returns:
      The autoHostRewrite.
    • getAutoHostRewriteOrBuilder

      com.google.protobuf.BoolValueOrBuilder getAutoHostRewriteOrBuilder()
       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;
    • hasAutoHostRewriteHeader

      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) = { ... }
      Returns:
      Whether the autoHostRewriteHeader field is set.
    • getAutoHostRewriteHeader

      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) = { ... }
      Returns:
      The autoHostRewriteHeader.
    • getAutoHostRewriteHeaderBytes

      com.google.protobuf.ByteString getAutoHostRewriteHeaderBytes()
       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) = { ... }
      Returns:
      The bytes for autoHostRewriteHeader.
    • hasTimeout

      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;
      Returns:
      Whether the timeout field is set.
    • getTimeout

      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;
      Returns:
      The timeout.
    • getTimeoutOrBuilder

      com.google.protobuf.DurationOrBuilder getTimeoutOrBuilder()
       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;
    • hasIdleTimeout

      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;
      Returns:
      Whether the idleTimeout field is set.
    • getIdleTimeout

      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;
      Returns:
      The idleTimeout.
    • getIdleTimeoutOrBuilder

      com.google.protobuf.DurationOrBuilder getIdleTimeoutOrBuilder()
       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;
    • hasRetryPolicy

      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;
      Returns:
      Whether the retryPolicy field is set.
    • getRetryPolicy

      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;
      Returns:
      The retryPolicy.
    • getRetryPolicyOrBuilder

      RetryPolicyOrBuilder getRetryPolicyOrBuilder()
       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;
    • hasRetryPolicyTypedConfig

      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;
      Returns:
      Whether the retryPolicyTypedConfig field is set.
    • getRetryPolicyTypedConfig

      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;
      Returns:
      The retryPolicyTypedConfig.
    • getRetryPolicyTypedConfigOrBuilder

      com.google.protobuf.AnyOrBuilder getRetryPolicyTypedConfigOrBuilder()
       [#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;
    • hasRequestMirrorPolicy

      @Deprecated boolean hasRequestMirrorPolicy()
      Deprecated.
      envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated. See envoy/api/v2/route/route_components.proto;l=934
       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];
      Returns:
      Whether the requestMirrorPolicy field is set.
    • getRequestMirrorPolicy

      Deprecated.
      envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated. See envoy/api/v2/route/route_components.proto;l=934
       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];
      Returns:
      The requestMirrorPolicy.
    • getRequestMirrorPolicyOrBuilder

      @Deprecated RouteAction.RequestMirrorPolicyOrBuilder getRequestMirrorPolicyOrBuilder()
      Deprecated.
       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];
    • getRequestMirrorPoliciesList

      List<RouteAction.RequestMirrorPolicy> getRequestMirrorPoliciesList()
       Indicates that the route has request mirroring policies.
       
      repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
    • getRequestMirrorPolicies

      RouteAction.RequestMirrorPolicy getRequestMirrorPolicies(int index)
       Indicates that the route has request mirroring policies.
       
      repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
    • getRequestMirrorPoliciesCount

      int getRequestMirrorPoliciesCount()
       Indicates that the route has request mirroring policies.
       
      repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
    • getRequestMirrorPoliciesOrBuilderList

      List<? extends RouteAction.RequestMirrorPolicyOrBuilder> getRequestMirrorPoliciesOrBuilderList()
       Indicates that the route has request mirroring policies.
       
      repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
    • getRequestMirrorPoliciesOrBuilder

      RouteAction.RequestMirrorPolicyOrBuilder getRequestMirrorPoliciesOrBuilder(int index)
       Indicates that the route has request mirroring policies.
       
      repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
    • getPriorityValue

      int getPriorityValue()
       Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
       
      .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... }
      Returns:
      The enum numeric value on the wire for priority.
    • getPriority

      RoutingPriority getPriority()
       Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
       
      .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... }
      Returns:
      The priority.
    • getRateLimitsList

      List<RateLimit> getRateLimitsList()
       Specifies a set of rate limit configurations that could be applied to the
       route.
       
      repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
    • getRateLimits

      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;
    • getRateLimitsCount

      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;
    • getRateLimitsOrBuilderList

      List<? extends RateLimitOrBuilder> getRateLimitsOrBuilderList()
       Specifies a set of rate limit configurations that could be applied to the
       route.
       
      repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
    • getRateLimitsOrBuilder

      RateLimitOrBuilder getRateLimitsOrBuilder(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;
    • hasIncludeVhRateLimits

      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;
      Returns:
      Whether the includeVhRateLimits field is set.
    • getIncludeVhRateLimits

      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;
      Returns:
      The includeVhRateLimits.
    • getIncludeVhRateLimitsOrBuilder

      com.google.protobuf.BoolValueOrBuilder getIncludeVhRateLimitsOrBuilder()
       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;
    • getHashPolicyList

      List<RouteAction.HashPolicy> 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;
    • getHashPolicy

      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;
    • getHashPolicyCount

      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;
    • getHashPolicyOrBuilderList

      List<? extends RouteAction.HashPolicyOrBuilder> 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;
    • getHashPolicyOrBuilder

      RouteAction.HashPolicyOrBuilder getHashPolicyOrBuilder(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;
    • hasCors

      boolean hasCors()
       Indicates that the route has a CORS policy.
       
      .envoy.api.v2.route.CorsPolicy cors = 17;
      Returns:
      Whether the cors field is set.
    • getCors

      CorsPolicy getCors()
       Indicates that the route has a CORS policy.
       
      .envoy.api.v2.route.CorsPolicy cors = 17;
      Returns:
      The cors.
    • getCorsOrBuilder

      CorsPolicyOrBuilder getCorsOrBuilder()
       Indicates that the route has a CORS policy.
       
      .envoy.api.v2.route.CorsPolicy cors = 17;
    • hasMaxGrpcTimeout

      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;
      Returns:
      Whether the maxGrpcTimeout field is set.
    • getMaxGrpcTimeout

      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;
      Returns:
      The maxGrpcTimeout.
    • getMaxGrpcTimeoutOrBuilder

      com.google.protobuf.DurationOrBuilder getMaxGrpcTimeoutOrBuilder()
       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;
    • hasGrpcTimeoutOffset

      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;
      Returns:
      Whether the grpcTimeoutOffset field is set.
    • getGrpcTimeoutOffset

      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;
      Returns:
      The grpcTimeoutOffset.
    • getGrpcTimeoutOffsetOrBuilder

      com.google.protobuf.DurationOrBuilder getGrpcTimeoutOffsetOrBuilder()
       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;
    • getUpgradeConfigsList

      List<RouteAction.UpgradeConfig> getUpgradeConfigsList()
      repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    • getUpgradeConfigs

      RouteAction.UpgradeConfig getUpgradeConfigs(int index)
      repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    • getUpgradeConfigsCount

      int getUpgradeConfigsCount()
      repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    • getUpgradeConfigsOrBuilderList

      List<? extends RouteAction.UpgradeConfigOrBuilder> getUpgradeConfigsOrBuilderList()
      repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    • getUpgradeConfigsOrBuilder

      RouteAction.UpgradeConfigOrBuilder getUpgradeConfigsOrBuilder(int index)
      repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
    • getInternalRedirectActionValue

      int getInternalRedirectActionValue()
      .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
      Returns:
      The enum numeric value on the wire for internalRedirectAction.
    • getInternalRedirectAction

      RouteAction.InternalRedirectAction getInternalRedirectAction()
      .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
      Returns:
      The internalRedirectAction.
    • hasMaxInternalRedirects

      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;
      Returns:
      Whether the maxInternalRedirects field is set.
    • getMaxInternalRedirects

      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;
      Returns:
      The maxInternalRedirects.
    • getMaxInternalRedirectsOrBuilder

      com.google.protobuf.UInt32ValueOrBuilder getMaxInternalRedirectsOrBuilder()
       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;
    • hasHedgePolicy

      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;
      Returns:
      Whether the hedgePolicy field is set.
    • getHedgePolicy

      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;
      Returns:
      The hedgePolicy.
    • getHedgePolicyOrBuilder

      HedgePolicyOrBuilder getHedgePolicyOrBuilder()
       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;
    • getClusterSpecifierCase

      RouteAction.ClusterSpecifierCase getClusterSpecifierCase()
    • getHostRewriteSpecifierCase

      RouteAction.HostRewriteSpecifierCase getHostRewriteSpecifierCase()