Top Description Fields Constructors Methods
org.apache.http.impl.client

public Class HttpClientBuilder

extends Object
Class Inheritance
Imports
java.io.Closeable, .IOException, java.net.ProxySelector, java.util.ArrayList, .Collection, .Collections, .LinkedList, .List, .Map, java.util.concurrent.TimeUnit, javax.net.ssl.HostnameVerifier, .SSLContext, .SSLSocketFactory, org.apache.http.ConnectionReuseStrategy, .Header, .HttpHost, .HttpRequestInterceptor, .HttpResponseInterceptor, org.apache.http.auth.AuthSchemeProvider, org.apache.http.client.AuthenticationStrategy, .BackoffManager, .ConnectionBackoffStrategy, .CookieStore, .CredentialsProvider, .HttpRequestRetryHandler, .RedirectStrategy, .ServiceUnavailableRetryStrategy, .UserTokenHandler, org.apache.http.client.config.AuthSchemes, .RequestConfig, org.apache.http.client.entity.InputStreamFactory, org.apache.http.client.protocol.RequestAcceptEncoding, .RequestAddCookies, .RequestAuthCache, .RequestClientConnControl, .RequestDefaultHeaders, .RequestExpectContinue, .ResponseContentEncoding, .ResponseProcessCookies, org.apache.http.config.ConnectionConfig, .Lookup, .RegistryBuilder, .SocketConfig, org.apache.http.conn.ConnectionKeepAliveStrategy, .DnsResolver, .HttpClientConnectionManager, .SchemePortResolver, org.apache.http.conn.routing.HttpRoutePlanner, org.apache.http.conn.socket.ConnectionSocketFactory, .LayeredConnectionSocketFactory, .PlainConnectionSocketFactory, org.apache.http.conn.ssl.DefaultHostnameVerifier, .SSLConnectionSocketFactory, .X509HostnameVerifier, org.apache.http.conn.util.PublicSuffixMatcher, .PublicSuffixMatcherLoader, org.apache.http.cookie.CookieSpecProvider, org.apache.http.impl.NoConnectionReuseStrategy, org.apache.http.impl.auth.BasicSchemeFactory, .DigestSchemeFactory, .KerberosSchemeFactory, .NTLMSchemeFactory, .SPNegoSchemeFactory, org.apache.http.impl.conn.DefaultProxyRoutePlanner, .DefaultRoutePlanner, .DefaultSchemePortResolver, .PoolingHttpClientConnectionManager, .SystemDefaultRoutePlanner, org.apache.http.impl.execchain.BackoffStrategyExec, .ClientExecChain, .MainClientExec, .ProtocolExec, .RedirectExec, .RetryExec, .ServiceUnavailableRetryExec, org.apache.http.protocol.HttpProcessor, .HttpProcessorBuilder, .HttpRequestExecutor, .ImmutableHttpProcessor, .RequestContent, .RequestTargetHost, .RequestUserAgent, org.apache.http.ssl.SSLContexts, org.apache.http.util.TextUtils, .VersionInfo

Builder for CloseableHttpClient instances.

When a particular component is not explicitly set this class will use its default implementation. System properties will be taken into account when configuring the default implementations when useSystemProperties() method is called prior to calling build().

Please note that some settings used by this class can be mutually exclusive and may not apply when building CloseableHttpClient instances.

Since
4.3

Field Summary

Modifier and TypeField and Description
private boolean
private Lookup<AuthSchemeProvider>
private boolean
private BackoffManager
private List<Closeable>
private ConnectionBackoffStrategy
private boolean
private HttpClientConnectionManager
private boolean
private long
private TimeUnit
private boolean
private Map<String, InputStreamFactory>
private boolean
private Lookup<CookieSpecProvider>
private CookieStore
private CredentialsProvider
private ConnectionConfig
private Collection<? extends Header>
private RequestConfig
private SocketConfig
private boolean
private DnsResolver
private boolean
private boolean
private HostnameVerifier
private HttpProcessor
private ConnectionKeepAliveStrategy
private int
private int
private long
private TimeUnit
private HttpHost
private AuthenticationStrategy
private PublicSuffixMatcher
private boolean
private RedirectStrategy
private HttpRequestExecutor
private LinkedList<HttpRequestInterceptor>
private LinkedList<HttpRequestInterceptor>
private LinkedList<HttpResponseInterceptor>
private LinkedList<HttpResponseInterceptor>
private HttpRequestRetryHandler
private ConnectionReuseStrategy
private HttpRoutePlanner
private SchemePortResolver
private ServiceUnavailableRetryStrategy
private SSLContext
private LayeredConnectionSocketFactory
private boolean
private AuthenticationStrategy
private String
private UserTokenHandler

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
protected void
addCloseable(final Closeable closeable)

For internal use.

public final HttpClientBuilder
addInterceptorFirst(final HttpResponseInterceptor itcp)

Adds this protocol interceptor to the head of the protocol processing list.

public final HttpClientBuilder
addInterceptorFirst(final HttpRequestInterceptor itcp)

Adds this protocol interceptor to the head of the protocol processing list.

public final HttpClientBuilder
addInterceptorLast(final HttpResponseInterceptor itcp)

Adds this protocol interceptor to the tail of the protocol processing list.

public final HttpClientBuilder
addInterceptorLast(final HttpRequestInterceptor itcp)

Adds this protocol interceptor to the tail of the protocol processing list.

public CloseableHttpClient
public static HttpClientBuilder
protected ClientExecChain
createMainExec(final HttpRequestExecutor requestExec, final HttpClientConnectionManager connManager, final ConnectionReuseStrategy reuseStrategy, final ConnectionKeepAliveStrategy keepAliveStrategy, final HttpProcessor proxyHttpProcessor, final AuthenticationStrategy targetAuthStrategy, final AuthenticationStrategy proxyAuthStrategy, final UserTokenHandler userTokenHandler)

Produces an instance of ClientExecChain to be used as a main exec.

protected ClientExecChain
decorateMainExec(final ClientExecChain mainExec)

For internal use.

protected ClientExecChain
decorateProtocolExec(final ClientExecChain protocolExec)

For internal use.

public final HttpClientBuilder
disableAuthCaching()

Disables authentication scheme caching.

public final HttpClientBuilder
disableAutomaticRetries()

Disables automatic request recovery and re-execution.

public final HttpClientBuilder
disableConnectionState()

Disables connection state tracking.

public final HttpClientBuilder
disableContentCompression()

Disables automatic content decompression.

public final HttpClientBuilder
disableCookieManagement()

Disables state (cookie) management.

public final HttpClientBuilder
disableDefaultUserAgent()

Disables the default user agent set by this builder if none has been provided by the user.

public final HttpClientBuilder
disableRedirectHandling()

Disables automatic redirect handling.

public final HttpClientBuilder
evictExpiredConnections()

Makes this instance of HttpClient proactively evict expired connections from the connection pool using a background thread.

public final HttpClientBuilder
evictIdleConnections(final Long
maximum time persistent connections can stay idle while kept alive in the connection pool. Connections whose inactivity period exceeds this value will get closed and evicted from the pool.
maxIdleTime
,
final TimeUnit
time unit for the above parameter.
maxIdleTimeUnit
)

Makes this instance of HttpClient proactively evict idle connections from the connection pool using a background thread.
public final HttpClientBuilder
evictIdleConnections(final long
maximum time persistent connections can stay idle while kept alive in the connection pool. Connections whose inactivity period exceeds this value will get closed and evicted from the pool.
maxIdleTime
,
final TimeUnit
time unit for the above parameter.
maxIdleTimeUnit
)

Makes this instance of HttpClient proactively evict idle connections from the connection pool using a background thread.

public final HttpClientBuilder
setBackoffManager(final BackoffManager backoffManager)

Assigns BackoffManager instance.

public final HttpClientBuilder
setConnectionBackoffStrategy(final ConnectionBackoffStrategy connectionBackoffStrategy)

Assigns ConnectionBackoffStrategy instance.

public final HttpClientBuilder
public final HttpClientBuilder
setConnectionManagerShared(final boolean
defines whether or not the connection manager can be shared by multiple clients.
shared
)

Defines the connection manager is to be shared by multiple client instances.

public final HttpClientBuilder
public final HttpClientBuilder
setConnectionTimeToLive(final long connTimeToLive, final TimeUnit connTimeToLiveTimeUnit)

Sets maximum time to live for persistent connections

Please note this value can be overridden by the setConnectionManager( org.apache.http.conn.HttpClientConnectionManager) method.

public final HttpClientBuilder
setContentDecoderRegistry(final Map<String, InputStreamFactory> contentDecoderMap)

Assigns a map of org.apache.http.client.entity.InputStreamFactorys to be used for automatic content decompression.

public final HttpClientBuilder
setDefaultAuthSchemeRegistry(final Lookup<AuthSchemeProvider> authSchemeRegistry)

Assigns default org.apache.http.auth.AuthScheme registry which will be used for request execution if not explicitly set in the client execution context.

public final HttpClientBuilder
public final HttpClientBuilder
setDefaultCookieSpecRegistry(final Lookup<CookieSpecProvider> cookieSpecRegistry)

Assigns default org.apache.http.cookie.CookieSpec registry which will be used for request execution if not explicitly set in the client execution context.

public final HttpClientBuilder
setDefaultCookieStore(final CookieStore cookieStore)

Assigns default CookieStore instance which will be used for request execution if not explicitly set in the client execution context.

public final HttpClientBuilder
setDefaultCredentialsProvider(final CredentialsProvider credentialsProvider)

Assigns default CredentialsProvider instance which will be used for request execution if not explicitly set in the client execution context.

public final HttpClientBuilder
setDefaultHeaders(final Collection<? extends Header> defaultHeaders)

Assigns default request header values.

public final HttpClientBuilder
setDefaultRequestConfig(final RequestConfig config)

Assigns default RequestConfig instance which will be used for request execution if not explicitly set in the client execution context.

public final HttpClientBuilder
setDefaultSocketConfig(final SocketConfig config)

Assigns default SocketConfig.

public final HttpClientBuilder
setDnsResolver(final DnsResolver dnsResolver)

Assigns DnsResolver instance.

public final HttpClientBuilder
setHostnameVerifier(final X509HostnameVerifier hostnameVerifier)

Deprecated (4.4)
Assigns X509HostnameVerifier instance.
public final HttpClientBuilder
setHttpProcessor(final HttpProcessor httpprocessor)

Assigns HttpProcessor instance.

public final HttpClientBuilder
public final HttpClientBuilder
setMaxConnPerRoute(final int maxConnPerRoute)

Assigns maximum connection per route value.

public final HttpClientBuilder
setMaxConnTotal(final int maxConnTotal)

Assigns maximum total connection value.

public final HttpClientBuilder
setProxy(final HttpHost proxy)

Assigns default proxy value.

public final HttpClientBuilder
setProxyAuthenticationStrategy(final AuthenticationStrategy proxyAuthStrategy)

Assigns AuthenticationStrategy instance for proxy authentication.

public final HttpClientBuilder
setPublicSuffixMatcher(final PublicSuffixMatcher publicSuffixMatcher)

Assigns file containing public suffix matcher.

public final HttpClientBuilder
setRedirectStrategy(final RedirectStrategy redirectStrategy)

Assigns RedirectStrategy instance.

public final HttpClientBuilder
setRequestExecutor(final HttpRequestExecutor requestExec)

Assigns HttpRequestExecutor instance.

public final HttpClientBuilder
public final HttpClientBuilder
setRoutePlanner(final HttpRoutePlanner routePlanner)

Assigns HttpRoutePlanner instance.

public final HttpClientBuilder
setSchemePortResolver(final SchemePortResolver schemePortResolver)

Assigns SchemePortResolver instance.

public final HttpClientBuilder
public final HttpClientBuilder
setSslcontext(final SSLContext sslcontext)

Deprecated (4.5) use setSSLContext(SSLContext)
Assigns SSLContext instance.
public final HttpClientBuilder
setSSLContext(final SSLContext sslContext)

Assigns SSLContext instance.

public final HttpClientBuilder
public final HttpClientBuilder
public final HttpClientBuilder
setTargetAuthenticationStrategy(final AuthenticationStrategy targetAuthStrategy)

Assigns AuthenticationStrategy instance for target host authentication.

public final HttpClientBuilder
setUserAgent(final String userAgent)

Assigns User-Agent value.

public final HttpClientBuilder
setUserTokenHandler(final UserTokenHandler userTokenHandler)

Assigns UserTokenHandler instance.

private static String[]
split(final String s)

public final HttpClientBuilder
useSystemProperties()

Use system properties when creating and configuring default implementations.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait