StreamFlowWindow
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.
Value members
Abstract methods
Signal that count
bytes have been consumed by the stream
Signal that count
bytes have been consumed by the stream
- Note
The consumed bytes are also counted for the session flow window.
Attempts to withdraw count
bytes from the inbound window of both the stream and the session.
Attempts to withdraw count
bytes 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
true
if withdraw was successful,false
otherwise.
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.
- Value Params
- request
maximum bytes to withdraw
- Returns
actual bytes withdrawn from the window
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.
- Value Params
- delta
change in intial window size. Maybe be positive or negative, but must not cause the window to overflow Int.MaxValue.
The flow control manager of the session this stream belongs to
The flow control manager of the session this stream belongs to
Signal that a stream window update was sent for count
bytes
Signal that a stream window update was sent for count
bytes
Get the remaining bytes in the streams inbound window
Get the remaining bytes in the streams inbound window
Signal that a stream window update was received for count
bytes
Signal that a stream window update was received for count
bytes
Get the remaining bytes in the stream outbound window
Get the remaining bytes in the stream outbound window
Concrete methods
Get the remaining outbound window, considering both the session and stream windows
Get the remaining outbound window, considering both the session and stream windows