Class DecompressingHttpClient

  • All Implemented Interfaces:
    HttpClient

    @Deprecated
    public class DecompressingHttpClient
    extends java.lang.Object
    implements HttpClient
    Deprecated.

    Decorator adding support for compressed responses. This class sets the Accept-Encoding header on requests to indicate support for the gzip and deflate compression schemes; it then checks the Content-Encoding header on the response to uncompress any compressed response bodies. The InputStream of the entity will contain the uncompressed content.

    N.B. Any upstream clients of this class need to be aware that this effectively obscures visibility into the length of a server response body, since the Content-Length header will correspond to the compressed entity length received from the server, but the content length experienced by reading the response body may be different (hopefully higher!).

    That said, this decorator is compatible with the CachingHttpClient in that the two decorators can be added in either order and still have cacheable responses be cached.

    Since:
    4.2
    • Constructor Detail

      • DecompressingHttpClient

        public DecompressingHttpClient()
        Deprecated.
        Constructs a decorator to ask for and handle compressed entities on the fly.
      • DecompressingHttpClient

        public DecompressingHttpClient​(HttpClient backend)
        Deprecated.
        Constructs a decorator to ask for and handle compressed entities on the fly.
        Parameters:
        backend - the HttpClient to use for actually issuing requests
    • Method Detail

      • getParams

        public HttpParams getParams()
        Deprecated.
        Description copied from interface: HttpClient
        Obtains 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.
        Specified by:
        getParams in interface HttpClient
        Returns:
        the default parameters
      • execute

        public HttpResponse execute​(HttpUriRequest request)
                             throws java.io.IOException,
                                    ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request using the default context.
        Specified by:
        execute in interface HttpClient
        Parameters:
        request - the request to execute
        Returns:
        the response to the request. This is always a final response, never an intermediate response with an 1xx status code. Whether redirects or authentication challenges will be returned or handled automatically depends on the implementation and configuration of this client.
        Throws:
        java.io.IOException - in case of a problem or the connection was aborted
        ClientProtocolException - in case of an http protocol error
      • getHttpClient

        public HttpClient getHttpClient()
        Deprecated.
        Gets the HttpClient to issue request.
        Returns:
        the HttpClient to issue request
      • execute

        public HttpResponse execute​(HttpUriRequest request,
                                    HttpContext context)
                             throws java.io.IOException,
                                    ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request using the given context.
        Specified by:
        execute in interface HttpClient
        Parameters:
        request - the request to execute
        context - the context to use for the execution, or null to use the default context
        Returns:
        the response to the request. This is always a final response, never an intermediate response with an 1xx status code. Whether redirects or authentication challenges will be returned or handled automatically depends on the implementation and configuration of this client.
        Throws:
        java.io.IOException - in case of a problem or the connection was aborted
        ClientProtocolException - in case of an http protocol error
      • execute

        public HttpResponse execute​(HttpHost target,
                                    HttpRequest request)
                             throws java.io.IOException,
                                    ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request using the default context.
        Specified by:
        execute in interface 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
        Returns:
        the response to the request. This is always a final response, never an intermediate response with an 1xx status code. Whether redirects or authentication challenges will be returned or handled automatically depends on the implementation and configuration of this client.
        Throws:
        java.io.IOException - in case of a problem or the connection was aborted
        ClientProtocolException - in case of an http protocol error
      • execute

        public HttpResponse execute​(HttpHost target,
                                    HttpRequest request,
                                    HttpContext context)
                             throws java.io.IOException,
                                    ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request using the given context.
        Specified by:
        execute in interface 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
        context - the context to use for the execution, or null to use the default context
        Returns:
        the response to the request. This is always a final response, never an intermediate response with an 1xx status code. Whether redirects or authentication challenges will be returned or handled automatically depends on the implementation and configuration of this client.
        Throws:
        java.io.IOException - in case of a problem or the connection was aborted
        ClientProtocolException - in case of an http protocol error
      • execute

        public <T> T execute​(HttpUriRequest request,
                             ResponseHandler<? extends T> responseHandler)
                      throws java.io.IOException,
                             ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request using the default context and processes the response using the given response handler.

        Implementing classes are required to ensure that 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 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
        ClientProtocolException - in case of an http protocol error
      • execute

        public <T> T execute​(HttpUriRequest request,
                             ResponseHandler<? extends T> responseHandler,
                             HttpContext context)
                      throws java.io.IOException,
                             ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request using the given context and processes the response using the given response handler.

        Implementing classes are required to ensure that 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 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
        ClientProtocolException - in case of an http protocol error
      • execute

        public <T> T execute​(HttpHost target,
                             HttpRequest request,
                             ResponseHandler<? extends T> responseHandler)
                      throws java.io.IOException,
                             ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request to the target using the default context and processes the response using the given response handler.

        Implementing classes are required to ensure that 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 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
        ClientProtocolException - in case of an http protocol error
      • execute

        public <T> T execute​(HttpHost target,
                             HttpRequest request,
                             ResponseHandler<? extends T> responseHandler,
                             HttpContext context)
                      throws java.io.IOException,
                             ClientProtocolException
        Deprecated.
        Description copied from interface: HttpClient
        Executes HTTP request to the target using the given context and processes the response using the given response handler.

        Implementing classes are required to ensure that 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 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
        ClientProtocolException - in case of an http protocol error