Search in sources :

Example 1 with ExponentialBackoff

use of com.peterphi.std.guice.common.retry.retry.backoff.ExponentialBackoff in project stdlib by petergeneric.

the class RetryMethodInterceptor method buildRetryManager.

private RetryManager buildRetryManager(Retry options) {
    final Timeout initial = new Timeout(options.backoffTime(), options.backoffUnit());
    ExponentialBackoff backoff = new ExponentialBackoff(initial, options.backoffExponent());
    return new RetryManager(backoff, options.maxAttempts(), attempts, attemptFailures);
}
Also used : Timeout(com.peterphi.std.threading.Timeout) RetryManager(com.peterphi.std.guice.common.retry.retry.RetryManager) ExponentialBackoff(com.peterphi.std.guice.common.retry.retry.backoff.ExponentialBackoff)

Aggregations

RetryManager (com.peterphi.std.guice.common.retry.retry.RetryManager)1 ExponentialBackoff (com.peterphi.std.guice.common.retry.retry.backoff.ExponentialBackoff)1 Timeout (com.peterphi.std.threading.Timeout)1