Package dev.failsafe
APIs for performing failsafe executions.
Failsafe
is the entry point for the library. See FailsafeExecutor
for execution options.
-
Interface Summary Interface Description AsyncExecution<R> Allows asynchronous executions to record their results or complete an execution.Bulkhead<R> A bulkhead allows you to restrict concurrent executions as a way of preventing system overload.Call<R> A call that can perform Failsafe executions and can be cancelled.CircuitBreaker<R> A circuit breaker temporarily blocks execution when a configured number of failures are exceeded.Execution<R> Tracks synchronous executions and handles failures according to one or morepolicies
.ExecutionContext<R> Contextual execution information.Fallback<R> A Policy that handles failures using a fallback function or result.Policy<R> A policy for handling executions.PolicyListeners<S,R> Configures listeners for a policy execution result.RateLimiter<R> A rate limiter allows you to control the rate of executions as a way of preventing system overload.RetryPolicy<R> A policy that defines when retries should be performed.Timeout<R> A policy that cancels and fails an excecution with aTimeoutExceededException
if a timeout is exceeded. -
Class Summary Class Description AsyncExecutionImpl<R> AsyncExecution and AsyncExecutionInternal implementation.BulkheadBuilder<R> BuildsBulkhead
instances.BulkheadConfig<R> Configuration for aBulkhead
.CallImpl<R> A call implementation that delegates to an execution.CircuitBreakerBuilder<R> BuildsCircuitBreaker
instances.CircuitBreakerConfig<R> Configuration for aCircuitBreaker
.DelayablePolicyBuilder<S,C extends DelayablePolicyConfig<R>,R> A builder of policies that can be delayed between executions.DelayablePolicyConfig<R> Configuration for policies that can delay between executions.ExecutionImpl<R> Execution and ExecutionInternal implementation.Failsafe Simple, sophisticated failure handling.FailsafeExecutor<R> An executor that handles failures according to configuredpolicies
.FailurePolicyBuilder<S,C extends FailurePolicyConfig<R>,R> A Policy that allows configurable conditions to determine whether an execution is a failure.FailurePolicyConfig<R> Configuration for policies that handle specific failures and conditions.FallbackBuilder<R> BuildsFallback
instances.FallbackConfig<R> Configuration for aFallback
.Functions Utilities for creating and applying Failsafe executable functions.PolicyBuilder<S,C extends PolicyConfig<R>,R> Builds policies.PolicyConfig<R> Configuration for aPolicy
.RateLimiterBuilder<R> BuildsRateLimiter
instances.RateLimiterConfig<R> Configuration for aRateLimiter
.RetryPolicyBuilder<R> BuildsRetryPolicy
instances.RetryPolicyConfig<R> Configuration for aRetryPolicy
.SyncExecutionImpl<R> SyncExecution and SyncExecutionInternal implementation.TimeoutBuilder<R> BuildsTimeout
instances.TimeoutConfig<R> Configuration for aTimeout
. -
Enum Summary Enum Description CircuitBreaker.State The state of the circuit. -
Exception Summary Exception Description BulkheadFullException Thrown when an execution is attempted against aBulkhead
that is full.CircuitBreakerOpenException Thrown when an execution is attempted against aCircuitBreaker
that is open.FailsafeException Thrown when a synchronous Failsafe execution fails with anException
, wrapping the underlying exception.RateLimitExceededException Thrown when an execution exceeds or would exceed aRateLimiter
.TimeoutExceededException Thrown when an execution exceeds a configuredTimeout
.