Class ChunkedStream

    • Constructor Detail

      • ChunkedStream

        public ChunkedStream​(InputStream in)
        Creates a new instance that fetches data from the specified stream.
      • ChunkedStream

        public ChunkedStream​(InputStream in,
                             int chunkSize)
        Creates a new instance that fetches data from the specified stream.
        Parameters:
        chunkSize - the number of bytes to fetch on each readChunk(BufferAllocator) call.
    • Method Detail

      • transferredBytes

        public long transferredBytes()
        Returns the number of transferred bytes.
      • readChunk

        public Buffer readChunk​(BufferAllocator allocator)
                         throws Exception
        Description copied from interface: ChunkedInput
        Fetches a chunked data from the stream. Once this method returns the last chunk and thus the stream has reached at its end, any subsequent ChunkedInput.isEndOfInput() call must return true.
        Specified by:
        readChunk in interface ChunkedInput<Buffer>
        Parameters:
        allocator - BufferAllocator if buffer allocation is necessary.
        Returns:
        the fetched chunk. null if there is no data left in the stream. Please note that null does not necessarily mean that the stream has reached at its end. In a slow stream, the next chunk might be unavailable just momentarily.
        Throws:
        Exception
      • length

        public long length()
        Description copied from interface: ChunkedInput
        Returns the length of the input.
        Specified by:
        length in interface ChunkedInput<Buffer>
        Returns:
        the length of the input if the length of the input is known. a negative value if the length of the input is unknown.