下面列出了怎么用org.apache.http.impl.client.DefaultServiceUnavailableRetryStrategy的API类实例代码及写法,或者点击链接到github查看源代码。
public static CloseableHttpClient buildHttpClient(AviCredentials creds) {
CloseableHttpClient httpClient = null;
if (!creds.getVerify()) {
SSLContext sslcontext = null;
try {
sslcontext = SSLContexts.custom().loadTrustMaterial(null, new TrustSelfSignedStrategy()).build();
} catch (Exception e) {
e.printStackTrace();
}
SSLConnectionSocketFactory sslConnectionSocketFactory = new SSLConnectionSocketFactory(sslcontext,
(s, sslSession) -> true);
httpClient = HttpClients.custom().setRetryHandler(retryHandler(creds))
.setSSLSocketFactory(sslConnectionSocketFactory)
.setServiceUnavailableRetryStrategy(new DefaultServiceUnavailableRetryStrategy(
creds.getNumApiRetries(), creds.getRetryWaitTime())).disableCookieManagement()
.build();
} else {
httpClient = HttpClients.custom().setRetryHandler(retryHandler(creds))
.setServiceUnavailableRetryStrategy(new DefaultServiceUnavailableRetryStrategy(
creds.getNumApiRetries(), creds.getRetryWaitTime())).disableCookieManagement()
.build();
}
return httpClient;
}
@Before
public void setUp() throws Exception {
this.client = HttpClients.custom()
.setServiceUnavailableRetryStrategy(new DefaultServiceUnavailableRetryStrategy(3, 2000))
.setDefaultRequestConfig(RequestConfig.custom()
.setSocketTimeout(10000)
.setConnectTimeout(10000)
.setConnectionRequestTimeout(10000)
.build()).build();
this.om = new ObjectMapper();
this.wsClient = ClientManager.createClient();
wsClient.getProperties().put(ClientProperties.HANDSHAKE_TIMEOUT, 10000);
if (System.getProperty(TRAVIS_ENV) != null) {
System.out.println("waiting for Travis machine");
waitUrlAvailable(String.format("http://%s:%d/api?name=foo", LOCALHOST, PORT));
// Thread.sleep(1); // Ugly sleep to debug travis
}
}
private ServiceUnavailableRetryStrategy createServiceUnavailableRetryStrategy() {
return new DefaultServiceUnavailableRetryStrategy(3, 2000);
}
private ServiceUnavailableRetryStrategy createServiceUnavailableRetryStrategy() {
return new DefaultServiceUnavailableRetryStrategy(RETRY_COUNT, RETRY_INTERVAL_IN_MILLIS);
}