Example usage for org.apache.http.impl.client DefaultHttpRequestRetryHandler DefaultHttpRequestRetryHandler

List of usage examples for org.apache.http.impl.client DefaultHttpRequestRetryHandler DefaultHttpRequestRetryHandler

Introduction

In this page you can find the example usage for org.apache.http.impl.client DefaultHttpRequestRetryHandler DefaultHttpRequestRetryHandler.

Prototype

@SuppressWarnings("unchecked")
public DefaultHttpRequestRetryHandler(final int retryCount, final boolean requestSentRetryEnabled) 

Source Link

Document

Create the request retry handler using the following list of non-retriable IOException classes:
  • InterruptedIOException
  • UnknownHostException
  • ConnectException
  • SSLException

Usage

From source file:fi.helsinki.moodi.config.MoodleConfig.java

@Bean
public RestTemplate moodleReadOnlyRestTemplate() {
    return createRestTemplate(new DefaultHttpRequestRetryHandler(RETRY_COUNT, true));
}

From source file:com.proofpoint.http.client.ApacheHttpClient.java

public ApacheHttpClient(HttpClientConfig config, Set<? extends HttpRequestFilter> requestFilters) {
    Preconditions.checkNotNull(config, "config is null");
    Preconditions.checkNotNull(requestFilters, "requestFilters is null");

    PoolingClientConnectionManager connectionManager = new PoolingClientConnectionManager();
    connectionManager.setMaxTotal(config.getMaxConnections());
    connectionManager.setDefaultMaxPerRoute(config.getMaxConnectionsPerServer());

    BasicHttpParams httpParams = new BasicHttpParams();
    httpParams.setParameter(CoreConnectionPNames.SO_TIMEOUT,
            Ints.checkedCast(config.getReadTimeout().toMillis()));
    httpParams.setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT,
            Ints.checkedCast(config.getConnectTimeout().toMillis()));
    httpParams.setParameter(CoreConnectionPNames.SO_LINGER, 0); // do we need this?

    DefaultHttpClient defaultHttpClient = new DefaultHttpClient(connectionManager, httpParams);
    defaultHttpClient.setKeepAliveStrategy(new FixedIntervalKeepAliveStrategy(config.getKeepAliveInterval()));
    defaultHttpClient.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(0, false));
    this.httpClient = defaultHttpClient;

    this.requestFilters = ImmutableList.copyOf(requestFilters);
}

From source file:com.teradata.tempto.internal.hadoop.hdfs.WebHDFSClient.java

@Inject
public WebHDFSClient(@Named("hdfs.webhdfs.host") String webHdfsNameNodeHost,
        @Named("hdfs.webhdfs.port") int webHdfsNameNodePort) {
    this.nameNode = fromParts(checkNotNull(webHdfsNameNodeHost), webHdfsNameNodePort);
    checkArgument(webHdfsNameNodePort > 0, "Invalid name node WebHDFS port number: %s", webHdfsNameNodePort);

    this.httpClient = HttpClientBuilder.create()
            .setRetryHandler(new DefaultHttpRequestRetryHandler(NUMBER_OF_RETRIES, true)).build();
}

From source file:com.github.horrorho.liquiddonkey.http.HttpClientFactory.java

public CloseableHttpClient client() {
    logger.trace("<< client()");

    PoolingHttpClientConnectionManager connectionManager = config.isRelaxedSSL()
            ? new PoolingHttpClientConnectionManager(relaxedSocketFactoryRegistry())
            : new PoolingHttpClientConnectionManager();

    connectionManager.setMaxTotal(config.maxConnections());
    connectionManager.setDefaultMaxPerRoute(config.maxConnections());
    connectionManager.setValidateAfterInactivity(config.validateAfterInactivityMs());

    RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(config.timeoutMs())
            .setConnectTimeout(config.timeoutMs()).setSocketTimeout(config.timeoutMs()).build();

    HttpRequestRetryHandler httpRequestRetryHandler = config.isPersistent()
            ? new PersistentHttpRequestRetryHandler(config.retryCount(), config.retryDelayMs(),
                    config.timeoutMs(), true)
            : new DefaultHttpRequestRetryHandler(config.retryCount(), false);

    CloseableHttpClient client = HttpClients.custom().setRetryHandler(httpRequestRetryHandler)
            .setConnectionManager(connectionManager).setDefaultRequestConfig(requestConfig)
            .setUserAgent(config.userAgent()).build();

    logger.trace(">> client()", client);
    return client;
}

From source file:ee.ria.xroad.asyncsender.ProxyClient.java

private static HttpClient createHttpClient() {
    DefaultHttpClient httpClient = new DefaultHttpClient();
    HttpParams params = httpClient.getParams();
    HttpConnectionParams.setConnectionTimeout(params, CLIENT_TIMEOUT);

    // Disable request retry
    httpClient.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(0, false));

    return httpClient;
}

From source file:de.dan_nrw.android.scroid.dao.wallpapers.WallpaperDAO.java

/**
 * Downlaods a file//  w  w  w  .j  a v a2  s.co  m
 * @param <T> Type of return
 * @param uri URI of file to download
 * @param responseHandler Response handler parsing the response
 * @param maxRetries Max count of retries before exception
 * @return Parsed object based on download data
 * @throws ClientProtocolException
 * @throws IOException
 */
private <T> T download(URI uri, ResponseHandler<T> responseHandler, int maxRetries)
        throws ClientProtocolException, IOException {
    try {
        DefaultHttpClient client = new DefaultHttpClient();
        client.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(maxRetries, false));

        HttpRequest request = new HttpGet(uri);

        return client.execute((HttpUriRequest) request, responseHandler);
    } catch (IOException ex) {
        throw ex;
    }
}

From source file:edu.xiyou.fruits.WebCrawler.net.HttpRequest.java

public HttpRequest() {
    RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(Config.TTIME_OUT)
            .setSocketTimeout(Config.TTIME_OUT).build();
    client = HttpClients.custom().setUserAgent(
            "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36")
            .setRetryHandler(new DefaultHttpRequestRetryHandler(Config.RETRY, true))
            .setRedirectStrategy(new LaxRedirectStrategy()).setDefaultRequestConfig(requestConfig)
            .setConnectionManager(connectionManager).build();
}

From source file:com.nesscomputing.tinyhttp.HttpFetcher.java

public <T> T get(final URI uri, final String login, final String pw, final HttpContentConverter<T> converter)
        throws IOException {
    final HttpRequestBase httpRequest = new HttpGet(uri);
    final DefaultHttpClient httpClient = new DefaultHttpClient(connectionManager, params);
    // Maximum of three retries...
    httpClient.setHttpRequestRetryHandler(new DefaultHttpRequestRetryHandler(3, false));

    if (login != null) {
        httpClient.setCredentialsProvider(new HttpFetcherCredentialsProvider(login, pw));
    }/*from   w  ww.j  a  v  a2s. c o m*/

    final HttpContentResponseHandler<T> responseHandler = new HttpContentResponseHandler<T>(converter);

    try {
        final HttpContext httpContext = new BasicHttpContext();
        final HttpResponse httpResponse = httpClient.execute(httpRequest, httpContext);

        try {
            return responseHandler.handle(httpRequest, httpResponse);
        } finally {
            // Make sure that the content has definitely been consumed. Otherwise,
            // keep-alive does not work.
            final HttpEntity entity = httpResponse.getEntity();
            if (entity != null) {
                Closeables.closeQuietly(entity.getContent());
            }
        }
    } catch (Exception e) {
        LOG.warn("Aborting Request!", e);

        httpRequest.abort();
        throw Throwables.propagate(e);
    }
}