fr.free.jnizet.retry.WaitStrategy Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of guava-retrying Show documentation
Show all versions of guava-retrying Show documentation
This is a small extension to Google's Guava library to allow for the creation of configurable retrying strategies for an arbitrary function call, such as something that talks to a remote service with flaky uptime.
package fr.free.jnizet.retry;
/**
* A strategy used to decide how long to sleep before retrying, after a failed attempt
* @author JB
*/
public interface WaitStrategy {
/**
* Returns the time, in milliseconds, to sleep before retrying
* @param previousAttemptNumber the number, starting from 1, of the previous (failed) attempt
* @param delaySinceFirstAttemptInMillis the delay since the start of the first attempt, in milliseconds
*/
long computeSleepTime(int previousAttemptNumber, long delaySinceFirstAttemptInMillis);
}