org.apache.hc.client5.http

## Interface ServiceUnavailableRetryStrategy

All Known Implementing Classes:
  DefaultServiceUnavailableRetryStrategy

    @Contract(threading=STATELESS)
    public interface ServiceUnavailableRetryStrategy

Strategy interface that allows API users to plug in their own logic to control whether or not a retry should automatically be done, how many times it should be retried and so on.

Since:
  4.2

### Method Summary

Methods
`long` `getRetryInterval(org.apache.hc.core5.http.HttpResponse response, org.apache.hc.core5.http.protocol.HttpContext context)`
`boolean` `retryRequest(org.apache.hc.core5.http.HttpResponse response, int executionCount, org.apache.hc.core5.http.protocol.HttpContext context)` Determines if a method should be retried given the response from the target server.

### Method Detail

#### retryRequest

    boolean retryRequest(org.apache.hc.core5.http.HttpResponse response,
                       int executionCount,
                       org.apache.hc.core5.http.protocol.HttpContext context)

Determines if a method should be retried given the response from the target server.

Parameters:
  `response` - the response from the target server
  `executionCount` - the number of times this method has been unsuccessfully executed
  `context` - the context for the request execution
Returns:
  `true` if the method should be retried, `false` otherwise

#### getRetryInterval

    long getRetryInterval(org.apache.hc.core5.http.HttpResponse response,
                        org.apache.hc.core5.http.protocol.HttpContext context)

Returns:
  The interval between the subsequent retry in milliseconds.