public static class HttpClientConfig.Builder extends ClientConfig.AbstractBuilder<HttpClientConfig,HttpClientConfig.Builder>
connTimeout, defaultSchemeForDiscoveredNodes, discoveryFilter, discoveryFrequency, discoveryFrequencyTimeUnit, gson, isDiscoveryEnabled, isMultiThreaded, isRequestCompressionEnabled, maxConnectionIdleTime, maxConnectionIdleTimeDurationTimeUnit, readTimeout, serverList| Constructor and Description |
|---|
Builder(Collection<String> serverUris) |
Builder(HttpClientConfig httpClientConfig) |
Builder(String serverUri) |
| Modifier and Type | Method and Description |
|---|---|
HttpClientConfig |
build() |
HttpClientConfig.Builder |
credentialsProvider(org.apache.http.client.CredentialsProvider credentialsProvider)
Set a custom instance of an implementation of
CredentialsProvider. |
HttpClientConfig.Builder |
defaultCredentials(String username,
String password) |
HttpClientConfig.Builder |
defaultMaxTotalConnectionPerRoute(int defaultMaxTotalConnectionPerRoute) |
HttpClientConfig.Builder |
elasticsearchVersion(ElasticsearchVersion elasticsearchVersion) |
HttpClientConfig.Builder |
httpIOSessionStrategy(org.apache.http.nio.conn.SchemeIOSessionStrategy httpIOSessionStrategy)
Sets the socket factory that will be used by async client for HTTP scheme.
|
HttpClientConfig.Builder |
httpsIOSessionStrategy(org.apache.http.nio.conn.SchemeIOSessionStrategy httpsIOSessionStrategy)
Sets the socket factory that will be used by async client for HTTPS scheme.
|
HttpClientConfig.Builder |
maxTotalConnection(int maxTotalConnection) |
HttpClientConfig.Builder |
maxTotalConnectionPerRoute(org.apache.http.conn.routing.HttpRoute httpRoute,
int maxTotalConnection) |
HttpClientConfig.Builder |
maxTotalConnectionPerRoute(Map<org.apache.http.conn.routing.HttpRoute,Integer> maxTotalConnectionPerRoute) |
HttpClientConfig.Builder |
plainSocketFactory(org.apache.http.conn.socket.ConnectionSocketFactory socketFactory)
Sets the socket factory that will be used by sync client for HTTPS scheme.
|
HttpClientConfig.Builder |
preemptiveAuthTargetHosts(Set<org.apache.http.HttpHost> preemptiveAuthTargetHosts)
Sets preemptive authentication for the specified set of target hosts by pre-populating an authentication data cache.
|
HttpClientConfig.Builder |
proxy(org.apache.http.HttpHost proxy) |
HttpClientConfig.Builder |
proxy(org.apache.http.HttpHost proxy,
org.apache.http.client.AuthenticationStrategy proxyAuthenticationStrategy) |
HttpClientConfig.Builder |
setPreemptiveAuth(org.apache.http.HttpHost targetHost)
Sets preemptive authentication for the specified target host by pre-populating an authentication data cache.
|
HttpClientConfig.Builder |
sslSocketFactory(org.apache.http.conn.socket.LayeredConnectionSocketFactory socketFactory)
Sets the socket factory that will be used by sync client for HTTP scheme.
|
addServer, addServer, connTimeout, defaultSchemeForDiscoveredNodes, discoveryEnabled, discoveryFilter, discoveryFrequency, gson, maxConnectionIdleTime, multiThreaded, readTimeout, requestCompressionEnabledpublic Builder(HttpClientConfig httpClientConfig)
public Builder(Collection<String> serverUris)
public Builder(String serverUri)
public HttpClientConfig.Builder maxTotalConnection(int maxTotalConnection)
maxTotalConnection in class ClientConfig.AbstractBuilder<HttpClientConfig,HttpClientConfig.Builder>public HttpClientConfig.Builder defaultMaxTotalConnectionPerRoute(int defaultMaxTotalConnectionPerRoute)
public HttpClientConfig.Builder maxTotalConnectionPerRoute(Map<org.apache.http.conn.routing.HttpRoute,Integer> maxTotalConnectionPerRoute)
public HttpClientConfig.Builder maxTotalConnectionPerRoute(org.apache.http.conn.routing.HttpRoute httpRoute, int maxTotalConnection)
public HttpClientConfig.Builder credentialsProvider(org.apache.http.client.CredentialsProvider credentialsProvider)
CredentialsProvider.
This method will override any previous credential setting (including defaultCredentials) on this builder instance.public HttpClientConfig.Builder defaultCredentials(String username, String password)
public HttpClientConfig.Builder sslSocketFactory(org.apache.http.conn.socket.LayeredConnectionSocketFactory socketFactory)
SSLConnectionSocketFactory.getSocketFactory() is used by default.
A bad example of trust-all socket factory creation can be done as below:
// trust ALL certificates
SSLContext sslContext = new SSLContextBuilder().loadTrustMaterial(null, new TrustStrategy() {
public boolean isTrusted(X509Certificate[] arg0, String arg1) throws CertificateException {
return true;
}
}).build();
// skip hostname checks
HostnameVerifier hostnameVerifier = NoopHostnameVerifier.INSTANCE;
SSLConnectionSocketFactory sslSocketFactory = new SSLConnectionSocketFactory(sslContext, hostnameVerifier);
socketFactory - socket factory instance that will be registered for https scheme.SSLConnectionSocketFactorypublic HttpClientConfig.Builder plainSocketFactory(org.apache.http.conn.socket.ConnectionSocketFactory socketFactory)
PlainConnectionSocketFactory.getSocketFactory() is used by default.
socketFactory - socket factory instance that will be registered for http scheme.PlainConnectionSocketFactorypublic HttpClientConfig.Builder httpIOSessionStrategy(org.apache.http.nio.conn.SchemeIOSessionStrategy httpIOSessionStrategy)
NoopIOSessionStrategy.INSTANCE is used by default.
httpIOSessionStrategy - SchemeIOSessionStrategy instance that will be registered for http scheme.NoopIOSessionStrategypublic HttpClientConfig.Builder httpsIOSessionStrategy(org.apache.http.nio.conn.SchemeIOSessionStrategy httpsIOSessionStrategy)
SSLIOSessionStrategy.getSystemDefaultStrategy() is used by default.
httpsIOSessionStrategy - SchemeIOSessionStrategy instance that will be registered for https scheme.SSLIOSessionStrategypublic HttpClientConfig.Builder setPreemptiveAuth(org.apache.http.HttpHost targetHost)
It is mandatory to set a credentials provider to use preemptive authentication.
If preemptive authentication is set without setting a credentials provider an exception will be thrown.
public HttpClientConfig.Builder preemptiveAuthTargetHosts(Set<org.apache.http.HttpHost> preemptiveAuthTargetHosts)
It is mandatory to set a credentials provider to use preemptive authentication.
If preemptive authentication is set without setting a credentials provider an exception will be thrown.
preemptiveAuthTargetHosts - set of hosts targeted for preemptive authenticationpublic HttpClientConfig.Builder proxy(org.apache.http.HttpHost proxy)
public HttpClientConfig.Builder proxy(org.apache.http.HttpHost proxy, org.apache.http.client.AuthenticationStrategy proxyAuthenticationStrategy)
public HttpClientConfig.Builder elasticsearchVersion(ElasticsearchVersion elasticsearchVersion)
public HttpClientConfig build()
build in class ClientConfig.AbstractBuilder<HttpClientConfig,HttpClientConfig.Builder>Copyright © 2018. All rights reserved.