@Experimental public class DefaultBackoffStrategy extends Object implements ConnectionBackoffStrategy
ConnectionBackoffStrategy
backs off either for a raw
network socket or connection timeout or if the server explicitly
sends a 429 (Too Many Requests) or a 503 (Service Unavailable) response.Constructor and Description |
---|
DefaultBackoffStrategy() |
Modifier and Type | Method and Description |
---|---|
boolean |
shouldBackoff(HttpResponse response)
Determines whether receiving the given
HttpResponse as
a result of request execution should result in a backoff
signal. |
boolean |
shouldBackoff(Throwable t)
Determines whether seeing the given
Throwable as
a result of request execution should result in a backoff
signal. |
public boolean shouldBackoff(HttpResponse response)
ConnectionBackoffStrategy
HttpResponse
as
a result of request execution should result in a backoff
signal. Implementations MUST restrict themselves to examining
the response header and MUST NOT consume any of the response
body, if any.shouldBackoff
in interface ConnectionBackoffStrategy
response
- the HttpResponse
that was receivedtrue
if a backoff signal should be
givenpublic boolean shouldBackoff(Throwable t)
ConnectionBackoffStrategy
Throwable
as
a result of request execution should result in a backoff
signal.shouldBackoff
in interface ConnectionBackoffStrategy
t
- the Throwable
that happenedtrue
if a backoff signal should be
given