Representation of a HTTP message body
The release of resources must be idempotent, meaning that discard() may
be called after complete consumption of the body and it may also be called
Get a Future which may contain message body data.
If no data remains, the ByteBuffer will be empty as defined by ByteBuffer.hasRemaining()
Throw away this BodyReader
Examine whether the BodyReader may yield additional data.
This may be a result of being discarded, failure, or deletion of the data stream.
Because BodyReader is async it is not, in general, possible to definitively determine
if more data remains in the stream. Therefore, the contract of this method is that a return
value of true guarantees that no more data can be obtained from this BodyReader, but a
return value of false does not guarantee more data.
Accumulate any remaining data.
The remainder of the message body will be accumulated into a single buffer. If no data remains,
the ByteBuffer will be empty as defined by ByteBuffer.hasRemaining()
maximum bytes to accumulate before resulting in a failed future with the exception