Class RequestContent
java.lang.Object
org.apache.hc.core5.http.protocol.RequestContent
- All Implemented Interfaces:
HttpRequestInterceptor
- Direct Known Subclasses:
H2RequestContent
@Contract(threading=IMMUTABLE)
public class RequestContent
extends 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
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final HttpRequestInterceptorSingleton instance.private final boolean -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.RequestContent(boolean overwrite) Constructor that can be used to fine-tune behavior of this interceptor. -
Method Summary
Modifier and TypeMethodDescriptionvoidprocess(HttpRequest request, EntityDetails entity, HttpContext context) Processes a request.
-
Field Details
-
INSTANCE
Singleton instance.- Since:
- 5.2
-
overwrite
private final boolean overwrite
-
-
Constructor Details
-
RequestContent
public RequestContent()Default constructor. TheContent-LengthorTransfer-Encodingwill cause the interceptor to throwProtocolExceptionif 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 totruetheContent-LengthandTransfer-Encodingheaders will be created or updated if already present. If set tofalsetheContent-LengthandTransfer-Encodingheaders will cause the interceptor to throwProtocolExceptionif already present in the response message.- Since:
- 4.2
-
-
Method Details
-
process
public void process(HttpRequest request, EntityDetails entity, HttpContext context) throws HttpException, IOException Description copied from interface:HttpRequestInterceptorProcesses 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:
processin interfaceHttpRequestInterceptor- Parameters:
request- the request to processentity- the request entity details ornullif not availablecontext- the context for the request- Throws:
HttpException- in case of an HTTP protocol violationIOException- in case of an I/O error
-