abstract class StreamFlowWindow extends AnyRef
Representation of the flow control state of a stream belonging to a session
The StreamFlowWindow provides the tools for tracking the flow window for both the individual
stream and the session that it belongs to.
- Annotations
- @deprecated
- Deprecated
(Since version 0.23.18) HTTP/2 support is unmaintained and will be removed in a future version.
- Source
- StreamFlowWindow.scala
- Alphabetic
- By Inheritance
- StreamFlowWindow
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new StreamFlowWindow()
Abstract Value Members
- abstract def inboundConsumed(count: Int): Unit
Signal that
countbytes have been consumed by the streamSignal that
countbytes have been consumed by the stream- Note
The consumed bytes are also counted for the session flow window.
- abstract def inboundObserved(count: Int): Boolean
Attempts to withdraw
countbytes from the inbound window of both the stream and the session.Attempts to withdraw
countbytes from the inbound window of both the stream and the session.If there are sufficient bytes in the stream and session flow windows, they are subtracted, otherwise the window is unmodified.
- returns
trueif withdraw was successful,falseotherwise.
- abstract def outboundRequest(request: Int): Int
Request to withdraw bytes from the outbound window of the stream and the session.
Request to withdraw bytes from the outbound window of the stream and the session.
- request
maximum bytes to withdraw
- returns
actual bytes withdrawn from the window
- abstract def remoteSettingsInitialWindowChange(delta: Int): Option[Http2Exception]
Adjust the stream flow window to account for a change in INITIAL_WINDOW_SIZE
Adjust the stream flow window to account for a change in INITIAL_WINDOW_SIZE
If an error is returned, the internal state _must not_ be modified.
- delta
change in intial window size. Maybe be positive or negative, but must not cause the window to overflow Int.MaxValue.
- abstract def sessionFlowControl: SessionFlowControl
The flow control manager of the session this stream belongs to
- abstract def streamId: Int
Id of the associated stream
- abstract def streamInboundAcked(count: Int): Unit
Signal that a stream window update was sent for
countbytes - abstract def streamInboundWindow: Int
Get the remaining bytes in the streams inbound window
- abstract def streamOutboundAcked(count: Int): Option[Http2Exception]
Signal that a stream window update was received for
countbytes - abstract def streamOutboundWindow: Int
Get the remaining bytes in the stream outbound window
- abstract def streamUnconsumedBytes: Int
Get the number of stream inbound bytes that haven't been consumed
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def outboundWindow: Int
Get the remaining outbound window, considering both the session and stream windows
- final def outboundWindowAvailable: Boolean
Determine whether we have available flow window remaining, considering both the stream and the session flow windows
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()