Class RouteAction.Builder

  • All Implemented Interfaces:
    com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, RouteActionOrBuilder, Cloneable
    Enclosing class:
    RouteAction

    public static final class RouteAction.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
    implements RouteActionOrBuilder
     [#next-free-field: 34]
     
    Protobuf type envoy.api.v2.route.RouteAction
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • clear

        public RouteAction.Builder clear()
        Specified by:
        clear in interface com.google.protobuf.Message.Builder
        Specified by:
        clear in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clear in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • getDefaultInstanceForType

        public RouteAction getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public RouteAction build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public RouteAction buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • clone

        public RouteAction.Builder clone()
        Specified by:
        clone in interface com.google.protobuf.Message.Builder
        Specified by:
        clone in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clone in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • setField

        public RouteAction.Builder setField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                            Object value)
        Specified by:
        setField in interface com.google.protobuf.Message.Builder
        Overrides:
        setField in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • clearField

        public RouteAction.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)
        Specified by:
        clearField in interface com.google.protobuf.Message.Builder
        Overrides:
        clearField in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • clearOneof

        public RouteAction.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)
        Specified by:
        clearOneof in interface com.google.protobuf.Message.Builder
        Overrides:
        clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • setRepeatedField

        public RouteAction.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                    int index,
                                                    Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • addRepeatedField

        public RouteAction.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                    Object value)
        Specified by:
        addRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • mergeFrom

        public RouteAction.Builder mergeFrom​(com.google.protobuf.Message other)
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<RouteAction.Builder>
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • mergeFrom

        public RouteAction.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                      throws IOException
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Specified by:
        mergeFrom in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<RouteAction.Builder>
        Throws:
        IOException
      • hasCluster

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

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

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

        public RouteAction.Builder setCluster​(String value)
         Indicates the upstream cluster to which the request should be routed
         to.
         
        string cluster = 1 [(.validate.rules) = { ... }
        Parameters:
        value - The cluster to set.
        Returns:
        This builder for chaining.
      • clearCluster

        public RouteAction.Builder clearCluster()
         Indicates the upstream cluster to which the request should be routed
         to.
         
        string cluster = 1 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • setClusterBytes

        public RouteAction.Builder setClusterBytes​(com.google.protobuf.ByteString value)
         Indicates the upstream cluster to which the request should be routed
         to.
         
        string cluster = 1 [(.validate.rules) = { ... }
        Parameters:
        value - The bytes for cluster to set.
        Returns:
        This builder for chaining.
      • hasClusterHeader

        public 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) = { ... }
        Specified by:
        hasClusterHeader in interface RouteActionOrBuilder
        Returns:
        Whether the clusterHeader field is set.
      • getClusterHeader

        public 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) = { ... }
        Specified by:
        getClusterHeader in interface RouteActionOrBuilder
        Returns:
        The clusterHeader.
      • getClusterHeaderBytes

        public 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) = { ... }
        Specified by:
        getClusterHeaderBytes in interface RouteActionOrBuilder
        Returns:
        The bytes for clusterHeader.
      • setClusterHeader

        public RouteAction.Builder setClusterHeader​(String value)
         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) = { ... }
        Parameters:
        value - The clusterHeader to set.
        Returns:
        This builder for chaining.
      • clearClusterHeader

        public RouteAction.Builder clearClusterHeader()
         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:
        This builder for chaining.
      • setClusterHeaderBytes

        public RouteAction.Builder setClusterHeaderBytes​(com.google.protobuf.ByteString value)
         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) = { ... }
        Parameters:
        value - The bytes for clusterHeader to set.
        Returns:
        This builder for chaining.
      • hasWeightedClusters

        public 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;
        Specified by:
        hasWeightedClusters in interface RouteActionOrBuilder
        Returns:
        Whether the weightedClusters field is set.
      • getWeightedClusters

        public 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;
        Specified by:
        getWeightedClusters in interface RouteActionOrBuilder
        Returns:
        The weightedClusters.
      • setWeightedClusters

        public RouteAction.Builder setWeightedClusters​(WeightedCluster value)
         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;
      • setWeightedClusters

        public RouteAction.Builder setWeightedClusters​(WeightedCluster.Builder builderForValue)
         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;
      • mergeWeightedClusters

        public RouteAction.Builder mergeWeightedClusters​(WeightedCluster value)
         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;
      • clearWeightedClusters

        public RouteAction.Builder clearWeightedClusters()
         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;
      • getWeightedClustersBuilder

        public WeightedCluster.Builder getWeightedClustersBuilder()
         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;
      • getWeightedClustersOrBuilder

        public 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;
        Specified by:
        getWeightedClustersOrBuilder in interface RouteActionOrBuilder
      • getClusterNotFoundResponseCodeValue

        public 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) = { ... }
        Specified by:
        getClusterNotFoundResponseCodeValue in interface RouteActionOrBuilder
        Returns:
        The enum numeric value on the wire for clusterNotFoundResponseCode.
      • setClusterNotFoundResponseCodeValue

        public RouteAction.Builder setClusterNotFoundResponseCodeValue​(int value)
         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) = { ... }
        Parameters:
        value - The enum numeric value on the wire for clusterNotFoundResponseCode to set.
        Returns:
        This builder for chaining.
      • getClusterNotFoundResponseCode

        public 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) = { ... }
        Specified by:
        getClusterNotFoundResponseCode in interface RouteActionOrBuilder
        Returns:
        The clusterNotFoundResponseCode.
      • setClusterNotFoundResponseCode

        public RouteAction.Builder setClusterNotFoundResponseCode​(RouteAction.ClusterNotFoundResponseCode value)
         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) = { ... }
        Parameters:
        value - The clusterNotFoundResponseCode to set.
        Returns:
        This builder for chaining.
      • clearClusterNotFoundResponseCode

        public RouteAction.Builder clearClusterNotFoundResponseCode()
         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:
        This builder for chaining.
      • hasMetadataMatch

        public 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;
        Specified by:
        hasMetadataMatch in interface RouteActionOrBuilder
        Returns:
        Whether the metadataMatch field is set.
      • getMetadataMatch

        public 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;
        Specified by:
        getMetadataMatch in interface RouteActionOrBuilder
        Returns:
        The metadataMatch.
      • setMetadataMatch

        public RouteAction.Builder setMetadataMatch​(Metadata value)
         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;
      • setMetadataMatch

        public RouteAction.Builder setMetadataMatch​(Metadata.Builder builderForValue)
         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;
      • mergeMetadataMatch

        public RouteAction.Builder mergeMetadataMatch​(Metadata value)
         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;
      • clearMetadataMatch

        public RouteAction.Builder clearMetadataMatch()
         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;
      • getMetadataMatchBuilder

        public Metadata.Builder getMetadataMatchBuilder()
         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;
      • getMetadataMatchOrBuilder

        public 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;
        Specified by:
        getMetadataMatchOrBuilder in interface RouteActionOrBuilder
      • getPrefixRewrite

        public 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) = { ... }
        Specified by:
        getPrefixRewrite in interface RouteActionOrBuilder
        Returns:
        The prefixRewrite.
      • getPrefixRewriteBytes

        public 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) = { ... }
        Specified by:
        getPrefixRewriteBytes in interface RouteActionOrBuilder
        Returns:
        The bytes for prefixRewrite.
      • setPrefixRewrite

        public RouteAction.Builder setPrefixRewrite​(String value)
         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) = { ... }
        Parameters:
        value - The prefixRewrite to set.
        Returns:
        This builder for chaining.
      • clearPrefixRewrite

        public RouteAction.Builder clearPrefixRewrite()
         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:
        This builder for chaining.
      • setPrefixRewriteBytes

        public RouteAction.Builder setPrefixRewriteBytes​(com.google.protobuf.ByteString value)
         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) = { ... }
        Parameters:
        value - The bytes for prefixRewrite to set.
        Returns:
        This builder for chaining.
      • hasRegexRewrite

        public 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;
        Specified by:
        hasRegexRewrite in interface RouteActionOrBuilder
        Returns:
        Whether the regexRewrite field is set.
      • getRegexRewrite

        public 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;
        Specified by:
        getRegexRewrite in interface RouteActionOrBuilder
        Returns:
        The regexRewrite.
      • setRegexRewrite

        public RouteAction.Builder setRegexRewrite​(RegexMatchAndSubstitute value)
         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;
      • setRegexRewrite

        public RouteAction.Builder setRegexRewrite​(RegexMatchAndSubstitute.Builder builderForValue)
         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;
      • mergeRegexRewrite

        public RouteAction.Builder mergeRegexRewrite​(RegexMatchAndSubstitute value)
         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;
      • clearRegexRewrite

        public RouteAction.Builder clearRegexRewrite()
         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;
      • getRegexRewriteBuilder

        public RegexMatchAndSubstitute.Builder getRegexRewriteBuilder()
         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;
      • getRegexRewriteOrBuilder

        public 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;
        Specified by:
        getRegexRewriteOrBuilder in interface RouteActionOrBuilder
      • hasHostRewrite

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

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

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

        public RouteAction.Builder setHostRewrite​(String value)
         Indicates that during forwarding, the host header will be swapped with
         this value.
         
        string host_rewrite = 6 [(.validate.rules) = { ... }
        Parameters:
        value - The hostRewrite to set.
        Returns:
        This builder for chaining.
      • clearHostRewrite

        public RouteAction.Builder clearHostRewrite()
         Indicates that during forwarding, the host header will be swapped with
         this value.
         
        string host_rewrite = 6 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • setHostRewriteBytes

        public RouteAction.Builder setHostRewriteBytes​(com.google.protobuf.ByteString value)
         Indicates that during forwarding, the host header will be swapped with
         this value.
         
        string host_rewrite = 6 [(.validate.rules) = { ... }
        Parameters:
        value - The bytes for hostRewrite to set.
        Returns:
        This builder for chaining.
      • hasAutoHostRewrite

        public 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;
        Specified by:
        hasAutoHostRewrite in interface RouteActionOrBuilder
        Returns:
        Whether the autoHostRewrite field is set.
      • getAutoHostRewrite

        public 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;
        Specified by:
        getAutoHostRewrite in interface RouteActionOrBuilder
        Returns:
        The autoHostRewrite.
      • setAutoHostRewrite

        public RouteAction.Builder setAutoHostRewrite​(com.google.protobuf.BoolValue value)
         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;
      • setAutoHostRewrite

        public RouteAction.Builder setAutoHostRewrite​(com.google.protobuf.BoolValue.Builder builderForValue)
         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;
      • mergeAutoHostRewrite

        public RouteAction.Builder mergeAutoHostRewrite​(com.google.protobuf.BoolValue value)
         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;
      • clearAutoHostRewrite

        public RouteAction.Builder clearAutoHostRewrite()
         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;
      • getAutoHostRewriteBuilder

        public com.google.protobuf.BoolValue.Builder getAutoHostRewriteBuilder()
         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;
      • getAutoHostRewriteOrBuilder

        public 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* or *logical_dns*. Setting this to true with other cluster
         types has no effect.
         
        .google.protobuf.BoolValue auto_host_rewrite = 7;
        Specified by:
        getAutoHostRewriteOrBuilder in interface RouteActionOrBuilder
      • hasAutoHostRewriteHeader

        public 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) = { ... }
        Specified by:
        hasAutoHostRewriteHeader in interface RouteActionOrBuilder
        Returns:
        Whether the autoHostRewriteHeader field is set.
      • getAutoHostRewriteHeader

        public 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) = { ... }
        Specified by:
        getAutoHostRewriteHeader in interface RouteActionOrBuilder
        Returns:
        The autoHostRewriteHeader.
      • getAutoHostRewriteHeaderBytes

        public 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) = { ... }
        Specified by:
        getAutoHostRewriteHeaderBytes in interface RouteActionOrBuilder
        Returns:
        The bytes for autoHostRewriteHeader.
      • setAutoHostRewriteHeader

        public RouteAction.Builder setAutoHostRewriteHeader​(String value)
         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) = { ... }
        Parameters:
        value - The autoHostRewriteHeader to set.
        Returns:
        This builder for chaining.
      • clearAutoHostRewriteHeader

        public RouteAction.Builder clearAutoHostRewriteHeader()
         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:
        This builder for chaining.
      • setAutoHostRewriteHeaderBytes

        public RouteAction.Builder setAutoHostRewriteHeaderBytes​(com.google.protobuf.ByteString value)
         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) = { ... }
        Parameters:
        value - The bytes for autoHostRewriteHeader to set.
        Returns:
        This builder for chaining.
      • hasTimeout

        public 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;
        Specified by:
        hasTimeout in interface RouteActionOrBuilder
        Returns:
        Whether the timeout field is set.
      • getTimeout

        public 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;
        Specified by:
        getTimeout in interface RouteActionOrBuilder
        Returns:
        The timeout.
      • setTimeout

        public RouteAction.Builder setTimeout​(com.google.protobuf.Duration value)
         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;
      • setTimeout

        public RouteAction.Builder setTimeout​(com.google.protobuf.Duration.Builder builderForValue)
         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;
      • mergeTimeout

        public RouteAction.Builder mergeTimeout​(com.google.protobuf.Duration value)
         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;
      • clearTimeout

        public RouteAction.Builder clearTimeout()
         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;
      • getTimeoutBuilder

        public com.google.protobuf.Duration.Builder getTimeoutBuilder()
         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;
      • getTimeoutOrBuilder

        public 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;
        Specified by:
        getTimeoutOrBuilder in interface RouteActionOrBuilder
      • hasIdleTimeout

        public 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;
        Specified by:
        hasIdleTimeout in interface RouteActionOrBuilder
        Returns:
        Whether the idleTimeout field is set.
      • getIdleTimeout

        public 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;
        Specified by:
        getIdleTimeout in interface RouteActionOrBuilder
        Returns:
        The idleTimeout.
      • setIdleTimeout

        public RouteAction.Builder setIdleTimeout​(com.google.protobuf.Duration value)
         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;
      • setIdleTimeout

        public RouteAction.Builder setIdleTimeout​(com.google.protobuf.Duration.Builder builderForValue)
         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;
      • mergeIdleTimeout

        public RouteAction.Builder mergeIdleTimeout​(com.google.protobuf.Duration value)
         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;
      • clearIdleTimeout

        public RouteAction.Builder clearIdleTimeout()
         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;
      • getIdleTimeoutBuilder

        public com.google.protobuf.Duration.Builder getIdleTimeoutBuilder()
         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;
      • getIdleTimeoutOrBuilder

        public 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;
        Specified by:
        getIdleTimeoutOrBuilder in interface RouteActionOrBuilder
      • hasRetryPolicy

        public 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;
        Specified by:
        hasRetryPolicy in interface RouteActionOrBuilder
        Returns:
        Whether the retryPolicy field is set.
      • getRetryPolicy

        public 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;
        Specified by:
        getRetryPolicy in interface RouteActionOrBuilder
        Returns:
        The retryPolicy.
      • setRetryPolicy

        public RouteAction.Builder setRetryPolicy​(RetryPolicy value)
         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;
      • setRetryPolicy

        public RouteAction.Builder setRetryPolicy​(RetryPolicy.Builder builderForValue)
         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;
      • mergeRetryPolicy

        public RouteAction.Builder mergeRetryPolicy​(RetryPolicy value)
         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;
      • clearRetryPolicy

        public RouteAction.Builder clearRetryPolicy()
         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;
      • getRetryPolicyBuilder

        public RetryPolicy.Builder getRetryPolicyBuilder()
         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;
      • getRetryPolicyOrBuilder

        public 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;
        Specified by:
        getRetryPolicyOrBuilder in interface RouteActionOrBuilder
      • hasRetryPolicyTypedConfig

        public 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;
        Specified by:
        hasRetryPolicyTypedConfig in interface RouteActionOrBuilder
        Returns:
        Whether the retryPolicyTypedConfig field is set.
      • getRetryPolicyTypedConfig

        public 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;
        Specified by:
        getRetryPolicyTypedConfig in interface RouteActionOrBuilder
        Returns:
        The retryPolicyTypedConfig.
      • setRetryPolicyTypedConfig

        public RouteAction.Builder setRetryPolicyTypedConfig​(com.google.protobuf.Any value)
         [#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;
      • setRetryPolicyTypedConfig

        public RouteAction.Builder setRetryPolicyTypedConfig​(com.google.protobuf.Any.Builder builderForValue)
         [#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;
      • mergeRetryPolicyTypedConfig

        public RouteAction.Builder mergeRetryPolicyTypedConfig​(com.google.protobuf.Any value)
         [#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;
      • clearRetryPolicyTypedConfig

        public RouteAction.Builder clearRetryPolicyTypedConfig()
         [#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;
      • getRetryPolicyTypedConfigBuilder

        public com.google.protobuf.Any.Builder getRetryPolicyTypedConfigBuilder()
         [#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;
      • getRetryPolicyTypedConfigOrBuilder

        public 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;
        Specified by:
        getRetryPolicyTypedConfigOrBuilder in interface RouteActionOrBuilder
      • hasRequestMirrorPolicy

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

        @Deprecated
        public RouteAction.RequestMirrorPolicy getRequestMirrorPolicy()
        Deprecated.
        envoy.api.v2.route.RouteAction.request_mirror_policy is deprecated. See envoy/api/v2/route/route_components.proto;l=933
         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];
        Specified by:
        getRequestMirrorPolicy in interface RouteActionOrBuilder
        Returns:
        The requestMirrorPolicy.
      • setRequestMirrorPolicy

        @Deprecated
        public RouteAction.Builder setRequestMirrorPolicy​(RouteAction.RequestMirrorPolicy value)
        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];
      • setRequestMirrorPolicy

        @Deprecated
        public RouteAction.Builder setRequestMirrorPolicy​(RouteAction.RequestMirrorPolicy.Builder builderForValue)
        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];
      • mergeRequestMirrorPolicy

        @Deprecated
        public RouteAction.Builder mergeRequestMirrorPolicy​(RouteAction.RequestMirrorPolicy value)
        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];
      • clearRequestMirrorPolicy

        @Deprecated
        public RouteAction.Builder clearRequestMirrorPolicy()
        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];
      • getRequestMirrorPolicyBuilder

        @Deprecated
        public RouteAction.RequestMirrorPolicy.Builder getRequestMirrorPolicyBuilder()
        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];
      • getRequestMirrorPolicyOrBuilder

        @Deprecated
        public 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];
        Specified by:
        getRequestMirrorPolicyOrBuilder in interface RouteActionOrBuilder
      • getRequestMirrorPoliciesCount

        public int getRequestMirrorPoliciesCount()
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
        Specified by:
        getRequestMirrorPoliciesCount in interface RouteActionOrBuilder
      • setRequestMirrorPolicies

        public RouteAction.Builder setRequestMirrorPolicies​(int index,
                                                            RouteAction.RequestMirrorPolicy value)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • setRequestMirrorPolicies

        public RouteAction.Builder setRequestMirrorPolicies​(int index,
                                                            RouteAction.RequestMirrorPolicy.Builder builderForValue)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • addRequestMirrorPolicies

        public RouteAction.Builder addRequestMirrorPolicies​(RouteAction.RequestMirrorPolicy value)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • addRequestMirrorPolicies

        public RouteAction.Builder addRequestMirrorPolicies​(int index,
                                                            RouteAction.RequestMirrorPolicy value)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • addRequestMirrorPolicies

        public RouteAction.Builder addRequestMirrorPolicies​(int index,
                                                            RouteAction.RequestMirrorPolicy.Builder builderForValue)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • addAllRequestMirrorPolicies

        public RouteAction.Builder addAllRequestMirrorPolicies​(Iterable<? extends RouteAction.RequestMirrorPolicy> values)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • clearRequestMirrorPolicies

        public RouteAction.Builder clearRequestMirrorPolicies()
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • removeRequestMirrorPolicies

        public RouteAction.Builder removeRequestMirrorPolicies​(int index)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • getRequestMirrorPoliciesBuilder

        public RouteAction.RequestMirrorPolicy.Builder getRequestMirrorPoliciesBuilder​(int index)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • addRequestMirrorPoliciesBuilder

        public RouteAction.RequestMirrorPolicy.Builder addRequestMirrorPoliciesBuilder()
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • addRequestMirrorPoliciesBuilder

        public RouteAction.RequestMirrorPolicy.Builder addRequestMirrorPoliciesBuilder​(int index)
         Indicates that the route has request mirroring policies.
         
        repeated .envoy.api.v2.route.RouteAction.RequestMirrorPolicy request_mirror_policies = 30;
      • getRequestMirrorPoliciesBuilderList

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

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

        public RouteAction.Builder setPriorityValue​(int value)
         Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
         
        .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... }
        Parameters:
        value - The enum numeric value on the wire for priority to set.
        Returns:
        This builder for chaining.
      • getPriority

        public RoutingPriority getPriority()
         Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
         
        .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... }
        Specified by:
        getPriority in interface RouteActionOrBuilder
        Returns:
        The priority.
      • setPriority

        public RouteAction.Builder setPriority​(RoutingPriority value)
         Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
         
        .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... }
        Parameters:
        value - The priority to set.
        Returns:
        This builder for chaining.
      • clearPriority

        public RouteAction.Builder clearPriority()
         Optionally specifies the :ref:`routing priority <arch_overview_http_routing_priority>`.
         
        .envoy.api.v2.core.RoutingPriority priority = 11 [(.validate.rules) = { ... }
        Returns:
        This builder for chaining.
      • getRateLimitsList

        public 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;
        Specified by:
        getRateLimitsList in interface RouteActionOrBuilder
      • getRateLimitsCount

        public 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;
        Specified by:
        getRateLimitsCount in interface RouteActionOrBuilder
      • getRateLimits

        public 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;
        Specified by:
        getRateLimits in interface RouteActionOrBuilder
      • setRateLimits

        public RouteAction.Builder setRateLimits​(int index,
                                                 RateLimit value)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • setRateLimits

        public RouteAction.Builder setRateLimits​(int index,
                                                 RateLimit.Builder builderForValue)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • addRateLimits

        public RouteAction.Builder addRateLimits​(RateLimit value)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • addRateLimits

        public RouteAction.Builder addRateLimits​(int index,
                                                 RateLimit value)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • addRateLimits

        public RouteAction.Builder addRateLimits​(RateLimit.Builder builderForValue)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • addRateLimits

        public RouteAction.Builder addRateLimits​(int index,
                                                 RateLimit.Builder builderForValue)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • addAllRateLimits

        public RouteAction.Builder addAllRateLimits​(Iterable<? extends RateLimit> values)
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • clearRateLimits

        public RouteAction.Builder clearRateLimits()
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • removeRateLimits

        public RouteAction.Builder removeRateLimits​(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;
      • getRateLimitsBuilder

        public RateLimit.Builder getRateLimitsBuilder​(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;
      • getRateLimitsOrBuilder

        public 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;
        Specified by:
        getRateLimitsOrBuilder in interface RouteActionOrBuilder
      • addRateLimitsBuilder

        public RateLimit.Builder addRateLimitsBuilder()
         Specifies a set of rate limit configurations that could be applied to the
         route.
         
        repeated .envoy.api.v2.route.RateLimit rate_limits = 13;
      • addRateLimitsBuilder

        public RateLimit.Builder addRateLimitsBuilder​(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;
      • getRateLimitsBuilderList

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

        public 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;
        Specified by:
        hasIncludeVhRateLimits in interface RouteActionOrBuilder
        Returns:
        Whether the includeVhRateLimits field is set.
      • getIncludeVhRateLimits

        public 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;
        Specified by:
        getIncludeVhRateLimits in interface RouteActionOrBuilder
        Returns:
        The includeVhRateLimits.
      • setIncludeVhRateLimits

        public RouteAction.Builder setIncludeVhRateLimits​(com.google.protobuf.BoolValue value)
         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;
      • setIncludeVhRateLimits

        public RouteAction.Builder setIncludeVhRateLimits​(com.google.protobuf.BoolValue.Builder builderForValue)
         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;
      • mergeIncludeVhRateLimits

        public RouteAction.Builder mergeIncludeVhRateLimits​(com.google.protobuf.BoolValue value)
         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;
      • clearIncludeVhRateLimits

        public RouteAction.Builder clearIncludeVhRateLimits()
         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;
      • getIncludeVhRateLimitsBuilder

        public com.google.protobuf.BoolValue.Builder getIncludeVhRateLimitsBuilder()
         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;
      • getIncludeVhRateLimitsOrBuilder

        public 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;
        Specified by:
        getIncludeVhRateLimitsOrBuilder in interface RouteActionOrBuilder
      • getHashPolicyList

        public 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;
        Specified by:
        getHashPolicyList in interface RouteActionOrBuilder
      • getHashPolicyCount

        public 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;
        Specified by:
        getHashPolicyCount in interface RouteActionOrBuilder
      • getHashPolicy

        public 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;
        Specified by:
        getHashPolicy in interface RouteActionOrBuilder
      • setHashPolicy

        public RouteAction.Builder setHashPolicy​(int index,
                                                 RouteAction.HashPolicy value)
         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;
      • setHashPolicy

        public RouteAction.Builder setHashPolicy​(int index,
                                                 RouteAction.HashPolicy.Builder builderForValue)
         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;
      • addHashPolicy

        public RouteAction.Builder addHashPolicy​(RouteAction.HashPolicy value)
         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;
      • addHashPolicy

        public RouteAction.Builder addHashPolicy​(int index,
                                                 RouteAction.HashPolicy value)
         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;
      • addHashPolicy

        public RouteAction.Builder addHashPolicy​(RouteAction.HashPolicy.Builder builderForValue)
         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;
      • addHashPolicy

        public RouteAction.Builder addHashPolicy​(int index,
                                                 RouteAction.HashPolicy.Builder builderForValue)
         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;
      • addAllHashPolicy

        public RouteAction.Builder addAllHashPolicy​(Iterable<? extends RouteAction.HashPolicy> values)
         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;
      • clearHashPolicy

        public RouteAction.Builder clearHashPolicy()
         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;
      • removeHashPolicy

        public RouteAction.Builder removeHashPolicy​(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;
      • getHashPolicyBuilder

        public RouteAction.HashPolicy.Builder getHashPolicyBuilder​(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;
      • getHashPolicyOrBuilder

        public 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;
        Specified by:
        getHashPolicyOrBuilder in interface RouteActionOrBuilder
      • getHashPolicyOrBuilderList

        public 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;
        Specified by:
        getHashPolicyOrBuilderList in interface RouteActionOrBuilder
      • addHashPolicyBuilder

        public RouteAction.HashPolicy.Builder addHashPolicyBuilder()
         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;
      • addHashPolicyBuilder

        public RouteAction.HashPolicy.Builder addHashPolicyBuilder​(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;
      • getHashPolicyBuilderList

        public List<RouteAction.HashPolicy.Builder> getHashPolicyBuilderList()
         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

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

        public CorsPolicy getCors()
         Indicates that the route has a CORS policy.
         
        .envoy.api.v2.route.CorsPolicy cors = 17;
        Specified by:
        getCors in interface RouteActionOrBuilder
        Returns:
        The cors.
      • setCors

        public RouteAction.Builder setCors​(CorsPolicy value)
         Indicates that the route has a CORS policy.
         
        .envoy.api.v2.route.CorsPolicy cors = 17;
      • mergeCors

        public RouteAction.Builder mergeCors​(CorsPolicy value)
         Indicates that the route has a CORS policy.
         
        .envoy.api.v2.route.CorsPolicy cors = 17;
      • clearCors

        public RouteAction.Builder clearCors()
         Indicates that the route has a CORS policy.
         
        .envoy.api.v2.route.CorsPolicy cors = 17;
      • getCorsBuilder

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

        public 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;
        Specified by:
        hasMaxGrpcTimeout in interface RouteActionOrBuilder
        Returns:
        Whether the maxGrpcTimeout field is set.
      • getMaxGrpcTimeout

        public 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;
        Specified by:
        getMaxGrpcTimeout in interface RouteActionOrBuilder
        Returns:
        The maxGrpcTimeout.
      • setMaxGrpcTimeout

        public RouteAction.Builder setMaxGrpcTimeout​(com.google.protobuf.Duration value)
         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;
      • setMaxGrpcTimeout

        public RouteAction.Builder setMaxGrpcTimeout​(com.google.protobuf.Duration.Builder builderForValue)
         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;
      • mergeMaxGrpcTimeout

        public RouteAction.Builder mergeMaxGrpcTimeout​(com.google.protobuf.Duration value)
         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;
      • clearMaxGrpcTimeout

        public RouteAction.Builder clearMaxGrpcTimeout()
         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;
      • getMaxGrpcTimeoutBuilder

        public com.google.protobuf.Duration.Builder getMaxGrpcTimeoutBuilder()
         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;
      • getMaxGrpcTimeoutOrBuilder

        public 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;
        Specified by:
        getMaxGrpcTimeoutOrBuilder in interface RouteActionOrBuilder
      • hasGrpcTimeoutOffset

        public 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;
        Specified by:
        hasGrpcTimeoutOffset in interface RouteActionOrBuilder
        Returns:
        Whether the grpcTimeoutOffset field is set.
      • getGrpcTimeoutOffset

        public 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;
        Specified by:
        getGrpcTimeoutOffset in interface RouteActionOrBuilder
        Returns:
        The grpcTimeoutOffset.
      • setGrpcTimeoutOffset

        public RouteAction.Builder setGrpcTimeoutOffset​(com.google.protobuf.Duration value)
         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;
      • setGrpcTimeoutOffset

        public RouteAction.Builder setGrpcTimeoutOffset​(com.google.protobuf.Duration.Builder builderForValue)
         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;
      • mergeGrpcTimeoutOffset

        public RouteAction.Builder mergeGrpcTimeoutOffset​(com.google.protobuf.Duration value)
         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;
      • clearGrpcTimeoutOffset

        public RouteAction.Builder clearGrpcTimeoutOffset()
         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;
      • getGrpcTimeoutOffsetBuilder

        public com.google.protobuf.Duration.Builder getGrpcTimeoutOffsetBuilder()
         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;
      • getGrpcTimeoutOffsetOrBuilder

        public 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;
        Specified by:
        getGrpcTimeoutOffsetOrBuilder in interface RouteActionOrBuilder
      • getUpgradeConfigsCount

        public int getUpgradeConfigsCount()
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
        Specified by:
        getUpgradeConfigsCount in interface RouteActionOrBuilder
      • clearUpgradeConfigs

        public RouteAction.Builder clearUpgradeConfigs()
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
      • removeUpgradeConfigs

        public RouteAction.Builder removeUpgradeConfigs​(int index)
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
      • getUpgradeConfigsBuilder

        public RouteAction.UpgradeConfig.Builder getUpgradeConfigsBuilder​(int index)
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
      • addUpgradeConfigsBuilder

        public RouteAction.UpgradeConfig.Builder addUpgradeConfigsBuilder()
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
      • addUpgradeConfigsBuilder

        public RouteAction.UpgradeConfig.Builder addUpgradeConfigsBuilder​(int index)
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
      • getUpgradeConfigsBuilderList

        public List<RouteAction.UpgradeConfig.Builder> getUpgradeConfigsBuilderList()
        repeated .envoy.api.v2.route.RouteAction.UpgradeConfig upgrade_configs = 25;
      • getInternalRedirectActionValue

        public int getInternalRedirectActionValue()
        .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
        Specified by:
        getInternalRedirectActionValue in interface RouteActionOrBuilder
        Returns:
        The enum numeric value on the wire for internalRedirectAction.
      • setInternalRedirectActionValue

        public RouteAction.Builder setInternalRedirectActionValue​(int value)
        .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
        Parameters:
        value - The enum numeric value on the wire for internalRedirectAction to set.
        Returns:
        This builder for chaining.
      • setInternalRedirectAction

        public RouteAction.Builder setInternalRedirectAction​(RouteAction.InternalRedirectAction value)
        .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
        Parameters:
        value - The internalRedirectAction to set.
        Returns:
        This builder for chaining.
      • clearInternalRedirectAction

        public RouteAction.Builder clearInternalRedirectAction()
        .envoy.api.v2.route.RouteAction.InternalRedirectAction internal_redirect_action = 26;
        Returns:
        This builder for chaining.
      • hasMaxInternalRedirects

        public 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;
        Specified by:
        hasMaxInternalRedirects in interface RouteActionOrBuilder
        Returns:
        Whether the maxInternalRedirects field is set.
      • getMaxInternalRedirects

        public 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;
        Specified by:
        getMaxInternalRedirects in interface RouteActionOrBuilder
        Returns:
        The maxInternalRedirects.
      • setMaxInternalRedirects

        public RouteAction.Builder setMaxInternalRedirects​(com.google.protobuf.UInt32Value value)
         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;
      • setMaxInternalRedirects

        public RouteAction.Builder setMaxInternalRedirects​(com.google.protobuf.UInt32Value.Builder builderForValue)
         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;
      • mergeMaxInternalRedirects

        public RouteAction.Builder mergeMaxInternalRedirects​(com.google.protobuf.UInt32Value value)
         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;
      • clearMaxInternalRedirects

        public RouteAction.Builder clearMaxInternalRedirects()
         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;
      • getMaxInternalRedirectsBuilder

        public com.google.protobuf.UInt32Value.Builder getMaxInternalRedirectsBuilder()
         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;
      • getMaxInternalRedirectsOrBuilder

        public 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;
        Specified by:
        getMaxInternalRedirectsOrBuilder in interface RouteActionOrBuilder
      • hasHedgePolicy

        public 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;
        Specified by:
        hasHedgePolicy in interface RouteActionOrBuilder
        Returns:
        Whether the hedgePolicy field is set.
      • getHedgePolicy

        public 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;
        Specified by:
        getHedgePolicy in interface RouteActionOrBuilder
        Returns:
        The hedgePolicy.
      • setHedgePolicy

        public RouteAction.Builder setHedgePolicy​(HedgePolicy value)
         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;
      • setHedgePolicy

        public RouteAction.Builder setHedgePolicy​(HedgePolicy.Builder builderForValue)
         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;
      • mergeHedgePolicy

        public RouteAction.Builder mergeHedgePolicy​(HedgePolicy value)
         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;
      • clearHedgePolicy

        public RouteAction.Builder clearHedgePolicy()
         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;
      • getHedgePolicyBuilder

        public HedgePolicy.Builder getHedgePolicyBuilder()
         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;
      • getHedgePolicyOrBuilder

        public 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;
        Specified by:
        getHedgePolicyOrBuilder in interface RouteActionOrBuilder
      • setUnknownFields

        public final RouteAction.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>
      • mergeUnknownFields

        public final RouteAction.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<RouteAction.Builder>