Class FrameInputBuffer


  • public final class FrameInputBuffer
    extends java.lang.Object
    Frame input buffer for HTTP/2 non-blocking connections.
    Since:
    5.0
    • Field Detail

      • maxFramePayloadSize

        private final int maxFramePayloadSize
      • bytes

        private final byte[] bytes
      • buffer

        private final java.nio.ByteBuffer buffer
      • payloadLen

        private int payloadLen
      • type

        private int type
      • flags

        private int flags
      • streamId

        private int streamId
    • Constructor Detail

      • FrameInputBuffer

        public FrameInputBuffer​(int maxFramePayloadSize)
    • Method Detail

      • read

        public RawFrame read​(java.nio.ByteBuffer src,
                             java.nio.channels.ReadableByteChannel channel)
                      throws java.io.IOException
        Attempts to read a complete frame from the given source buffer and the underlying data channel. The source buffer is consumed first. More data can be read from the channel if required.
        Parameters:
        src - the source buffer or null if not available.
        channel - the underlying data channel.
        Returns:
        a complete frame or null a complete frame cannot be read.
        Throws:
        java.io.IOException
        Since:
        5.1
      • read

        public RawFrame read​(java.nio.channels.ReadableByteChannel channel)
                      throws java.io.IOException
        Attempts to read a complete frame from the underlying data channel.
        Parameters:
        channel - the underlying data channel.
        Throws:
        java.io.IOException
      • reset

        public void reset()