com.ning.http.client
Class AsyncHttpClientConfig.Builder

java.lang.Object
  extended by com.ning.http.client.AsyncHttpClientConfig.Builder
Enclosing class:
AsyncHttpClientConfig

public static class AsyncHttpClientConfig.Builder
extends Object

Builder for an AsyncHttpClient


Constructor Summary
AsyncHttpClientConfig.Builder()
           
AsyncHttpClientConfig.Builder(AsyncHttpClientConfig prototype)
          Create a config builder with values taken from the given prototype configuration.
 
Method Summary
 AsyncHttpClientConfig.Builder addIOExceptionFilter(IOExceptionFilter ioExceptionFilter)
          Add an IOExceptionFilter that will be invoked when an IOException occurs during the download/upload operations.
 AsyncHttpClientConfig.Builder addRequestFilter(RequestFilter requestFilter)
          Add an RequestFilter that will be invoked before AsyncHttpClient.executeRequest(Request)
 AsyncHttpClientConfig.Builder addResponseFilter(ResponseFilter responseFilter)
          Add an ResponseFilter that will be invoked as soon as the response is received, and before AsyncHandler.onStatusReceived(HttpResponseStatus).
 AsyncHttpClientConfig build()
          Build an AsyncHttpClientConfig
 int getRequestCompressionLevel()
          Return the compression level, or -1 if no compression is used.
 AsyncHttpClientConfig.Builder removeIOExceptionFilter(IOExceptionFilter ioExceptionFilter)
          Remove an IOExceptionFilter tthat will be invoked when an IOException occurs during the download/upload operations.
 AsyncHttpClientConfig.Builder removeRequestFilter(RequestFilter requestFilter)
          Remove an RequestFilter that will be invoked before AsyncHttpClient.executeRequest(Request)
 AsyncHttpClientConfig.Builder removeResponseFilter(ResponseFilter responseFilter)
          Remove an ResponseFilter that will be invoked as soon as the response is received, and before AsyncHandler.onStatusReceived(HttpResponseStatus).
 AsyncHttpClientConfig.Builder setAllowPoolingConnection(boolean allowPoolingConnection)
          Set true if connection can be pooled by a ConnectionsPool.
 AsyncHttpClientConfig.Builder setAllowSslConnectionPool(boolean allowSslConnectionPool)
          Return true is if connections pooling is enabled.
 AsyncHttpClientConfig.Builder setAsyncHttpClientProviderConfig(AsyncHttpProviderConfig<?,?> providerConfig)
          Set the AsyncHttpProviderConfig
 AsyncHttpClientConfig.Builder setCompressionEnabled(boolean compressionEnabled)
          Enable HTTP compression.
 AsyncHttpClientConfig.Builder setConnectionsPool(ConnectionsPool<?,?> connectionsPool)
          Set the ConnectionsPool
 AsyncHttpClientConfig.Builder setConnectionTimeoutInMs(int defaultConnectionTimeOutInMs)
          Set the maximum time in millisecond an AsyncHttpClient can wait when connecting to a remote host
 AsyncHttpClientConfig.Builder setExecutorService(ExecutorService applicationThreadPool)
          Set the ExecutorService an AsyncHttpClient use for handling asynchronous response.
 AsyncHttpClientConfig.Builder setFollowRedirects(boolean redirectEnabled)
          Set to true to enable HTTP redirect
 AsyncHttpClientConfig.Builder setHostnameVerifier(HostnameVerifier hostnameVerifier)
          Set the HostnameVerifier
 AsyncHttpClientConfig.Builder setIdleConnectionInPoolTimeoutInMs(int defaultIdleConnectionInPoolTimeoutInMs)
          Set the maximum time in millisecond an AsyncHttpClient will keep connection idle in pool.
 AsyncHttpClientConfig.Builder setIdleConnectionTimeoutInMs(int defaultIdleConnectionTimeoutInMs)
          Deprecated. Please use setIdleConnectionInPoolTimeoutInMs(int)
 AsyncHttpClientConfig.Builder setIOThreadMultiplier(int multiplier)
           
 AsyncHttpClientConfig.Builder setKeepAlive(boolean allowPoolingConnection)
          Deprecated. - Use setAllowPoolingConnection(boolean)
 AsyncHttpClientConfig.Builder setMaximumConnectionsPerHost(int defaultMaxConnectionPerHost)
          Set the maximum number of connections per hosts an AsyncHttpClient can handle.
 AsyncHttpClientConfig.Builder setMaximumConnectionsTotal(int defaultMaxTotalConnections)
          Set the maximum number of connections an AsyncHttpClient can handle.
 AsyncHttpClientConfig.Builder setMaximumNumberOfRedirects(int maxDefaultRedirects)
          Set the maximum number of HTTP redirect
 AsyncHttpClientConfig.Builder setMaxRequestRetry(int maxRequestRetry)
          Set the number of time a request will be retried when an IOException occurs because of a Network exception.
 AsyncHttpClientConfig.Builder setProxyServer(ProxyServer proxyServer)
          Set an instance of ProxyServer used by an AsyncHttpClient
 AsyncHttpClientConfig.Builder setRealm(Realm realm)
          Set the Realm that will be used for all requests.
 AsyncHttpClientConfig.Builder setRemoveQueryParamsOnRedirect(boolean removeQueryParamOnRedirect)
          Set to false if you don't want the query parameters removed when a redirect occurs.
 AsyncHttpClientConfig.Builder setRequestCompressionLevel(int requestCompressionLevel)
          Set the compression level, or -1 if no compression is used.
 AsyncHttpClientConfig.Builder setRequestTimeoutInMs(int defaultRequestTimeoutInMs)
          Set the maximum time in millisecond an AsyncHttpClient wait for a response
 AsyncHttpClientConfig.Builder setScheduledExecutorService(ScheduledExecutorService reaper)
          Set theScheduledExecutorService used to expire idle connections.
 AsyncHttpClientConfig.Builder setSSLContext(SSLContext sslContext)
          Set the SSLContext for secure connection.
 AsyncHttpClientConfig.Builder setSSLEngineFactory(SSLEngineFactory sslEngineFactory)
          Set the SSLEngineFactory for secure connection.
 AsyncHttpClientConfig.Builder setUseProxyProperties(boolean useProxyProperties)
          Sets whether AHC should use the default http.proxy* system properties to obtain proxy information.
 AsyncHttpClientConfig.Builder setUserAgent(String userAgent)
          Set the USER_AGENT header value
 AsyncHttpClientConfig.Builder setUseRawUrl(boolean useRawUrl)
          Allows use unescaped URLs in requests useful for retrieving data from broken sites
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AsyncHttpClientConfig.Builder

public AsyncHttpClientConfig.Builder()

AsyncHttpClientConfig.Builder

public AsyncHttpClientConfig.Builder(AsyncHttpClientConfig prototype)
Create a config builder with values taken from the given prototype configuration.

Parameters:
prototype - the configuration to use as a prototype.
Method Detail

setMaximumConnectionsTotal

public AsyncHttpClientConfig.Builder setMaximumConnectionsTotal(int defaultMaxTotalConnections)
Set the maximum number of connections an AsyncHttpClient can handle.

Parameters:
defaultMaxTotalConnections - the maximum number of connections an AsyncHttpClient can handle.
Returns:
a AsyncHttpClientConfig.Builder

setMaximumConnectionsPerHost

public AsyncHttpClientConfig.Builder setMaximumConnectionsPerHost(int defaultMaxConnectionPerHost)
Set the maximum number of connections per hosts an AsyncHttpClient can handle.

Parameters:
defaultMaxConnectionPerHost - the maximum number of connections per host an AsyncHttpClient can handle.
Returns:
a AsyncHttpClientConfig.Builder

setConnectionTimeoutInMs

public AsyncHttpClientConfig.Builder setConnectionTimeoutInMs(int defaultConnectionTimeOutInMs)
Set the maximum time in millisecond an AsyncHttpClient can wait when connecting to a remote host

Parameters:
defaultConnectionTimeOutInMs - the maximum time in millisecond an AsyncHttpClient can wait when connecting to a remote host
Returns:
a AsyncHttpClientConfig.Builder

setIdleConnectionTimeoutInMs

public AsyncHttpClientConfig.Builder setIdleConnectionTimeoutInMs(int defaultIdleConnectionTimeoutInMs)
Deprecated. Please use setIdleConnectionInPoolTimeoutInMs(int)

Set the maximum time in millisecond an AsyncHttpClient can stay idle.

Parameters:
defaultIdleConnectionTimeoutInMs - the maximum time in millisecond an AsyncHttpClient can stay idle.
Returns:
a AsyncHttpClientConfig.Builder

setIdleConnectionInPoolTimeoutInMs

public AsyncHttpClientConfig.Builder setIdleConnectionInPoolTimeoutInMs(int defaultIdleConnectionInPoolTimeoutInMs)
Set the maximum time in millisecond an AsyncHttpClient will keep connection idle in pool.

Parameters:
defaultIdleConnectionInPoolTimeoutInMs - the maximum time in millisecond an AsyncHttpClient will keep connection idle in pool.
Returns:
a AsyncHttpClientConfig.Builder

setRequestTimeoutInMs

public AsyncHttpClientConfig.Builder setRequestTimeoutInMs(int defaultRequestTimeoutInMs)
Set the maximum time in millisecond an AsyncHttpClient wait for a response

Parameters:
defaultRequestTimeoutInMs - the maximum time in millisecond an AsyncHttpClient wait for a response
Returns:
a AsyncHttpClientConfig.Builder

setFollowRedirects

public AsyncHttpClientConfig.Builder setFollowRedirects(boolean redirectEnabled)
Set to true to enable HTTP redirect

Parameters:
redirectEnabled - true if enabled.
Returns:
a AsyncHttpClientConfig.Builder

setMaximumNumberOfRedirects

public AsyncHttpClientConfig.Builder setMaximumNumberOfRedirects(int maxDefaultRedirects)
Set the maximum number of HTTP redirect

Parameters:
maxDefaultRedirects - the maximum number of HTTP redirect
Returns:
a AsyncHttpClientConfig.Builder

setCompressionEnabled

public AsyncHttpClientConfig.Builder setCompressionEnabled(boolean compressionEnabled)
Enable HTTP compression.

Parameters:
compressionEnabled - true if compression is enabled
Returns:
a AsyncHttpClientConfig.Builder

setUserAgent

public AsyncHttpClientConfig.Builder setUserAgent(String userAgent)
Set the USER_AGENT header value

Parameters:
userAgent - the USER_AGENT header value
Returns:
a AsyncHttpClientConfig.Builder

setAllowPoolingConnection

public AsyncHttpClientConfig.Builder setAllowPoolingConnection(boolean allowPoolingConnection)
Set true if connection can be pooled by a ConnectionsPool. Default is true.

Parameters:
allowPoolingConnection - true if connection can be pooled by a ConnectionsPool
Returns:
a AsyncHttpClientConfig.Builder

setKeepAlive

public AsyncHttpClientConfig.Builder setKeepAlive(boolean allowPoolingConnection)
Deprecated. - Use setAllowPoolingConnection(boolean)

Set true if connection can be pooled by a ConnectionsPool. Default is true.

Parameters:
allowPoolingConnection - true if connection can be pooled by a ConnectionsPool
Returns:
a AsyncHttpClientConfig.Builder

setScheduledExecutorService

public AsyncHttpClientConfig.Builder setScheduledExecutorService(ScheduledExecutorService reaper)
Set theScheduledExecutorService used to expire idle connections.

Parameters:
reaper - theScheduledExecutorService used to expire idle connections.
Returns:
a AsyncHttpClientConfig.Builder

setExecutorService

public AsyncHttpClientConfig.Builder setExecutorService(ExecutorService applicationThreadPool)
Set the ExecutorService an AsyncHttpClient use for handling asynchronous response.

Parameters:
applicationThreadPool - the ExecutorService an AsyncHttpClient use for handling asynchronous response.
Returns:
a AsyncHttpClientConfig.Builder

setProxyServer

public AsyncHttpClientConfig.Builder setProxyServer(ProxyServer proxyServer)
Set an instance of ProxyServer used by an AsyncHttpClient

Parameters:
proxyServer - instance of ProxyServer
Returns:
a AsyncHttpClientConfig.Builder

setSSLEngineFactory

public AsyncHttpClientConfig.Builder setSSLEngineFactory(SSLEngineFactory sslEngineFactory)
Set the SSLEngineFactory for secure connection.

Parameters:
sslEngineFactory - the SSLEngineFactory for secure connection
Returns:
a AsyncHttpClientConfig.Builder

setSSLContext

public AsyncHttpClientConfig.Builder setSSLContext(SSLContext sslContext)
Set the SSLContext for secure connection.

Parameters:
sslContext - the SSLContext for secure connection
Returns:
a AsyncHttpClientConfig.Builder

setAsyncHttpClientProviderConfig

public AsyncHttpClientConfig.Builder setAsyncHttpClientProviderConfig(AsyncHttpProviderConfig<?,?> providerConfig)
Set the AsyncHttpProviderConfig

Parameters:
providerConfig - the AsyncHttpProviderConfig
Returns:
a AsyncHttpClientConfig.Builder

setConnectionsPool

public AsyncHttpClientConfig.Builder setConnectionsPool(ConnectionsPool<?,?> connectionsPool)
Set the ConnectionsPool

Parameters:
connectionsPool - the ConnectionsPool
Returns:
a AsyncHttpClientConfig.Builder

setRealm

public AsyncHttpClientConfig.Builder setRealm(Realm realm)
Set the Realm that will be used for all requests.

Parameters:
realm - the Realm
Returns:
a AsyncHttpClientConfig.Builder

addRequestFilter

public AsyncHttpClientConfig.Builder addRequestFilter(RequestFilter requestFilter)
Add an RequestFilter that will be invoked before AsyncHttpClient.executeRequest(Request)

Parameters:
requestFilter - RequestFilter
Returns:
this

removeRequestFilter

public AsyncHttpClientConfig.Builder removeRequestFilter(RequestFilter requestFilter)
Remove an RequestFilter that will be invoked before AsyncHttpClient.executeRequest(Request)

Parameters:
requestFilter - RequestFilter
Returns:
this

addResponseFilter

public AsyncHttpClientConfig.Builder addResponseFilter(ResponseFilter responseFilter)
Add an ResponseFilter that will be invoked as soon as the response is received, and before AsyncHandler.onStatusReceived(HttpResponseStatus).

Parameters:
responseFilter - an ResponseFilter
Returns:
this

removeResponseFilter

public AsyncHttpClientConfig.Builder removeResponseFilter(ResponseFilter responseFilter)
Remove an ResponseFilter that will be invoked as soon as the response is received, and before AsyncHandler.onStatusReceived(HttpResponseStatus).

Parameters:
responseFilter - an ResponseFilter
Returns:
this

addIOExceptionFilter

public AsyncHttpClientConfig.Builder addIOExceptionFilter(IOExceptionFilter ioExceptionFilter)
Add an IOExceptionFilter that will be invoked when an IOException occurs during the download/upload operations.

Parameters:
ioExceptionFilter - an ResponseFilter
Returns:
this

removeIOExceptionFilter

public AsyncHttpClientConfig.Builder removeIOExceptionFilter(IOExceptionFilter ioExceptionFilter)
Remove an IOExceptionFilter tthat will be invoked when an IOException occurs during the download/upload operations.

Parameters:
ioExceptionFilter - an ResponseFilter
Returns:
this

getRequestCompressionLevel

public int getRequestCompressionLevel()
Return the compression level, or -1 if no compression is used.

Returns:
the compression level, or -1 if no compression is use

setRequestCompressionLevel

public AsyncHttpClientConfig.Builder setRequestCompressionLevel(int requestCompressionLevel)
Set the compression level, or -1 if no compression is used.

Parameters:
requestCompressionLevel - compression level, or -1 if no compression is use
Returns:
this

setMaxRequestRetry

public AsyncHttpClientConfig.Builder setMaxRequestRetry(int maxRequestRetry)
Set the number of time a request will be retried when an IOException occurs because of a Network exception.

Parameters:
maxRequestRetry - the number of time a request will be retried
Returns:
this

setAllowSslConnectionPool

public AsyncHttpClientConfig.Builder setAllowSslConnectionPool(boolean allowSslConnectionPool)
Return true is if connections pooling is enabled.

Parameters:
allowSslConnectionPool - true if enabled
Returns:
this

setUseRawUrl

public AsyncHttpClientConfig.Builder setUseRawUrl(boolean useRawUrl)
Allows use unescaped URLs in requests useful for retrieving data from broken sites

Parameters:
useRawUrl -
Returns:
this

setRemoveQueryParamsOnRedirect

public AsyncHttpClientConfig.Builder setRemoveQueryParamsOnRedirect(boolean removeQueryParamOnRedirect)
Set to false if you don't want the query parameters removed when a redirect occurs.

Parameters:
removeQueryParamOnRedirect -
Returns:
this

setUseProxyProperties

public AsyncHttpClientConfig.Builder setUseProxyProperties(boolean useProxyProperties)
Sets whether AHC should use the default http.proxy* system properties to obtain proxy information.

If useProxyProperties is set to true but setProxyServer(ProxyServer) was used to explicitly set a proxy server, the latter is preferred.

See http://download.oracle.com/javase/1.4.2/docs/guide/net/properties.html


setIOThreadMultiplier

public AsyncHttpClientConfig.Builder setIOThreadMultiplier(int multiplier)

setHostnameVerifier

public AsyncHttpClientConfig.Builder setHostnameVerifier(HostnameVerifier hostnameVerifier)
Set the HostnameVerifier

Parameters:
hostnameVerifier - HostnameVerifier
Returns:
this

build

public AsyncHttpClientConfig build()
Build an AsyncHttpClientConfig

Returns:
an AsyncHttpClientConfig


Copyright © 2011. All Rights Reserved.