Class RequestContent

  • All Implemented Interfaces:
    HttpRequestInterceptor

    @Contract(threading=IMMUTABLE)
    public class RequestContent
    extends java.lang.Object
    implements HttpRequestInterceptor
    RequestContent is the most important interceptor for outgoing requests. It is responsible for delimiting content length by adding Content-Length or Transfer-Content headers based on the properties of the enclosed entity and the protocol version. This interceptor is required for correct functioning of client side protocol processors.
    Since:
    4.0
    • Constructor Summary

      Constructors 
      Constructor Description
      RequestContent()
      Default constructor.
      RequestContent​(boolean overwrite)
      Constructor that can be used to fine-tune behavior of this interceptor.
    • Constructor Detail

      • RequestContent

        public RequestContent()
        Default constructor. The Content-Length or Transfer-Encoding will cause the interceptor to throw ProtocolException if already present in the response message.
      • RequestContent

        public RequestContent​(boolean overwrite)
        Constructor that can be used to fine-tune behavior of this interceptor.
        Parameters:
        overwrite - If set to true the Content-Length and Transfer-Encoding headers will be created or updated if already present. If set to false the Content-Length and Transfer-Encoding headers will cause the interceptor to throw ProtocolException if already present in the response message.
        Since:
        4.2
    • Method Detail

      • process

        public void process​(HttpRequest request,
                            HttpContext context)
                     throws HttpException,
                            java.io.IOException
        Description copied from interface: HttpRequestInterceptor
        Processes a request. On the client side, this step is performed before the request is sent to the server. On the server side, this step is performed on incoming messages before the message body is evaluated.
        Specified by:
        process in interface HttpRequestInterceptor
        Parameters:
        request - the request to preprocess
        context - the context for the request
        Throws:
        HttpException - in case of an HTTP protocol violation
        java.io.IOException - in case of an I/O error