|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface HttpClient
This interface represents only the most basic contract for HTTP request execution. It imposes no restrictions or particular details on the request execution process and leaves the specifics of state management, authentication and redirect handling up to individual implementations. This should make it easier to decorate the interface with additional functionality such as response content caching.
The usual execution flow can be demonstrated by the code snippet below:HttpClient httpclient = new DefaultHttpClient(); // Prepare a request object HttpGet httpget = new HttpGet("http://www.apache.org/"); // Execute the request HttpResponse response = httpclient.execute(httpget); // Examine the response status System.out.println(response.getStatusLine()); // Get hold of the response entity HttpEntity entity = response.getEntity(); // If the response does not enclose an entity, there is no need // to worry about connection release if (entity != null) { InputStream instream = entity.getContent(); try { BufferedReader reader = new BufferedReader( new InputStreamReader(instream)); // do something useful with the response System.out.println(reader.readLine()); } catch (IOException ex) { // In case of an IOException the connection will be released // back to the connection manager automatically throw ex; } catch (RuntimeException ex) { // In case of an unexpected exception you may want to abort // the HTTP request in order to shut down the underlying // connection and release it back to the connection manager. httpget.abort(); throw ex; } finally { // Closing the input stream will trigger connection release instream.close(); } // When HttpClient instance is no longer needed, // shut down the connection manager to ensure // immediate deallocation of all system resources httpclient.getConnectionManager().shutdown(); }
Method Summary | ||
---|---|---|
HttpResponse |
execute(HttpHost target,
HttpRequest request)
Executes a request to the target using the default context. |
|
HttpResponse |
execute(HttpHost target,
HttpRequest request,
HttpContext context)
Executes a request to the target using the given context. |
|
|
execute(HttpHost target,
HttpRequest request,
ResponseHandler<? extends T> responseHandler)
Executes a request to the target using the default context and processes the response using the given response handler. |
|
|
execute(HttpHost target,
HttpRequest request,
ResponseHandler<? extends T> responseHandler,
HttpContext context)
Executes a request to the target using the given context and processes the response using the given response handler. |
|
HttpResponse |
execute(HttpUriRequest request)
Executes a request using the default context. |
|
HttpResponse |
execute(HttpUriRequest request,
HttpContext context)
Executes a request using the given context. |
|
|
execute(HttpUriRequest request,
ResponseHandler<? extends T> responseHandler)
Executes a request using the default context and processes the response using the given response handler. |
|
|
execute(HttpUriRequest request,
ResponseHandler<? extends T> responseHandler,
HttpContext context)
Executes a request using the given context and processes the response using the given response handler. |
|
ClientConnectionManager |
getConnectionManager()
Obtains the connection manager used by this client. |
|
HttpParams |
getParams()
Obtains the parameters for this client. |
Method Detail |
---|
HttpParams getParams()
ClientConnectionManager getConnectionManager()
HttpResponse execute(HttpUriRequest request) throws IOException, ClientProtocolException
request
- the request to execute
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol errorHttpResponse execute(HttpUriRequest request, HttpContext context) throws IOException, ClientProtocolException
request
- the request to executecontext
- the context to use for the execution, or
null
to use the default context
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol errorHttpResponse execute(HttpHost target, HttpRequest request) throws IOException, ClientProtocolException
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
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol errorHttpResponse execute(HttpHost target, HttpRequest request, HttpContext context) throws IOException, ClientProtocolException
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 executecontext
- the context to use for the execution, or
null
to use the default context
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol error<T> T execute(HttpUriRequest request, ResponseHandler<? extends T> responseHandler) throws IOException, ClientProtocolException
request
- the request to executeresponseHandler
- the response handler
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol error<T> T execute(HttpUriRequest request, ResponseHandler<? extends T> responseHandler, HttpContext context) throws IOException, ClientProtocolException
request
- the request to executeresponseHandler
- the response handler
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol error<T> T execute(HttpHost target, HttpRequest request, ResponseHandler<? extends T> responseHandler) throws IOException, ClientProtocolException
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 executeresponseHandler
- the response handler
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol error<T> T execute(HttpHost target, HttpRequest request, ResponseHandler<? extends T> responseHandler, HttpContext context) throws IOException, ClientProtocolException
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 executeresponseHandler
- the response handlercontext
- the context to use for the execution, or
null
to use the default context
IOException
- in case of a problem or the connection was aborted
ClientProtocolException
- in case of an http protocol error
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |