类org.apache.http.client.ServiceUnavailableRetryStrategy源码实例Demo

下面列出了怎么用org.apache.http.client.ServiceUnavailableRetryStrategy的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: ATest   文件: HttpClientUtil.java
public static CloseableHttpClient getHttpClient(final int executionCount, int retryInterval) {
	ServiceUnavailableRetryStrategy serviceUnavailableRetryStrategy = new MyServiceUnavailableRetryStrategy.Builder()
			.executionCount(executionCount).retryInterval(retryInterval).build();
	return HttpClientBuilder.create().setRetryHandler(new HttpRequestRetryHandler() {
		@Override
		public boolean retryRequest(IOException e, int count, HttpContext contr) {
			if (count >= executionCount) {
				// Do not retry if over max retry count
				return false;
			}
			if (e instanceof InterruptedIOException) {
				// Timeout
				return true;
			}

			return true;
		}
	}).setServiceUnavailableRetryStrategy(serviceUnavailableRetryStrategy)
			.setConnectionManager(new PoolingHttpClientConnectionManager()).build();
}
 
源代码2 项目: ATest   文件: HttpClientUtil.java
public static CloseableHttpClient getHttpClient(final int executionCount, int retryInterval) {
	ServiceUnavailableRetryStrategy serviceUnavailableRetryStrategy = new MyServiceUnavailableRetryStrategy.Builder()
			.executionCount(executionCount).retryInterval(retryInterval).build();
	return HttpClientBuilder.create().setRetryHandler(new HttpRequestRetryHandler() {
		@Override
		public boolean retryRequest(IOException e, int count, HttpContext contr) {
			if (count >= executionCount) {
				// Do not retry if over max retry count
				return false;
			}
			if (e instanceof InterruptedIOException) {
				// Timeout
				return true;
			}

			return true;
		}
	}).setServiceUnavailableRetryStrategy(serviceUnavailableRetryStrategy)
			.setConnectionManager(new PoolingHttpClientConnectionManager()).build();
}
 
源代码3 项目: gatk   文件: HttpUtils.java
public static synchronized CloseableHttpClient getClient() {
    if (HttpUtils.client == null) {
        HttpUtils.client = HttpClientBuilder.create()
            .setConnectionManager(new PoolingHttpClientConnectionManager())
            .setServiceUnavailableRetryStrategy(new ServiceUnavailableRetryStrategy() {
                private int interval = 1;

                @Override
                // retry at most 4 times if a 5xx status code is received, or no status line is present
                public boolean retryRequest(final HttpResponse resp, final int executionCount, final HttpContext context) {
                    if (executionCount > 4) {
                        return false;
                    }
                    if (resp.getStatusLine() == null) {
                        return true;
                    }
                    final int statusCode = resp.getStatusLine().getStatusCode();
                    return 500 <= statusCode && statusCode < 600;
                }

                @Override
                public long getRetryInterval() {
                    final int retryInterval = interval;
                    interval *= 2;
                    return retryInterval;
                }
            })
            .build();
    }
    return HttpUtils.client;
}
 
public ServiceUnavailableRetryStrategy getServiceUnavailableRetryStrategy() {
    return this.serviceUnavailableRetryStrategy;
}
 
public void setServiceUnavailableRetryStrategy(final ServiceUnavailableRetryStrategy serviceUnavailableRetryStrategy) {
    this.serviceUnavailableRetryStrategy = serviceUnavailableRetryStrategy;
}
 
源代码6 项目: multiapps-controller   文件: HttpClientFactory.java
private ServiceUnavailableRetryStrategy createServiceUnavailableRetryStrategy() {
    return new DefaultServiceUnavailableRetryStrategy(3, 2000);
}
 
private ServiceUnavailableRetryStrategy createServiceUnavailableRetryStrategy() {
    return new DefaultServiceUnavailableRetryStrategy(RETRY_COUNT, RETRY_INTERVAL_IN_MILLIS);
}
 
@Override
protected ServiceUnavailableRetryStrategy getServiceUnavailableRetryStrategy() {
	return new OctaneUnauthorizedRetryStrategy();
}
 
源代码9 项目: dss   文件: CommonsDataLoader.java
public void setServiceUnavailableRetryStrategy(final ServiceUnavailableRetryStrategy serviceUnavailableRetryStrategy) {
	this.serviceUnavailableRetryStrategy = serviceUnavailableRetryStrategy;
}
 
 类所在包
 同包方法