@Beta public interface HttpIOExceptionHandler
Beta IOException in an HTTP request.
For example, this might be used to handle an IOException with BackOff policy.
public static class HttpBackOffIOExceptionHandler implements HttpIOExceptionHandler {
BackOff backOff;
Sleeper sleeper;
public boolean handle(HttpRequest request, boolean supportsRetry) throws IOException {
if (!supportsRetry) {
return false;
}
try {
return BackOffUtils.next(sleeper, backOff);
} catch (InterruptedException exception) {
Thread.currentThread().interrupt();
return false;
}
}
}
| Modifier and Type | Method and Description |
|---|---|
boolean |
handleIOException(HttpRequest request,
boolean supportsRetry)
Invoked when an
IOException is thrown during an HTTP request. |
boolean handleIOException(HttpRequest request, boolean supportsRetry) throws IOException
IOException is thrown during an HTTP request.
There is a simple rule that one must follow: If you modify the request object or modify its
execute interceptors in a way that should resolve the error, you must return true to
issue a retry.
request - request object that can be read from for context or modified before retrysupportsRetry - whether there will actually be a retry if this handler return true
. Some handlers may want to have an effect only when there will actually be a retry after
they handle their event (e.g. a handler that implements backoff policy).IOExceptionCopyright © 2011–2025 Google. All rights reserved.