Class ChunkedEncodedPublisher

  • All Implemented Interfaces:
    org.reactivestreams.Publisher<ByteBuffer>

    public class ChunkedEncodedPublisher
    extends Object
    implements org.reactivestreams.Publisher<ByteBuffer>
    An implementation of chunk-transfer encoding, but by wrapping a Publisher of ByteBuffer. This implementation supports chunk-headers, chunk-extensions, and trailer-part.

    Per RFC-7230, a chunk-transfer encoded message is defined as:

         chunked-body   = *chunk
                          last-chunk
                          trailer-part
                          CRLF
         chunk          = chunk-size [ chunk-ext ] CRLF
                          chunk-data CRLF
         chunk-size     = 1*HEXDIG
         last-chunk     = 1*("0") [ chunk-ext ] CRLF
         chunk-data     = 1*OCTET ; a sequence of chunk-size octets
    
         chunk-ext      = *( ";" chunk-ext-name [ "=" chunk-ext-val ] )
         chunk-ext-name = token
         chunk-ext-val  = token / quoted-string
    
         trailer-part   = *( header-field CRLF )
     
    See Also:
    ChunkedEncodedInputStream