StreamFlowWindow

abstract class 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.

Source:
StreamFlowWindow.scala
class Object
trait Matchable
class Any

Value members

Abstract methods

def inboundConsumed(count: Int): Unit

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.

Source:
StreamFlowWindow.scala

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.

Source:
StreamFlowWindow.scala
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.

Value parameters:
request

maximum bytes to withdraw

Returns:

actual bytes withdrawn from the window

Source:
StreamFlowWindow.scala

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 parameters:
delta

change in intial window size. Maybe be positive or negative, but must not cause the window to overflow Int.MaxValue.

Source:
StreamFlowWindow.scala

The flow control manager of the session this stream belongs to

The flow control manager of the session this stream belongs to

Source:
StreamFlowWindow.scala

Id of the associated stream

Id of the associated stream

Source:
StreamFlowWindow.scala

Signal that a stream window update was sent for count bytes

Signal that a stream window update was sent for count bytes

Source:
StreamFlowWindow.scala

Get the remaining bytes in the streams inbound window

Get the remaining bytes in the streams inbound window

Source:
StreamFlowWindow.scala

Signal that a stream window update was received for count bytes

Signal that a stream window update was received for count bytes

Source:
StreamFlowWindow.scala

Get the remaining bytes in the stream outbound window

Get the remaining bytes in the stream outbound window

Source:
StreamFlowWindow.scala

Get the number of stream inbound bytes that haven't been consumed

Get the number of stream inbound bytes that haven't been consumed

Source:
StreamFlowWindow.scala

Concrete methods

final def outboundWindow: Int

Get the remaining outbound window, considering both the session and stream windows

Get the remaining outbound window, considering both the session and stream windows

Source:
StreamFlowWindow.scala

Determine whether we have available flow window remaining, considering both the stream and the session flow windows

Determine whether we have available flow window remaining, considering both the stream and the session flow windows

Source:
StreamFlowWindow.scala