Package org.apache.hc.core5.http.impl
Class DefaultContentLengthStrategy
java.lang.Object
org.apache.hc.core5.http.impl.DefaultContentLengthStrategy
- All Implemented Interfaces:
ContentLengthStrategy
@Contract(threading=IMMUTABLE)
public class DefaultContentLengthStrategy
extends Object
implements ContentLengthStrategy
The default implementation of the content length strategy. This class
will throw
ProtocolException
if it encounters an unsupported
transfer encoding, multiple Content-Length
header
values or a malformed Content-Length
header value.
This class recognizes "chunked" transfer-coding only.
- Since:
- 5.0
-
Field Summary
FieldsFields inherited from interface org.apache.hc.core5.http.ContentLengthStrategy
CHUNKED, UNDEFINED
-
Constructor Summary
ConstructorsConstructorDescriptionCreatesDefaultContentLengthStrategy
instance. -
Method Summary
Modifier and TypeMethodDescriptionlong
determineLength
(HttpMessage message) Returns length of the given message in bytes.
-
Field Details
-
INSTANCE
-
-
Constructor Details
-
DefaultContentLengthStrategy
public DefaultContentLengthStrategy()CreatesDefaultContentLengthStrategy
instance.ContentLengthStrategy.UNDEFINED
is used per default when content length is not explicitly specified in the message.
-
-
Method Details
-
determineLength
Description copied from interface:ContentLengthStrategy
Returns length of the given message in bytes. The returned value must be a non-negative number,ContentLengthStrategy.CHUNKED
if the message is chunk coded, orContentLengthStrategy.UNDEFINED
if the message is not explicitly delineated.- Specified by:
determineLength
in interfaceContentLengthStrategy
- Parameters:
message
- HTTP message- Returns:
- content length,
ContentLengthStrategy.UNDEFINED
, orContentLengthStrategy.CHUNKED
- Throws:
HttpException
- in case of HTTP protocol violation
-