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

io.envoyproxy.envoy.config.route.v3.RetryPolicyOrBuilder Maven / Gradle / Ivy

There is a newer version: 1.0.46
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: envoy/config/route/v3/route_components.proto

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

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

  /**
   * 
   * Specifies the conditions under which retry takes place. These are the same
   * conditions documented for :ref:`config_http_filters_router_x-envoy-retry-on` and
   * :ref:`config_http_filters_router_x-envoy-retry-grpc-on`.
   * 
* * string retry_on = 1; * @return The retryOn. */ java.lang.String getRetryOn(); /** *
   * Specifies the conditions under which retry takes place. These are the same
   * conditions documented for :ref:`config_http_filters_router_x-envoy-retry-on` and
   * :ref:`config_http_filters_router_x-envoy-retry-grpc-on`.
   * 
* * string retry_on = 1; * @return The bytes for retryOn. */ com.google.protobuf.ByteString getRetryOnBytes(); /** *
   * Specifies the allowed number of retries. This parameter is optional and
   * defaults to 1. These are the same conditions documented for
   * :ref:`config_http_filters_router_x-envoy-max-retries`.
   * 
* * .google.protobuf.UInt32Value num_retries = 2 [(.udpa.annotations.field_migrate) = { ... } * @return Whether the numRetries field is set. */ boolean hasNumRetries(); /** *
   * Specifies the allowed number of retries. This parameter is optional and
   * defaults to 1. These are the same conditions documented for
   * :ref:`config_http_filters_router_x-envoy-max-retries`.
   * 
* * .google.protobuf.UInt32Value num_retries = 2 [(.udpa.annotations.field_migrate) = { ... } * @return The numRetries. */ com.google.protobuf.UInt32Value getNumRetries(); /** *
   * Specifies the allowed number of retries. This parameter is optional and
   * defaults to 1. These are the same conditions documented for
   * :ref:`config_http_filters_router_x-envoy-max-retries`.
   * 
* * .google.protobuf.UInt32Value num_retries = 2 [(.udpa.annotations.field_migrate) = { ... } */ com.google.protobuf.UInt32ValueOrBuilder getNumRetriesOrBuilder(); /** *
   * Specifies a non-zero upstream timeout per retry attempt (including the initial attempt). This
   * parameter is optional. The same conditions documented for
   * :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms` apply.
   * .. note::
   *   If left unspecified, Envoy will use the global
   *   :ref:`route timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` for the request.
   *   Consequently, when using a :ref:`5xx <config_http_filters_router_x-envoy-retry-on>` based
   *   retry policy, a request that times out will not be retried as the total timeout budget
   *   would have been exhausted.
   * 
* * .google.protobuf.Duration per_try_timeout = 3; * @return Whether the perTryTimeout field is set. */ boolean hasPerTryTimeout(); /** *
   * Specifies a non-zero upstream timeout per retry attempt (including the initial attempt). This
   * parameter is optional. The same conditions documented for
   * :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms` apply.
   * .. note::
   *   If left unspecified, Envoy will use the global
   *   :ref:`route timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` for the request.
   *   Consequently, when using a :ref:`5xx <config_http_filters_router_x-envoy-retry-on>` based
   *   retry policy, a request that times out will not be retried as the total timeout budget
   *   would have been exhausted.
   * 
* * .google.protobuf.Duration per_try_timeout = 3; * @return The perTryTimeout. */ com.google.protobuf.Duration getPerTryTimeout(); /** *
   * Specifies a non-zero upstream timeout per retry attempt (including the initial attempt). This
   * parameter is optional. The same conditions documented for
   * :ref:`config_http_filters_router_x-envoy-upstream-rq-per-try-timeout-ms` apply.
   * .. note::
   *   If left unspecified, Envoy will use the global
   *   :ref:`route timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` for the request.
   *   Consequently, when using a :ref:`5xx <config_http_filters_router_x-envoy-retry-on>` based
   *   retry policy, a request that times out will not be retried as the total timeout budget
   *   would have been exhausted.
   * 
* * .google.protobuf.Duration per_try_timeout = 3; */ com.google.protobuf.DurationOrBuilder getPerTryTimeoutOrBuilder(); /** *
   * Specifies an upstream idle timeout per retry attempt (including the initial attempt). This
   * parameter is optional and if absent there is no per try idle timeout. The semantics of the per
   * try idle timeout are similar to the
   * :ref:`route idle timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` and
   * :ref:`stream idle timeout
   * <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>`
   * both enforced by the HTTP connection manager. The difference is that this idle timeout
   * is enforced by the router for each individual attempt and thus after all previous filters have
   * run, as opposed to *before* all previous filters run for the other idle timeouts. This timeout
   * is useful in cases in which total request timeout is bounded by a number of retries and a
   * :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`, but
   * there is a desire to ensure each try is making incremental progress. Note also that similar
   * to :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`,
   * this idle timeout does not start until after both the entire request has been received by the
   * router *and* a connection pool connection has been obtained. Unlike
   * :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`,
   * the idle timer continues once the response starts streaming back to the downstream client.
   * This ensures that response data continues to make progress without using one of the HTTP
   * connection manager idle timeouts.
   * 
* * .google.protobuf.Duration per_try_idle_timeout = 13; * @return Whether the perTryIdleTimeout field is set. */ boolean hasPerTryIdleTimeout(); /** *
   * Specifies an upstream idle timeout per retry attempt (including the initial attempt). This
   * parameter is optional and if absent there is no per try idle timeout. The semantics of the per
   * try idle timeout are similar to the
   * :ref:`route idle timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` and
   * :ref:`stream idle timeout
   * <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>`
   * both enforced by the HTTP connection manager. The difference is that this idle timeout
   * is enforced by the router for each individual attempt and thus after all previous filters have
   * run, as opposed to *before* all previous filters run for the other idle timeouts. This timeout
   * is useful in cases in which total request timeout is bounded by a number of retries and a
   * :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`, but
   * there is a desire to ensure each try is making incremental progress. Note also that similar
   * to :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`,
   * this idle timeout does not start until after both the entire request has been received by the
   * router *and* a connection pool connection has been obtained. Unlike
   * :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`,
   * the idle timer continues once the response starts streaming back to the downstream client.
   * This ensures that response data continues to make progress without using one of the HTTP
   * connection manager idle timeouts.
   * 
* * .google.protobuf.Duration per_try_idle_timeout = 13; * @return The perTryIdleTimeout. */ com.google.protobuf.Duration getPerTryIdleTimeout(); /** *
   * Specifies an upstream idle timeout per retry attempt (including the initial attempt). This
   * parameter is optional and if absent there is no per try idle timeout. The semantics of the per
   * try idle timeout are similar to the
   * :ref:`route idle timeout <envoy_v3_api_field_config.route.v3.RouteAction.timeout>` and
   * :ref:`stream idle timeout
   * <envoy_v3_api_field_extensions.filters.network.http_connection_manager.v3.HttpConnectionManager.stream_idle_timeout>`
   * both enforced by the HTTP connection manager. The difference is that this idle timeout
   * is enforced by the router for each individual attempt and thus after all previous filters have
   * run, as opposed to *before* all previous filters run for the other idle timeouts. This timeout
   * is useful in cases in which total request timeout is bounded by a number of retries and a
   * :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`, but
   * there is a desire to ensure each try is making incremental progress. Note also that similar
   * to :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`,
   * this idle timeout does not start until after both the entire request has been received by the
   * router *and* a connection pool connection has been obtained. Unlike
   * :ref:`per_try_timeout <envoy_v3_api_field_config.route.v3.RetryPolicy.per_try_timeout>`,
   * the idle timer continues once the response starts streaming back to the downstream client.
   * This ensures that response data continues to make progress without using one of the HTTP
   * connection manager idle timeouts.
   * 
* * .google.protobuf.Duration per_try_idle_timeout = 13; */ com.google.protobuf.DurationOrBuilder getPerTryIdleTimeoutOrBuilder(); /** *
   * Specifies an implementation of a RetryPriority which is used to determine the
   * distribution of load across priorities used for retries. Refer to
   * :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more details.
   * 
* * .envoy.config.route.v3.RetryPolicy.RetryPriority retry_priority = 4; * @return Whether the retryPriority field is set. */ boolean hasRetryPriority(); /** *
   * Specifies an implementation of a RetryPriority which is used to determine the
   * distribution of load across priorities used for retries. Refer to
   * :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more details.
   * 
* * .envoy.config.route.v3.RetryPolicy.RetryPriority retry_priority = 4; * @return The retryPriority. */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RetryPriority getRetryPriority(); /** *
   * Specifies an implementation of a RetryPriority which is used to determine the
   * distribution of load across priorities used for retries. Refer to
   * :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more details.
   * 
* * .envoy.config.route.v3.RetryPolicy.RetryPriority retry_priority = 4; */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RetryPriorityOrBuilder getRetryPriorityOrBuilder(); /** *
   * Specifies a collection of RetryHostPredicates that will be consulted when selecting a host
   * for retries. If any of the predicates reject the host, host selection will be reattempted.
   * Refer to :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more
   * details.
   * 
* * repeated .envoy.config.route.v3.RetryPolicy.RetryHostPredicate retry_host_predicate = 5; */ java.util.List getRetryHostPredicateList(); /** *
   * Specifies a collection of RetryHostPredicates that will be consulted when selecting a host
   * for retries. If any of the predicates reject the host, host selection will be reattempted.
   * Refer to :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more
   * details.
   * 
* * repeated .envoy.config.route.v3.RetryPolicy.RetryHostPredicate retry_host_predicate = 5; */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RetryHostPredicate getRetryHostPredicate(int index); /** *
   * Specifies a collection of RetryHostPredicates that will be consulted when selecting a host
   * for retries. If any of the predicates reject the host, host selection will be reattempted.
   * Refer to :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more
   * details.
   * 
* * repeated .envoy.config.route.v3.RetryPolicy.RetryHostPredicate retry_host_predicate = 5; */ int getRetryHostPredicateCount(); /** *
   * Specifies a collection of RetryHostPredicates that will be consulted when selecting a host
   * for retries. If any of the predicates reject the host, host selection will be reattempted.
   * Refer to :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more
   * details.
   * 
* * repeated .envoy.config.route.v3.RetryPolicy.RetryHostPredicate retry_host_predicate = 5; */ java.util.List getRetryHostPredicateOrBuilderList(); /** *
   * Specifies a collection of RetryHostPredicates that will be consulted when selecting a host
   * for retries. If any of the predicates reject the host, host selection will be reattempted.
   * Refer to :ref:`retry plugin configuration <arch_overview_http_retry_plugins>` for more
   * details.
   * 
* * repeated .envoy.config.route.v3.RetryPolicy.RetryHostPredicate retry_host_predicate = 5; */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RetryHostPredicateOrBuilder getRetryHostPredicateOrBuilder( int index); /** *
   * Retry options predicates that will be applied prior to retrying a request. These predicates
   * allow customizing request behavior between retries.
   * [#comment: add [#extension-category: envoy.retry_options_predicates] when there are built-in extensions]
   * 
* * repeated .envoy.config.core.v3.TypedExtensionConfig retry_options_predicates = 12; */ java.util.List getRetryOptionsPredicatesList(); /** *
   * Retry options predicates that will be applied prior to retrying a request. These predicates
   * allow customizing request behavior between retries.
   * [#comment: add [#extension-category: envoy.retry_options_predicates] when there are built-in extensions]
   * 
* * repeated .envoy.config.core.v3.TypedExtensionConfig retry_options_predicates = 12; */ io.envoyproxy.envoy.config.core.v3.TypedExtensionConfig getRetryOptionsPredicates(int index); /** *
   * Retry options predicates that will be applied prior to retrying a request. These predicates
   * allow customizing request behavior between retries.
   * [#comment: add [#extension-category: envoy.retry_options_predicates] when there are built-in extensions]
   * 
* * repeated .envoy.config.core.v3.TypedExtensionConfig retry_options_predicates = 12; */ int getRetryOptionsPredicatesCount(); /** *
   * Retry options predicates that will be applied prior to retrying a request. These predicates
   * allow customizing request behavior between retries.
   * [#comment: add [#extension-category: envoy.retry_options_predicates] when there are built-in extensions]
   * 
* * repeated .envoy.config.core.v3.TypedExtensionConfig retry_options_predicates = 12; */ java.util.List getRetryOptionsPredicatesOrBuilderList(); /** *
   * Retry options predicates that will be applied prior to retrying a request. These predicates
   * allow customizing request behavior between retries.
   * [#comment: add [#extension-category: envoy.retry_options_predicates] when there are built-in extensions]
   * 
* * repeated .envoy.config.core.v3.TypedExtensionConfig retry_options_predicates = 12; */ io.envoyproxy.envoy.config.core.v3.TypedExtensionConfigOrBuilder getRetryOptionsPredicatesOrBuilder( int index); /** *
   * The maximum number of times host selection will be reattempted before giving up, at which
   * point the host that was last selected will be routed to. If unspecified, this will default to
   * retrying once.
   * 
* * int64 host_selection_retry_max_attempts = 6; * @return The hostSelectionRetryMaxAttempts. */ long getHostSelectionRetryMaxAttempts(); /** *
   * HTTP status codes that should trigger a retry in addition to those specified by retry_on.
   * 
* * repeated uint32 retriable_status_codes = 7; * @return A list containing the retriableStatusCodes. */ java.util.List getRetriableStatusCodesList(); /** *
   * HTTP status codes that should trigger a retry in addition to those specified by retry_on.
   * 
* * repeated uint32 retriable_status_codes = 7; * @return The count of retriableStatusCodes. */ int getRetriableStatusCodesCount(); /** *
   * HTTP status codes that should trigger a retry in addition to those specified by retry_on.
   * 
* * repeated uint32 retriable_status_codes = 7; * @param index The index of the element to return. * @return The retriableStatusCodes at the given index. */ int getRetriableStatusCodes(int index); /** *
   * Specifies parameters that control exponential retry back off. This parameter is optional, in which case the
   * default base interval is 25 milliseconds or, if set, the current value of the
   * ``upstream.base_retry_backoff_ms`` runtime parameter. The default maximum interval is 10 times
   * the base interval. The documentation for :ref:`config_http_filters_router_x-envoy-max-retries`
   * describes Envoy's back-off algorithm.
   * 
* * .envoy.config.route.v3.RetryPolicy.RetryBackOff retry_back_off = 8; * @return Whether the retryBackOff field is set. */ boolean hasRetryBackOff(); /** *
   * Specifies parameters that control exponential retry back off. This parameter is optional, in which case the
   * default base interval is 25 milliseconds or, if set, the current value of the
   * ``upstream.base_retry_backoff_ms`` runtime parameter. The default maximum interval is 10 times
   * the base interval. The documentation for :ref:`config_http_filters_router_x-envoy-max-retries`
   * describes Envoy's back-off algorithm.
   * 
* * .envoy.config.route.v3.RetryPolicy.RetryBackOff retry_back_off = 8; * @return The retryBackOff. */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RetryBackOff getRetryBackOff(); /** *
   * Specifies parameters that control exponential retry back off. This parameter is optional, in which case the
   * default base interval is 25 milliseconds or, if set, the current value of the
   * ``upstream.base_retry_backoff_ms`` runtime parameter. The default maximum interval is 10 times
   * the base interval. The documentation for :ref:`config_http_filters_router_x-envoy-max-retries`
   * describes Envoy's back-off algorithm.
   * 
* * .envoy.config.route.v3.RetryPolicy.RetryBackOff retry_back_off = 8; */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RetryBackOffOrBuilder getRetryBackOffOrBuilder(); /** *
   * Specifies parameters that control a retry back-off strategy that is used
   * when the request is rate limited by the upstream server. The server may
   * return a response header like ``Retry-After`` or ``X-RateLimit-Reset`` to
   * provide feedback to the client on how long to wait before retrying. If
   * configured, this back-off strategy will be used instead of the
   * default exponential back off strategy (configured using ``retry_back_off``)
   * whenever a response includes the matching headers.
   * 
* * .envoy.config.route.v3.RetryPolicy.RateLimitedRetryBackOff rate_limited_retry_back_off = 11; * @return Whether the rateLimitedRetryBackOff field is set. */ boolean hasRateLimitedRetryBackOff(); /** *
   * Specifies parameters that control a retry back-off strategy that is used
   * when the request is rate limited by the upstream server. The server may
   * return a response header like ``Retry-After`` or ``X-RateLimit-Reset`` to
   * provide feedback to the client on how long to wait before retrying. If
   * configured, this back-off strategy will be used instead of the
   * default exponential back off strategy (configured using ``retry_back_off``)
   * whenever a response includes the matching headers.
   * 
* * .envoy.config.route.v3.RetryPolicy.RateLimitedRetryBackOff rate_limited_retry_back_off = 11; * @return The rateLimitedRetryBackOff. */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RateLimitedRetryBackOff getRateLimitedRetryBackOff(); /** *
   * Specifies parameters that control a retry back-off strategy that is used
   * when the request is rate limited by the upstream server. The server may
   * return a response header like ``Retry-After`` or ``X-RateLimit-Reset`` to
   * provide feedback to the client on how long to wait before retrying. If
   * configured, this back-off strategy will be used instead of the
   * default exponential back off strategy (configured using ``retry_back_off``)
   * whenever a response includes the matching headers.
   * 
* * .envoy.config.route.v3.RetryPolicy.RateLimitedRetryBackOff rate_limited_retry_back_off = 11; */ io.envoyproxy.envoy.config.route.v3.RetryPolicy.RateLimitedRetryBackOffOrBuilder getRateLimitedRetryBackOffOrBuilder(); /** *
   * HTTP response headers that trigger a retry if present in the response. A retry will be
   * triggered if any of the header matches match the upstream response headers.
   * The field is only consulted if 'retriable-headers' retry policy is active.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_headers = 9; */ java.util.List getRetriableHeadersList(); /** *
   * HTTP response headers that trigger a retry if present in the response. A retry will be
   * triggered if any of the header matches match the upstream response headers.
   * The field is only consulted if 'retriable-headers' retry policy is active.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_headers = 9; */ io.envoyproxy.envoy.config.route.v3.HeaderMatcher getRetriableHeaders(int index); /** *
   * HTTP response headers that trigger a retry if present in the response. A retry will be
   * triggered if any of the header matches match the upstream response headers.
   * The field is only consulted if 'retriable-headers' retry policy is active.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_headers = 9; */ int getRetriableHeadersCount(); /** *
   * HTTP response headers that trigger a retry if present in the response. A retry will be
   * triggered if any of the header matches match the upstream response headers.
   * The field is only consulted if 'retriable-headers' retry policy is active.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_headers = 9; */ java.util.List getRetriableHeadersOrBuilderList(); /** *
   * HTTP response headers that trigger a retry if present in the response. A retry will be
   * triggered if any of the header matches match the upstream response headers.
   * The field is only consulted if 'retriable-headers' retry policy is active.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_headers = 9; */ io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder getRetriableHeadersOrBuilder( int index); /** *
   * HTTP headers which must be present in the request for retries to be attempted.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_request_headers = 10; */ java.util.List getRetriableRequestHeadersList(); /** *
   * HTTP headers which must be present in the request for retries to be attempted.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_request_headers = 10; */ io.envoyproxy.envoy.config.route.v3.HeaderMatcher getRetriableRequestHeaders(int index); /** *
   * HTTP headers which must be present in the request for retries to be attempted.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_request_headers = 10; */ int getRetriableRequestHeadersCount(); /** *
   * HTTP headers which must be present in the request for retries to be attempted.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_request_headers = 10; */ java.util.List getRetriableRequestHeadersOrBuilderList(); /** *
   * HTTP headers which must be present in the request for retries to be attempted.
   * 
* * repeated .envoy.config.route.v3.HeaderMatcher retriable_request_headers = 10; */ io.envoyproxy.envoy.config.route.v3.HeaderMatcherOrBuilder getRetriableRequestHeadersOrBuilder( int index); }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy