public LoggingResponseHandler(RetryPolicy retryPolicy, BackOff backOff) { delegate = new HttpBackOffUnsuccessfulResponseHandler(backOff) .setBackOffRequired(r -> retryPolicy.isRetryableStatusCode(r.getStatusCode())); }
request.setReadTimeout(2 * MILLIS_PER_MINUTE); // 2 minutes read timeout final HttpUnsuccessfulResponseHandler backoffHandler = new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()).setSleeper(sleeper); request.setInterceptor(wrappedCredential); request.setUnsuccessfulResponseHandler(
public CredentialOrBackoffResponseHandler() { HttpBackOffUnsuccessfulResponseHandler errorCodeHandler = new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()); errorCodeHandler.setBackOffRequired( new HttpBackOffUnsuccessfulResponseHandler.BackOffRequired() { @Override public boolean isRequired(HttpResponse response) { return BASE_HTTP_BACKOFF_REQUIRED.isRequired(response) || response.getStatusCode() == STATUS_CODE_TOO_MANY_REQUESTS; } }); if (sleeperOverride != null) { errorCodeHandler.setSleeper(sleeperOverride); } this.delegateHandler = errorCodeHandler; }
public static HttpRequestInitializer retryRequestInitializer() { return request -> { request.setConnectTimeout((int) TimeUnit.MINUTES.toMillis(2)); request.setReadTimeout((int) TimeUnit.MINUTES.toMillis(2)); request.setUnsuccessfulResponseHandler(new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff())); }; }
public CredentialOrBackoffResponseHandler() { HttpBackOffUnsuccessfulResponseHandler errorCodeHandler = new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()); errorCodeHandler.setBackOffRequired( new HttpBackOffUnsuccessfulResponseHandler.BackOffRequired() { @Override public boolean isRequired(HttpResponse response) { return BASE_HTTP_BACKOFF_REQUIRED.isRequired(response) || response.getStatusCode() == STATUS_CODE_TOO_MANY_REQUESTS; } }); if (sleeperOverride != null) { errorCodeHandler.setSleeper(sleeperOverride); } this.delegateHandler = errorCodeHandler; }
public static HttpRequestInitializer setHttpTimeout(final HttpRequestInitializer requestInitializer) { return request -> { requestInitializer.initialize(request); request.setConnectTimeout((int) TimeUnit.MINUTES.toMillis(2)); request.setReadTimeout((int) TimeUnit.MINUTES.toMillis(2)); request.setUnsuccessfulResponseHandler(new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff())); }; } }
.setUserKey(email) .buildHttpRequest(); HttpBackOffUnsuccessfulResponseHandler handler = new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()); handler.setBackOffRequired(response -> { int code = response.getStatusCode();
@Override public void initialize(HttpRequest request) { final HttpUnsuccessfulResponseHandler backoffHandler = new HttpBackOffUnsuccessfulResponseHandler( new ExponentialBackOff()) .setSleeper(sleeper); request.setInterceptor(wrappedCredential); request.setUnsuccessfulResponseHandler(
Gmail getServiceWithRetries() { HttpRequestInitializer httpRequestInitializer = request -> { credential.initialize(request); new UnsuccessfulResponseHandlerChainer().chain( request.getUnsuccessfulResponseHandler(), new HttpBackOffUnsuccessfulResponseHandler( backOffProvider.get())); }; return new Gmail.Builder(httpTransport, jsonFactory, httpRequestInitializer) .setApplicationName(GmailServiceModule.APP_NAME) .build(); }
private HttpRequest generateHttpRequest( PropertyResolver propertyResolver, HttpTransport httpTransport) throws IOException { HttpRequest httpRequest = httpTransport .createRequestFactory() .buildGetRequest(new GenericUrl(propertyResolver.getResolvedString())); httpRequest.setUnsuccessfulResponseHandler( new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()) .setBackOffRequired(HttpBackOffUnsuccessfulResponseHandler.BackOffRequired.ALWAYS)); httpRequest.setIOExceptionHandler(new HttpBackOffIOExceptionHandler(new ExponentialBackOff())); return httpRequest; }
@Override public void initialize(HttpRequest request) { final HttpUnsuccessfulResponseHandler backoffHandler = new HttpBackOffUnsuccessfulResponseHandler( new ExponentialBackOff()) .setSleeper(sleeper); request.setInterceptor(wrappedCredential); request.setUnsuccessfulResponseHandler(
@Override public void initialize(HttpRequest httpRequest) throws IOException { httpRequest.setIOExceptionHandler( new HttpBackOffIOExceptionHandler(new ExponentialBackOff())); httpRequest.setUnsuccessfulResponseHandler( new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff())); } }
.setUserKey(email) .buildHttpRequest(); HttpBackOffUnsuccessfulResponseHandler handler = new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()); handler.setBackOffRequired(response -> { int code = response.getStatusCode();
@Override public void initialize(HttpRequest request) { final HttpUnsuccessfulResponseHandler backoffHandler = new HttpBackOffUnsuccessfulResponseHandler( new ExponentialBackOff()) .setSleeper(sleeper); request.setInterceptor(wrappedCredential); request.setUnsuccessfulResponseHandler(
@Override public void initialize(HttpRequest httpRequest) throws IOException { httpRequest.setIOExceptionHandler( new HttpBackOffIOExceptionHandler(new ExponentialBackOff())); httpRequest.setUnsuccessfulResponseHandler( new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff())); } }
new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()).setBackOffRequired( new BackOffRequired() { public boolean isRequired(HttpResponse response) {
request.setReadTimeout(2 * ONEMINITUES); // 2 minutes read timeout final HttpUnsuccessfulResponseHandler backoffHandler = new HttpBackOffUnsuccessfulResponseHandler( new ExponentialBackOff()) .setSleeper(sleeper); request.setInterceptor(wrappedCredential); request.setUnsuccessfulResponseHandler(
= new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()); final HttpIOExceptionHandler ioExceptionHandler = new HttpBackOffIOExceptionHandler(new ExponentialBackOff());
new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()).setBackOffRequired( new BackOffRequired() { public boolean isRequired(HttpResponse response) {
/** Initializes the given request. */ @Override public final void initialize(final HttpRequest request) { request.setReadTimeout(2 * ONEMINITUES); // 2 minutes read timeout final HttpUnsuccessfulResponseHandler backoffHandler = new HttpBackOffUnsuccessfulResponseHandler(new ExponentialBackOff()).setSleeper(sleeper); request.setInterceptor(wrappedCredential); request.setUnsuccessfulResponseHandler( (request1, response, supportsRetry) -> { if (wrappedCredential.handleResponse(request1, response, supportsRetry)) { // If credential decides it can handle it, the return code or message indicated // something specific to authentication, and no backoff is desired. return true; } else if (backoffHandler.handleResponse(request1, response, supportsRetry)) { // Otherwise, we defer to the judgement of our internal backoff handler. LOG.info("Retrying " + request1.getUrl().toString()); return true; } else { return false; } }); request.setIOExceptionHandler( new HttpBackOffIOExceptionHandler(new ExponentialBackOff()).setSleeper(sleeper)); } }