Interface IStream

  • All Superinterfaces:
    AutoCloseable, Closeable, Stream
    All Known Implementing Classes:
    HTTP2Stream

    public interface IStream
    extends Stream, Closeable

    The SPI interface for implementing a HTTP/2 stream.

    This class extends Stream by adding the methods required to implement the HTTP/2 stream functionalities.

    • Field Detail

    • Method Detail

      • isLocal

        boolean isLocal()
        Returns:
        whether this stream is local or remote
      • getSession

        ISession getSession()
        Specified by:
        getSession in interface Stream
        Returns:
        the session this stream is associated to
      • process

        void process​(Frame frame,
                     org.eclipse.jetty.util.Callback callback)

        Processes the given frame, belonging to this stream.

        Parameters:
        frame - the frame to process
        callback - the callback to complete when frame has been processed
      • updateClose

        boolean updateClose​(boolean update,
                            boolean local)

        Updates the close state of this stream.

        Parameters:
        update - whether to update the close state
        local - whether the update comes from a local operation (such as sending a frame that ends the stream) or a remote operation (such as receiving a frame
        Returns:
        whether the stream has been fully closed by this invocation
      • updateSendWindow

        int updateSendWindow​(int delta)

        Updates the stream send window by the given delta.

        Parameters:
        delta - the delta value (positive or negative) to add to the stream send window
        Returns:
        the previous value of the stream send window
      • updateRecvWindow

        int updateRecvWindow​(int delta)

        Updates the stream receive window by the given delta.

        Parameters:
        delta - the delta value (positive or negative) to add to the stream receive window
        Returns:
        the previous value of the stream receive window
      • notIdle

        void notIdle()

        Marks this stream as not idle so that the idle timeout is postponed.