Class AbstractHttpClient
- java.lang.Object
-
- org.apache.http.impl.client.CloseableHttpClient
-
- org.apache.http.impl.client.AbstractHttpClient
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,HttpClient
- Direct Known Subclasses:
DefaultHttpClient
@Contract(threading=SAFE_CONDITIONAL) @Deprecated public abstract class AbstractHttpClient extends CloseableHttpClient
Deprecated.(4.3) useHttpClientBuilder.Base class forHttpClientimplementations. This class acts as a facade to a number of special purpose handler or strategy implementations responsible for handling of a particular aspect of the HTTP protocol such as redirect or authentication handling or making decision about connection persistence and keep alive duration. This enables the users to selectively replace default implementation of those aspects with custom, application specific ones. This class also provides factory methods to instantiate those objects:HttpRequestExecutorobject used to transmit messages over HTTP connections. ThecreateRequestExecutor()must be implemented by concrete super classes to instantiate this object.BasicHttpProcessorobject to manage a list of protocol interceptors and apply cross-cutting protocol logic to all incoming and outgoing HTTP messages. ThecreateHttpProcessor()must be implemented by concrete super classes to instantiate this object.HttpRequestRetryHandlerobject used to decide whether or not a failed HTTP request is safe to retry automatically. ThecreateHttpRequestRetryHandler()must be implemented by concrete super classes to instantiate this object.ClientConnectionManagerobject used to manage persistent HTTP connections.ConnectionReuseStrategyobject used to decide whether or not a HTTP connection can be kept alive and re-used for subsequent HTTP requests. ThecreateConnectionReuseStrategy()must be implemented by concrete super classes to instantiate this object.ConnectionKeepAliveStrategyobject used to decide how long a persistent HTTP connection can be kept alive. ThecreateConnectionKeepAliveStrategy()must be implemented by concrete super classes to instantiate this object.CookieSpecRegistryobject used to maintain a list of supported cookie specifications. ThecreateCookieSpecRegistry()must be implemented by concrete super classes to instantiate this object.CookieStoreobject used to maintain a collection of cookies. ThecreateCookieStore()must be implemented by concrete super classes to instantiate this object.AuthSchemeRegistryobject used to maintain a list of supported authentication schemes. ThecreateAuthSchemeRegistry()must be implemented by concrete super classes to instantiate this object.CredentialsProviderobject used to maintain a collection user credentials. ThecreateCredentialsProvider()must be implemented by concrete super classes to instantiate this object.AuthenticationStrategyobject used to authenticate against the target host. ThecreateTargetAuthenticationStrategy()must be implemented by concrete super classes to instantiate this object.AuthenticationStrategyobject used to authenticate against the proxy host. ThecreateProxyAuthenticationStrategy()must be implemented by concrete super classes to instantiate this object.HttpRoutePlannerobject used to calculate a route for establishing a connection to the target host. The route may involve multiple intermediate hops. ThecreateHttpRoutePlanner()must be implemented by concrete super classes to instantiate this object.RedirectStrategyobject used to determine if an HTTP request should be redirected to a new location in response to an HTTP response received from the target server.UserTokenHandlerobject used to determine if the execution context is user identity specific. ThecreateUserTokenHandler()must be implemented by concrete super classes to instantiate this object.
This class also maintains a list of protocol interceptors intended for processing outgoing requests and incoming responses and provides methods for managing those interceptors. New protocol interceptors can be introduced to the protocol processor chain or removed from it if needed. Internally protocol interceptors are stored in a simple
ArrayList. They are executed in the same natural order as they are added to the list.AbstractHttpClient is thread safe. It is recommended that the same instance of this class is reused for multiple request executions. When an instance of DefaultHttpClient is no longer needed and is about to go out of scope the connection manager associated with it must be shut down by calling
ClientConnectionManager.shutdown()!- Since:
- 4.0
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedAbstractHttpClient(ClientConnectionManager conman, org.apache.http.params.HttpParams params)Deprecated.Creates a new HTTP client.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaddRequestInterceptor(org.apache.http.HttpRequestInterceptor itcp)Deprecated.voidaddRequestInterceptor(org.apache.http.HttpRequestInterceptor itcp, int index)Deprecated.voidaddResponseInterceptor(org.apache.http.HttpResponseInterceptor itcp)Deprecated.voidaddResponseInterceptor(org.apache.http.HttpResponseInterceptor itcp, int index)Deprecated.voidclearRequestInterceptors()Deprecated.voidclearResponseInterceptors()Deprecated.voidclose()Deprecated.protected AuthSchemeRegistrycreateAuthSchemeRegistry()Deprecated.protected ClientConnectionManagercreateClientConnectionManager()Deprecated.protected RequestDirectorcreateClientRequestDirector(org.apache.http.protocol.HttpRequestExecutor requestExec, ClientConnectionManager conman, org.apache.http.ConnectionReuseStrategy reustrat, ConnectionKeepAliveStrategy kastrat, HttpRoutePlanner rouplan, org.apache.http.protocol.HttpProcessor httpProcessor, HttpRequestRetryHandler retryHandler, RedirectHandler redirectHandler, AuthenticationHandler targetAuthHandler, AuthenticationHandler proxyAuthHandler, UserTokenHandler userTokenHandler, org.apache.http.params.HttpParams params)Deprecated.(4.1) do not useprotected RequestDirectorcreateClientRequestDirector(org.apache.http.protocol.HttpRequestExecutor requestExec, ClientConnectionManager conman, org.apache.http.ConnectionReuseStrategy reustrat, ConnectionKeepAliveStrategy kastrat, HttpRoutePlanner rouplan, org.apache.http.protocol.HttpProcessor httpProcessor, HttpRequestRetryHandler retryHandler, RedirectStrategy redirectStrategy, AuthenticationHandler targetAuthHandler, AuthenticationHandler proxyAuthHandler, UserTokenHandler userTokenHandler, org.apache.http.params.HttpParams params)Deprecated.(4.2) do not useprotected RequestDirectorcreateClientRequestDirector(org.apache.http.protocol.HttpRequestExecutor requestExec, ClientConnectionManager conman, org.apache.http.ConnectionReuseStrategy reustrat, ConnectionKeepAliveStrategy kastrat, HttpRoutePlanner rouplan, org.apache.http.protocol.HttpProcessor httpProcessor, HttpRequestRetryHandler retryHandler, RedirectStrategy redirectStrategy, AuthenticationStrategy targetAuthStrategy, AuthenticationStrategy proxyAuthStrategy, UserTokenHandler userTokenHandler, org.apache.http.params.HttpParams params)Deprecated.protected ConnectionKeepAliveStrategycreateConnectionKeepAliveStrategy()Deprecated.protected org.apache.http.ConnectionReuseStrategycreateConnectionReuseStrategy()Deprecated.protected CookieSpecRegistrycreateCookieSpecRegistry()Deprecated.protected CookieStorecreateCookieStore()Deprecated.protected CredentialsProvidercreateCredentialsProvider()Deprecated.protected org.apache.http.protocol.HttpContextcreateHttpContext()Deprecated.protected abstract org.apache.http.params.HttpParamscreateHttpParams()Deprecated.protected abstract org.apache.http.protocol.BasicHttpProcessorcreateHttpProcessor()Deprecated.protected HttpRequestRetryHandlercreateHttpRequestRetryHandler()Deprecated.protected HttpRoutePlannercreateHttpRoutePlanner()Deprecated.protected AuthenticationHandlercreateProxyAuthenticationHandler()Deprecated.(4.2) do not useprotected AuthenticationStrategycreateProxyAuthenticationStrategy()Deprecated.protected RedirectHandlercreateRedirectHandler()Deprecated.(4.1) do not useprotected org.apache.http.protocol.HttpRequestExecutorcreateRequestExecutor()Deprecated.protected AuthenticationHandlercreateTargetAuthenticationHandler()Deprecated.(4.2) do not useprotected AuthenticationStrategycreateTargetAuthenticationStrategy()Deprecated.protected UserTokenHandlercreateUserTokenHandler()Deprecated.protected org.apache.http.params.HttpParamsdetermineParams(org.apache.http.HttpRequest req)Deprecated.Obtains parameters for executing a request.protected CloseableHttpResponsedoExecute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context)Deprecated.AuthSchemeRegistrygetAuthSchemes()Deprecated.BackoffManagergetBackoffManager()Deprecated.ConnectionBackoffStrategygetConnectionBackoffStrategy()Deprecated.ConnectionKeepAliveStrategygetConnectionKeepAliveStrategy()Deprecated.ClientConnectionManagergetConnectionManager()Deprecated.Obtains the connection manager used by this client.org.apache.http.ConnectionReuseStrategygetConnectionReuseStrategy()Deprecated.CookieSpecRegistrygetCookieSpecs()Deprecated.CookieStoregetCookieStore()Deprecated.CredentialsProvidergetCredentialsProvider()Deprecated.protected org.apache.http.protocol.BasicHttpProcessorgetHttpProcessor()Deprecated.HttpRequestRetryHandlergetHttpRequestRetryHandler()Deprecated.org.apache.http.params.HttpParamsgetParams()Deprecated.Obtains the parameters for this client.AuthenticationHandlergetProxyAuthenticationHandler()Deprecated.(4.2) do not useAuthenticationStrategygetProxyAuthenticationStrategy()Deprecated.RedirectHandlergetRedirectHandler()Deprecated.(4.1) do not useRedirectStrategygetRedirectStrategy()Deprecated.org.apache.http.protocol.HttpRequestExecutorgetRequestExecutor()Deprecated.org.apache.http.HttpRequestInterceptorgetRequestInterceptor(int index)Deprecated.intgetRequestInterceptorCount()Deprecated.org.apache.http.HttpResponseInterceptorgetResponseInterceptor(int index)Deprecated.intgetResponseInterceptorCount()Deprecated.HttpRoutePlannergetRoutePlanner()Deprecated.AuthenticationHandlergetTargetAuthenticationHandler()Deprecated.(4.2) do not useAuthenticationStrategygetTargetAuthenticationStrategy()Deprecated.UserTokenHandlergetUserTokenHandler()Deprecated.voidremoveRequestInterceptorByClass(java.lang.Class<? extends org.apache.http.HttpRequestInterceptor> clazz)Deprecated.voidremoveResponseInterceptorByClass(java.lang.Class<? extends org.apache.http.HttpResponseInterceptor> clazz)Deprecated.voidsetAuthSchemes(AuthSchemeRegistry registry)Deprecated.voidsetBackoffManager(BackoffManager manager)Deprecated.voidsetConnectionBackoffStrategy(ConnectionBackoffStrategy strategy)Deprecated.voidsetCookieSpecs(CookieSpecRegistry registry)Deprecated.voidsetCookieStore(CookieStore cookieStore)Deprecated.voidsetCredentialsProvider(CredentialsProvider credsProvider)Deprecated.voidsetHttpRequestRetryHandler(HttpRequestRetryHandler handler)Deprecated.voidsetKeepAliveStrategy(ConnectionKeepAliveStrategy strategy)Deprecated.voidsetParams(org.apache.http.params.HttpParams params)Deprecated.Replaces the parameters.voidsetProxyAuthenticationHandler(AuthenticationHandler handler)Deprecated.(4.2) do not usevoidsetProxyAuthenticationStrategy(AuthenticationStrategy strategy)Deprecated.voidsetRedirectHandler(RedirectHandler handler)Deprecated.(4.1) do not usevoidsetRedirectStrategy(RedirectStrategy strategy)Deprecated.voidsetReuseStrategy(org.apache.http.ConnectionReuseStrategy strategy)Deprecated.voidsetRoutePlanner(HttpRoutePlanner routePlanner)Deprecated.voidsetTargetAuthenticationHandler(AuthenticationHandler handler)Deprecated.(4.2) do not usevoidsetTargetAuthenticationStrategy(AuthenticationStrategy strategy)Deprecated.voidsetUserTokenHandler(UserTokenHandler handler)Deprecated.
-
-
-
Constructor Detail
-
AbstractHttpClient
protected AbstractHttpClient(ClientConnectionManager conman, org.apache.http.params.HttpParams params)
Deprecated.Creates a new HTTP client.- Parameters:
conman- the connection managerparams- the parameters
-
-
Method Detail
-
createHttpParams
protected abstract org.apache.http.params.HttpParams createHttpParams()
Deprecated.
-
createHttpProcessor
protected abstract org.apache.http.protocol.BasicHttpProcessor createHttpProcessor()
Deprecated.
-
createHttpContext
protected org.apache.http.protocol.HttpContext createHttpContext()
Deprecated.
-
createClientConnectionManager
protected ClientConnectionManager createClientConnectionManager()
Deprecated.
-
createAuthSchemeRegistry
protected AuthSchemeRegistry createAuthSchemeRegistry()
Deprecated.
-
createCookieSpecRegistry
protected CookieSpecRegistry createCookieSpecRegistry()
Deprecated.
-
createRequestExecutor
protected org.apache.http.protocol.HttpRequestExecutor createRequestExecutor()
Deprecated.
-
createConnectionReuseStrategy
protected org.apache.http.ConnectionReuseStrategy createConnectionReuseStrategy()
Deprecated.
-
createConnectionKeepAliveStrategy
protected ConnectionKeepAliveStrategy createConnectionKeepAliveStrategy()
Deprecated.
-
createHttpRequestRetryHandler
protected HttpRequestRetryHandler createHttpRequestRetryHandler()
Deprecated.
-
createRedirectHandler
@Deprecated protected RedirectHandler createRedirectHandler()
Deprecated.(4.1) do not use
-
createTargetAuthenticationStrategy
protected AuthenticationStrategy createTargetAuthenticationStrategy()
Deprecated.
-
createTargetAuthenticationHandler
@Deprecated protected AuthenticationHandler createTargetAuthenticationHandler()
Deprecated.(4.2) do not use
-
createProxyAuthenticationStrategy
protected AuthenticationStrategy createProxyAuthenticationStrategy()
Deprecated.
-
createProxyAuthenticationHandler
@Deprecated protected AuthenticationHandler createProxyAuthenticationHandler()
Deprecated.(4.2) do not use
-
createCookieStore
protected CookieStore createCookieStore()
Deprecated.
-
createCredentialsProvider
protected CredentialsProvider createCredentialsProvider()
Deprecated.
-
createHttpRoutePlanner
protected HttpRoutePlanner createHttpRoutePlanner()
Deprecated.
-
createUserTokenHandler
protected UserTokenHandler createUserTokenHandler()
Deprecated.
-
getParams
public final org.apache.http.params.HttpParams getParams()
Deprecated.Description copied from interface:HttpClientObtains the parameters for this client. These parameters will become defaults for all requests being executed with this client, and for the parameters of dependent objects in this client.- Returns:
- the default parameters
-
setParams
public void setParams(org.apache.http.params.HttpParams params)
Deprecated.Replaces the parameters. The implementation here does not update parameters of dependent objects.- Parameters:
params- the new default parameters
-
getConnectionManager
public final ClientConnectionManager getConnectionManager()
Deprecated.Description copied from interface:HttpClientObtains the connection manager used by this client.- Returns:
- the connection manager
-
getRequestExecutor
public final org.apache.http.protocol.HttpRequestExecutor getRequestExecutor()
Deprecated.
-
getAuthSchemes
public final AuthSchemeRegistry getAuthSchemes()
Deprecated.
-
setAuthSchemes
public void setAuthSchemes(AuthSchemeRegistry registry)
Deprecated.
-
getConnectionBackoffStrategy
public final ConnectionBackoffStrategy getConnectionBackoffStrategy()
Deprecated.
-
setConnectionBackoffStrategy
public void setConnectionBackoffStrategy(ConnectionBackoffStrategy strategy)
Deprecated.
-
getCookieSpecs
public final CookieSpecRegistry getCookieSpecs()
Deprecated.
-
getBackoffManager
public final BackoffManager getBackoffManager()
Deprecated.
-
setBackoffManager
public void setBackoffManager(BackoffManager manager)
Deprecated.
-
setCookieSpecs
public void setCookieSpecs(CookieSpecRegistry registry)
Deprecated.
-
getConnectionReuseStrategy
public final org.apache.http.ConnectionReuseStrategy getConnectionReuseStrategy()
Deprecated.
-
setReuseStrategy
public void setReuseStrategy(org.apache.http.ConnectionReuseStrategy strategy)
Deprecated.
-
getConnectionKeepAliveStrategy
public final ConnectionKeepAliveStrategy getConnectionKeepAliveStrategy()
Deprecated.
-
setKeepAliveStrategy
public void setKeepAliveStrategy(ConnectionKeepAliveStrategy strategy)
Deprecated.
-
getHttpRequestRetryHandler
public final HttpRequestRetryHandler getHttpRequestRetryHandler()
Deprecated.
-
setHttpRequestRetryHandler
public void setHttpRequestRetryHandler(HttpRequestRetryHandler handler)
Deprecated.
-
getRedirectHandler
@Deprecated public final RedirectHandler getRedirectHandler()
Deprecated.(4.1) do not use
-
setRedirectHandler
@Deprecated public void setRedirectHandler(RedirectHandler handler)
Deprecated.(4.1) do not use
-
getRedirectStrategy
public final RedirectStrategy getRedirectStrategy()
Deprecated.- Since:
- 4.1
-
setRedirectStrategy
public void setRedirectStrategy(RedirectStrategy strategy)
Deprecated.- Since:
- 4.1
-
getTargetAuthenticationHandler
@Deprecated public final AuthenticationHandler getTargetAuthenticationHandler()
Deprecated.(4.2) do not use
-
setTargetAuthenticationHandler
@Deprecated public void setTargetAuthenticationHandler(AuthenticationHandler handler)
Deprecated.(4.2) do not use
-
getTargetAuthenticationStrategy
public final AuthenticationStrategy getTargetAuthenticationStrategy()
Deprecated.- Since:
- 4.2
-
setTargetAuthenticationStrategy
public void setTargetAuthenticationStrategy(AuthenticationStrategy strategy)
Deprecated.- Since:
- 4.2
-
getProxyAuthenticationHandler
@Deprecated public final AuthenticationHandler getProxyAuthenticationHandler()
Deprecated.(4.2) do not use
-
setProxyAuthenticationHandler
@Deprecated public void setProxyAuthenticationHandler(AuthenticationHandler handler)
Deprecated.(4.2) do not use
-
getProxyAuthenticationStrategy
public final AuthenticationStrategy getProxyAuthenticationStrategy()
Deprecated.- Since:
- 4.2
-
setProxyAuthenticationStrategy
public void setProxyAuthenticationStrategy(AuthenticationStrategy strategy)
Deprecated.- Since:
- 4.2
-
getCookieStore
public final CookieStore getCookieStore()
Deprecated.
-
setCookieStore
public void setCookieStore(CookieStore cookieStore)
Deprecated.
-
getCredentialsProvider
public final CredentialsProvider getCredentialsProvider()
Deprecated.
-
setCredentialsProvider
public void setCredentialsProvider(CredentialsProvider credsProvider)
Deprecated.
-
getRoutePlanner
public final HttpRoutePlanner getRoutePlanner()
Deprecated.
-
setRoutePlanner
public void setRoutePlanner(HttpRoutePlanner routePlanner)
Deprecated.
-
getUserTokenHandler
public final UserTokenHandler getUserTokenHandler()
Deprecated.
-
setUserTokenHandler
public void setUserTokenHandler(UserTokenHandler handler)
Deprecated.
-
getHttpProcessor
protected final org.apache.http.protocol.BasicHttpProcessor getHttpProcessor()
Deprecated.
-
getResponseInterceptorCount
public int getResponseInterceptorCount()
Deprecated.
-
getResponseInterceptor
public org.apache.http.HttpResponseInterceptor getResponseInterceptor(int index)
Deprecated.
-
getRequestInterceptor
public org.apache.http.HttpRequestInterceptor getRequestInterceptor(int index)
Deprecated.
-
getRequestInterceptorCount
public int getRequestInterceptorCount()
Deprecated.
-
addResponseInterceptor
public void addResponseInterceptor(org.apache.http.HttpResponseInterceptor itcp)
Deprecated.
-
addResponseInterceptor
public void addResponseInterceptor(org.apache.http.HttpResponseInterceptor itcp, int index)Deprecated.
-
clearResponseInterceptors
public void clearResponseInterceptors()
Deprecated.
-
removeResponseInterceptorByClass
public void removeResponseInterceptorByClass(java.lang.Class<? extends org.apache.http.HttpResponseInterceptor> clazz)
Deprecated.
-
addRequestInterceptor
public void addRequestInterceptor(org.apache.http.HttpRequestInterceptor itcp)
Deprecated.
-
addRequestInterceptor
public void addRequestInterceptor(org.apache.http.HttpRequestInterceptor itcp, int index)Deprecated.
-
clearRequestInterceptors
public void clearRequestInterceptors()
Deprecated.
-
removeRequestInterceptorByClass
public void removeRequestInterceptorByClass(java.lang.Class<? extends org.apache.http.HttpRequestInterceptor> clazz)
Deprecated.
-
doExecute
protected final CloseableHttpResponse doExecute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context) throws java.io.IOException, ClientProtocolException
Deprecated.- Specified by:
doExecutein classCloseableHttpClient- Throws:
java.io.IOExceptionClientProtocolException
-
createClientRequestDirector
@Deprecated protected RequestDirector createClientRequestDirector(org.apache.http.protocol.HttpRequestExecutor requestExec, ClientConnectionManager conman, org.apache.http.ConnectionReuseStrategy reustrat, ConnectionKeepAliveStrategy kastrat, HttpRoutePlanner rouplan, org.apache.http.protocol.HttpProcessor httpProcessor, HttpRequestRetryHandler retryHandler, RedirectHandler redirectHandler, AuthenticationHandler targetAuthHandler, AuthenticationHandler proxyAuthHandler, UserTokenHandler userTokenHandler, org.apache.http.params.HttpParams params)
Deprecated.(4.1) do not use
-
createClientRequestDirector
@Deprecated protected RequestDirector createClientRequestDirector(org.apache.http.protocol.HttpRequestExecutor requestExec, ClientConnectionManager conman, org.apache.http.ConnectionReuseStrategy reustrat, ConnectionKeepAliveStrategy kastrat, HttpRoutePlanner rouplan, org.apache.http.protocol.HttpProcessor httpProcessor, HttpRequestRetryHandler retryHandler, RedirectStrategy redirectStrategy, AuthenticationHandler targetAuthHandler, AuthenticationHandler proxyAuthHandler, UserTokenHandler userTokenHandler, org.apache.http.params.HttpParams params)
Deprecated.(4.2) do not use
-
createClientRequestDirector
protected RequestDirector createClientRequestDirector(org.apache.http.protocol.HttpRequestExecutor requestExec, ClientConnectionManager conman, org.apache.http.ConnectionReuseStrategy reustrat, ConnectionKeepAliveStrategy kastrat, HttpRoutePlanner rouplan, org.apache.http.protocol.HttpProcessor httpProcessor, HttpRequestRetryHandler retryHandler, RedirectStrategy redirectStrategy, AuthenticationStrategy targetAuthStrategy, AuthenticationStrategy proxyAuthStrategy, UserTokenHandler userTokenHandler, org.apache.http.params.HttpParams params)
Deprecated.- Since:
- 4.2
-
determineParams
protected org.apache.http.params.HttpParams determineParams(org.apache.http.HttpRequest req)
Deprecated.Obtains parameters for executing a request. The default implementation in this class creates a newClientParamsStackfrom the request parameters and the client parameters.This method is called by the default implementation of
CloseableHttpClient.execute(HttpHost,HttpRequest,HttpContext)to obtain the parameters for theDefaultRequestDirector.- Parameters:
req- the request that will be executed- Returns:
- the parameters to use
-
close
public void close()
Deprecated.
-
-