Class AbstractContentDecoder

    • Constructor Detail

      • AbstractContentDecoder

        public AbstractContentDecoder​(java.nio.channels.ReadableByteChannel channel,
                                      SessionInputBuffer buffer,
                                      HttpTransportMetricsImpl metrics)
        Creates an instance of this class.
        Parameters:
        channel - the source channel.
        buffer - the session input buffer that can be used to store session data for intermediate processing.
        metrics - Transport metrics of the underlying HTTP transport.
    • Method Detail

      • isCompleted

        public boolean isCompleted()
        Description copied from interface: ContentDecoder
        Returns true if the entity has been received in its entirety.
        Specified by:
        isCompleted in interface ContentDecoder
        Returns:
        true if all the content has been consumed, false otherwise.
      • readFromChannel

        protected int readFromChannel​(java.nio.ByteBuffer dst)
                               throws java.io.IOException
        Reads from the channel to the destination.
        Parameters:
        dst - destination.
        Returns:
        number of bytes transferred.
        Throws:
        java.io.IOException
        Since:
        4.3
      • fillBufferFromChannel

        protected int fillBufferFromChannel()
                                     throws java.io.IOException
        Reads from the channel to the session buffer.
        Returns:
        number of bytes transferred.
        Throws:
        java.io.IOException
        Since:
        4.3
      • readFromChannel

        protected int readFromChannel​(java.nio.ByteBuffer dst,
                                      int limit)
                               throws java.io.IOException
        Reads from the channel to the destination.
        Parameters:
        dst - destination.
        limit - max number of bytes to transfer.
        Returns:
        number of bytes transferred.
        Throws:
        java.io.IOException
        Since:
        4.3