org.apache.http.impl.client
Class CloseableHttpClient

java.lang.Object
  extended by org.apache.http.impl.client.CloseableHttpClient
All Implemented Interfaces:
java.io.Closeable, org.apache.http.client.HttpClient

@ThreadSafe
public abstract class CloseableHttpClient
extends java.lang.Object
implements org.apache.http.client.HttpClient, java.io.Closeable

Base implementation of HttpClient that also implements Closeable.

Since:
4.3

Constructor Summary
CloseableHttpClient()
           
 
Method Summary
protected abstract  CloseableHttpResponse doExecute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context)
           
 CloseableHttpResponse execute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request)
          
 CloseableHttpResponse execute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.protocol.HttpContext context)
          
<T> T
execute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.client.ResponseHandler<? extends T> responseHandler)
          Executes a request using the default context and processes the response using the given response handler.
<T> T
execute(org.apache.http.HttpHost target, org.apache.http.HttpRequest request, org.apache.http.client.ResponseHandler<? extends T> responseHandler, org.apache.http.protocol.HttpContext context)
          Executes a request using the default context and processes the response using the given response handler.
 CloseableHttpResponse execute(org.apache.http.client.methods.HttpUriRequest request)
          
 CloseableHttpResponse execute(org.apache.http.client.methods.HttpUriRequest request, org.apache.http.protocol.HttpContext context)
          
<T> T
execute(org.apache.http.client.methods.HttpUriRequest request, org.apache.http.client.ResponseHandler<? extends T> responseHandler)
          Executes a request using the default context and processes the response using the given response handler.
<T> T
execute(org.apache.http.client.methods.HttpUriRequest request, org.apache.http.client.ResponseHandler<? extends T> responseHandler, org.apache.http.protocol.HttpContext context)
          Executes a request using the default context and processes the response using the given response handler.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.http.client.HttpClient
getConnectionManager, getParams
 
Methods inherited from interface java.io.Closeable
close
 

Constructor Detail

CloseableHttpClient

public CloseableHttpClient()
Method Detail

doExecute

protected abstract CloseableHttpResponse doExecute(org.apache.http.HttpHost target,
                                                   org.apache.http.HttpRequest request,
                                                   org.apache.http.protocol.HttpContext context)
                                            throws java.io.IOException,
                                                   org.apache.http.client.ClientProtocolException
Throws:
java.io.IOException
org.apache.http.client.ClientProtocolException

execute

public CloseableHttpResponse execute(org.apache.http.HttpHost target,
                                     org.apache.http.HttpRequest request,
                                     org.apache.http.protocol.HttpContext context)
                              throws java.io.IOException,
                                     org.apache.http.client.ClientProtocolException

Specified by:
execute in interface org.apache.http.client.HttpClient
Throws:
java.io.IOException
org.apache.http.client.ClientProtocolException

execute

public CloseableHttpResponse execute(org.apache.http.client.methods.HttpUriRequest request,
                                     org.apache.http.protocol.HttpContext context)
                              throws java.io.IOException,
                                     org.apache.http.client.ClientProtocolException

Specified by:
execute in interface org.apache.http.client.HttpClient
Throws:
java.io.IOException
org.apache.http.client.ClientProtocolException

execute

public CloseableHttpResponse execute(org.apache.http.client.methods.HttpUriRequest request)
                              throws java.io.IOException,
                                     org.apache.http.client.ClientProtocolException

Specified by:
execute in interface org.apache.http.client.HttpClient
Throws:
java.io.IOException
org.apache.http.client.ClientProtocolException

execute

public CloseableHttpResponse execute(org.apache.http.HttpHost target,
                                     org.apache.http.HttpRequest request)
                              throws java.io.IOException,
                                     org.apache.http.client.ClientProtocolException

Specified by:
execute in interface org.apache.http.client.HttpClient
Throws:
java.io.IOException
org.apache.http.client.ClientProtocolException

execute

public <T> T execute(org.apache.http.client.methods.HttpUriRequest request,
                     org.apache.http.client.ResponseHandler<? extends T> responseHandler)
          throws java.io.IOException,
                 org.apache.http.client.ClientProtocolException
Executes a request using the default context and processes the response using the given response handler. The content entity associated with the response is fully consumed and the underlying connection is released back to the connection manager automatically in all cases relieving individual ResponseHandlers from having to manage resource deallocation internally.

Specified by:
execute in interface org.apache.http.client.HttpClient
Parameters:
request - the request to execute
responseHandler - the response handler
Returns:
the response object as generated by the response handler.
Throws:
java.io.IOException - in case of a problem or the connection was aborted
org.apache.http.client.ClientProtocolException - in case of an http protocol error

execute

public <T> T execute(org.apache.http.client.methods.HttpUriRequest request,
                     org.apache.http.client.ResponseHandler<? extends T> responseHandler,
                     org.apache.http.protocol.HttpContext context)
          throws java.io.IOException,
                 org.apache.http.client.ClientProtocolException
Executes a request using the default context and processes the response using the given response handler. The content entity associated with the response is fully consumed and the underlying connection is released back to the connection manager automatically in all cases relieving individual ResponseHandlers from having to manage resource deallocation internally.

Specified by:
execute in interface org.apache.http.client.HttpClient
Parameters:
request - the request to execute
responseHandler - the response handler
context - the context to use for the execution, or null to use the default context
Returns:
the response object as generated by the response handler.
Throws:
java.io.IOException - in case of a problem or the connection was aborted
org.apache.http.client.ClientProtocolException - in case of an http protocol error

execute

public <T> T execute(org.apache.http.HttpHost target,
                     org.apache.http.HttpRequest request,
                     org.apache.http.client.ResponseHandler<? extends T> responseHandler)
          throws java.io.IOException,
                 org.apache.http.client.ClientProtocolException
Executes a request using the default context and processes the response using the given response handler. The content entity associated with the response is fully consumed and the underlying connection is released back to the connection manager automatically in all cases relieving individual ResponseHandlers from having to manage resource deallocation internally.

Specified by:
execute in interface org.apache.http.client.HttpClient
Parameters:
target - the target host for the request. Implementations may accept null if they can still determine a route, for example to a default target or by inspecting the request.
request - the request to execute
responseHandler - the response handler
Returns:
the response object as generated by the response handler.
Throws:
java.io.IOException - in case of a problem or the connection was aborted
org.apache.http.client.ClientProtocolException - in case of an http protocol error

execute

public <T> T execute(org.apache.http.HttpHost target,
                     org.apache.http.HttpRequest request,
                     org.apache.http.client.ResponseHandler<? extends T> responseHandler,
                     org.apache.http.protocol.HttpContext context)
          throws java.io.IOException,
                 org.apache.http.client.ClientProtocolException
Executes a request using the default context and processes the response using the given response handler. The content entity associated with the response is fully consumed and the underlying connection is released back to the connection manager automatically in all cases relieving individual ResponseHandlers from having to manage resource deallocation internally.

Specified by:
execute in interface org.apache.http.client.HttpClient
Parameters:
target - the target host for the request. Implementations may accept null if they can still determine a route, for example to a default target or by inspecting the request.
request - the request to execute
responseHandler - the response handler
context - the context to use for the execution, or null to use the default context
Returns:
the response object as generated by the response handler.
Throws:
java.io.IOException - in case of a problem or the connection was aborted
org.apache.http.client.ClientProtocolException - in case of an http protocol error