Class AbstractFlowControlStrategy

java.lang.Object
org.eclipse.jetty.http2.AbstractFlowControlStrategy
All Implemented Interfaces:
FlowControlStrategy, org.eclipse.jetty.util.component.Dumpable
Direct Known Subclasses:
BufferingFlowControlStrategy, SimpleFlowControlStrategy

@ManagedObject public abstract class AbstractFlowControlStrategy extends Object implements FlowControlStrategy, org.eclipse.jetty.util.component.Dumpable
  • Constructor Details

    • AbstractFlowControlStrategy

      public AbstractFlowControlStrategy(int initialStreamSendWindow)
  • Method Details

    • getInitialStreamSendWindow

      @ManagedAttribute(value="The initial size of stream's flow control send window", readonly=true) public int getInitialStreamSendWindow()
    • getInitialStreamRecvWindow

      @ManagedAttribute(value="The initial size of stream's flow control receive window", readonly=true) public int getInitialStreamRecvWindow()
    • onStreamCreated

      public void onStreamCreated(Stream stream)
      Specified by:
      onStreamCreated in interface FlowControlStrategy
    • onStreamDestroyed

      public void onStreamDestroyed(Stream stream)
      Specified by:
      onStreamDestroyed in interface FlowControlStrategy
    • updateInitialStreamWindow

      public void updateInitialStreamWindow(Session session, int initialStreamWindow, boolean local)
      Specified by:
      updateInitialStreamWindow in interface FlowControlStrategy
    • onWindowUpdate

      public void onWindowUpdate(Session session, Stream stream, WindowUpdateFrame frame)
      Specified by:
      onWindowUpdate in interface FlowControlStrategy
    • onDataReceived

      public void onDataReceived(Session session, Stream stream, int length)
      Specified by:
      onDataReceived in interface FlowControlStrategy
    • windowUpdate

      public void windowUpdate(Session session, Stream stream, WindowUpdateFrame frame)
      Specified by:
      windowUpdate in interface FlowControlStrategy
    • onDataSending

      public void onDataSending(Stream stream, int length)
      Specified by:
      onDataSending in interface FlowControlStrategy
    • onDataSent

      public void onDataSent(Stream stream, int length)
      Specified by:
      onDataSent in interface FlowControlStrategy
    • updateWindow

      protected void updateWindow(Session session, Stream stream, WindowUpdateFrame frame)
    • updateRecvWindow

      protected int updateRecvWindow(Session session, int value)
    • updateSendWindow

      protected int updateSendWindow(Session session, int value)
    • updateRecvWindow

      protected int updateRecvWindow(Stream stream, int value)
    • updateSendWindow

      protected int updateSendWindow(Stream stream, int value)
    • sendWindowUpdate

      protected void sendWindowUpdate(Session session, Stream stream, List<WindowUpdateFrame> frames)
    • onSessionStalled

      protected void onSessionStalled(Session session)
    • onStreamStalled

      protected void onStreamStalled(Stream stream)
    • onSessionUnstalled

      protected void onSessionUnstalled(Session session)
    • onStreamUnstalled

      protected void onStreamUnstalled(Stream stream)
    • getSessionStallTime

      @ManagedAttribute(value="The time, in milliseconds, that the session flow control has stalled", readonly=true) public long getSessionStallTime()
    • getStreamsStallTime

      @ManagedAttribute(value="The time, in milliseconds, that the streams flow control has stalled", readonly=true) public long getStreamsStallTime()
    • reset

      @ManagedOperation(value="Resets the statistics", impact="ACTION") public void reset()
    • dump

      public String dump()
      Specified by:
      dump in interface org.eclipse.jetty.util.component.Dumpable
    • dump

      public void dump(Appendable out, String indent) throws IOException
      Specified by:
      dump in interface org.eclipse.jetty.util.component.Dumpable
      Throws:
      IOException