// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: envoy/api/v2/route/route_components.proto
package io.envoyproxy.envoy.api.v2.route;
public interface RetryPolicyOrBuilder extends
// @@protoc_insertion_point(interface_extends:envoy.api.v2.route.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;
* @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;
* @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;
*/
com.google.protobuf.UInt32ValueOrBuilder getNumRetriesOrBuilder();
/**
*
* Specifies a non-zero upstream timeout per retry 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_api_field_route.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. 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_api_field_route.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. 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_api_field_route.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 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.api.v2.route.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.api.v2.route.RetryPolicy.RetryPriority retry_priority = 4;
* @return The retryPriority.
*/
io.envoyproxy.envoy.api.v2.route.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.api.v2.route.RetryPolicy.RetryPriority retry_priority = 4;
*/
io.envoyproxy.envoy.api.v2.route.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.api.v2.route.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.api.v2.route.RetryPolicy.RetryHostPredicate retry_host_predicate = 5;
*/
io.envoyproxy.envoy.api.v2.route.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.api.v2.route.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.api.v2.route.RetryPolicy.RetryHostPredicate retry_host_predicate = 5;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.route.RetryPolicy.RetryHostPredicateOrBuilder>
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.api.v2.route.RetryPolicy.RetryHostPredicate retry_host_predicate = 5;
*/
io.envoyproxy.envoy.api.v2.route.RetryPolicy.RetryHostPredicateOrBuilder getRetryHostPredicateOrBuilder(
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 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.api.v2.route.RetryPolicy.RetryBackOff retry_back_off = 8;
* @return Whether the retryBackOff field is set.
*/
boolean hasRetryBackOff();
/**
*
* Specifies parameters that control 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.api.v2.route.RetryPolicy.RetryBackOff retry_back_off = 8;
* @return The retryBackOff.
*/
io.envoyproxy.envoy.api.v2.route.RetryPolicy.RetryBackOff getRetryBackOff();
/**
*
* Specifies parameters that control 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.api.v2.route.RetryPolicy.RetryBackOff retry_back_off = 8;
*/
io.envoyproxy.envoy.api.v2.route.RetryPolicy.RetryBackOffOrBuilder getRetryBackOffOrBuilder();
/**
*
* 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.api.v2.route.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.api.v2.route.HeaderMatcher retriable_headers = 9;
*/
io.envoyproxy.envoy.api.v2.route.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.api.v2.route.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.api.v2.route.HeaderMatcher retriable_headers = 9;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.route.HeaderMatcherOrBuilder>
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.api.v2.route.HeaderMatcher retriable_headers = 9;
*/
io.envoyproxy.envoy.api.v2.route.HeaderMatcherOrBuilder getRetriableHeadersOrBuilder(
int index);
/**
*
* HTTP headers which must be present in the request for retries to be attempted.
*
*
* repeated .envoy.api.v2.route.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.api.v2.route.HeaderMatcher retriable_request_headers = 10;
*/
io.envoyproxy.envoy.api.v2.route.HeaderMatcher getRetriableRequestHeaders(int index);
/**
*
* HTTP headers which must be present in the request for retries to be attempted.
*
*
* repeated .envoy.api.v2.route.HeaderMatcher retriable_request_headers = 10;
*/
int getRetriableRequestHeadersCount();
/**
*
* HTTP headers which must be present in the request for retries to be attempted.
*
*
* repeated .envoy.api.v2.route.HeaderMatcher retriable_request_headers = 10;
*/
java.util.List extends io.envoyproxy.envoy.api.v2.route.HeaderMatcherOrBuilder>
getRetriableRequestHeadersOrBuilderList();
/**
*
* HTTP headers which must be present in the request for retries to be attempted.
*
*
* repeated .envoy.api.v2.route.HeaderMatcher retriable_request_headers = 10;
*/
io.envoyproxy.envoy.api.v2.route.HeaderMatcherOrBuilder getRetriableRequestHeadersOrBuilder(
int index);
}