Class AbstractHttpEntity
java.lang.Object
org.apache.hc.core5.http.io.entity.AbstractHttpEntity
- All Implemented Interfaces:
Closeable, AutoCloseable, EntityDetails, HttpEntity
- Direct Known Subclasses:
BasicHttpEntity, ByteArrayEntity, ByteBufferEntity, EntityTemplate, FileEntity, InputStreamEntity, PathEntity, SerializableEntity, StringEntity
Abstract base class for mutable entities. Provides the commonly used attributes for streamed and
self-contained implementations.
This class contains immutable attributes but subclasses may contain additional immutable or mutable attributes.
- Since:
- 4.0
-
Field Summary
Fields -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedAbstractHttpEntity(String contentType, String contentEncoding) Constructs a new instance with the given attributes kept as immutable.protectedAbstractHttpEntity(String contentType, String contentEncoding, boolean chunked) Constructs a new instance with the given attributes kept as immutable.protectedAbstractHttpEntity(ContentType contentType, String contentEncoding) Constructs a new instance with the given attributes kept as immutable.protectedAbstractHttpEntity(ContentType contentType, String contentEncoding, boolean chunked) Constructs a new instance with the given attributes kept as immutable. -
Method Summary
Modifier and TypeMethodDescriptionfinal StringGets content encoding of this entity, if known.final StringGets content type of this entity, if known.Gets the preliminary declaration of trailing headers.Gets supplier of message trailers - headers sent after message body.final booleanTests the chunked transfer hint for this entity.booleanTests if the entity is capable of producing its data more than once.toString()voidwriteTo(OutputStream outStream) Writes this entity to an OutputStream.static voidwriteTo(HttpEntity entity, OutputStream outStream) Writes an entity to an OutputStream.Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface EntityDetails
getContentLengthMethods inherited from interface HttpEntity
getContent, isStreaming
-
Field Details
-
OUTPUT_BUFFER_SIZE
static final int OUTPUT_BUFFER_SIZE- See Also:
-
contentType
-
contentEncoding
-
chunked
private final boolean chunked
-
-
Constructor Details
-
AbstractHttpEntity
Constructs a new instance with the given attributes kept as immutable.- Parameters:
contentType- The content-type string, may be null.contentEncoding- The content encoding string, may be null.chunked- Whether this entity should be chunked.
-
AbstractHttpEntity
Constructs a new instance with the given attributes kept as immutable.- Parameters:
contentType- The content-type, may be null.contentEncoding- The content encoding string, may be null.chunked- Whether this entity should be chunked.
-
AbstractHttpEntity
Constructs a new instance with the given attributes kept as immutable.The new instance:
- is not chunked.
- Parameters:
contentType- The content-type string, may be null.contentEncoding- The content encoding string, may be null.
-
AbstractHttpEntity
Constructs a new instance with the given attributes kept as immutable.The new instance:
- is not chunked.
- Parameters:
contentType- The content-type, may be null.contentEncoding- The content encoding string, may be null.
-
-
Method Details
-
writeTo
Writes an entity to an OutputStream.- Parameters:
entity- The entity to write, never null.outStream- Where to write the entity, never null.- Throws:
IOException- if the entity cannot generate its content stream; also thrown if the output stream is closed.UnsupportedOperationException- if entity content cannot be represented asInputStream.
-
writeTo
Writes this entity to an OutputStream.- Specified by:
writeToin interfaceHttpEntity- Parameters:
outStream- Where to write the entity, never null.- Throws:
IOException- if the entity cannot generate its content stream; also thrown if the output stream is closed.UnsupportedOperationException- if entity content cannot be represented asInputStream.
-
getContentType
Description copied from interface:EntityDetailsGets content type of this entity, if known.- Specified by:
getContentTypein interfaceEntityDetails- Returns:
- the content type of this entity, may be
null.
-
getContentEncoding
Description copied from interface:EntityDetailsGets content encoding of this entity, if known.- Specified by:
getContentEncodingin interfaceEntityDetails- Returns:
- the content encoding of this entity, may be
null.
-
isChunked
public final boolean isChunked()Tests the chunked transfer hint for this entity.The behavior of wrapping entities is implementation dependent, but should respect the primary purpose.
This implementation always returns
false.- Specified by:
isChunkedin interfaceEntityDetails- Returns:
- the chunked transfer hint for this entity.
-
isRepeatable
public boolean isRepeatable()Tests if the entity is capable of producing its data more than once. A repeatable entity's getContent() and writeTo(OutputStream) methods can be called more than once whereas a non-repeatable entity's can not.This implementation always returns
false.- Specified by:
isRepeatablein interfaceHttpEntity- Returns:
- true if the entity is repeatable, false otherwise.
-
getTrailers
Gets supplier of message trailers - headers sent after message body. May returnnullif trailers are not available.This implementation always returns
null.- Specified by:
getTrailersin interfaceHttpEntity
-
getTrailerNames
Gets the preliminary declaration of trailing headers.This implementation always returns an immutable empty set.
- Specified by:
getTrailerNamesin interfaceEntityDetails- Returns:
- the preliminary declaration of trailing headers.
-
toString
-