Package io.servicetalk.http.utils
Class RetryingHttpRequesterFilter.Builder
- java.lang.Object
-
- io.servicetalk.client.api.AbstractRetryingFilterBuilder<RetryingHttpRequesterFilter.Builder,RetryingHttpRequesterFilter,HttpRequestMetaData>
-
- io.servicetalk.http.utils.RetryingHttpRequesterFilter.Builder
-
- Enclosing class:
- RetryingHttpRequesterFilter
public static final class RetryingHttpRequesterFilter.Builder extends AbstractRetryingFilterBuilder<RetryingHttpRequesterFilter.Builder,RetryingHttpRequesterFilter,HttpRequestMetaData>
A builder forRetryingHttpRequesterFilter
, which puts an upper bound on retry attempts. To configure the maximum number of retry attempts seeAbstractRetryingFilterBuilder.maxRetries(int)
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.servicetalk.client.api.AbstractRetryingFilterBuilder
AbstractRetryingFilterBuilder.ReadOnlyRetryableSettings<Meta>
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected RetryingHttpRequesterFilter
build(AbstractRetryingFilterBuilder.ReadOnlyRetryableSettings<HttpRequestMetaData> readOnlySettings)
Builds a retryingAbstractRetryingFilterBuilder
for providedReadOnlyRetryableSettings<Meta>
.java.util.function.BiPredicate<HttpRequestMetaData,java.lang.Throwable>
retryForIdempotentRequestsPredicate()
Behaves asAbstractRetryingFilterBuilder.defaultRetryForPredicate()
, but also retries idempotent requests when applicable.-
Methods inherited from class io.servicetalk.client.api.AbstractRetryingFilterBuilder
buildWithConstantBackoff, buildWithConstantBackoff, buildWithConstantBackoffDeltaJitter, buildWithConstantBackoffDeltaJitter, buildWithConstantBackoffFullJitter, buildWithConstantBackoffFullJitter, buildWithExponentialBackoffDeltaJitter, buildWithExponentialBackoffDeltaJitter, buildWithExponentialBackoffFullJitter, buildWithExponentialBackoffFullJitter, buildWithImmediateRetries, defaultRetryForPredicate, maxRetries, retryFor
-
-
-
-
Method Detail
-
build
protected RetryingHttpRequesterFilter build(AbstractRetryingFilterBuilder.ReadOnlyRetryableSettings<HttpRequestMetaData> readOnlySettings)
Description copied from class:AbstractRetryingFilterBuilder
Builds a retryingAbstractRetryingFilterBuilder
for providedReadOnlyRetryableSettings<Meta>
.- Specified by:
build
in classAbstractRetryingFilterBuilder<RetryingHttpRequesterFilter.Builder,RetryingHttpRequesterFilter,HttpRequestMetaData>
- Parameters:
readOnlySettings
- a read-only settings for retryable filters- Returns:
- A new retrying
AbstractRetryingFilterBuilder
-
retryForIdempotentRequestsPredicate
public java.util.function.BiPredicate<HttpRequestMetaData,java.lang.Throwable> retryForIdempotentRequestsPredicate()
Behaves asAbstractRetryingFilterBuilder.defaultRetryForPredicate()
, but also retries idempotent requests when applicable.Note: This predicate expects that the retried
requests
have apayload body
that is replayable, i.e. multiple subscribes to the payloadPublisher
emit the same data.Publisher
s that do not emit any data or which are created from in-memory data are typically replayable.- Returns:
- a
BiPredicate
forAbstractRetryingFilterBuilder.retryFor(BiPredicate)
builder method
-
-