@UnstableApi public interface Http2FlowController
限定符和类型 | 方法和说明 |
---|---|
void |
channelHandlerContext(ChannelHandlerContext ctx)
Set the
ChannelHandlerContext for which to apply flow control on. |
void |
incrementWindowSize(Http2Stream stream,
int delta)
Increments the size of the stream's flow control window by the given delta.
|
int |
initialWindowSize()
Gets the connection-wide initial flow control window size that is used as the basis for new stream flow
control windows.
|
void |
initialWindowSize(int newWindowSize)
Sets the connection-wide initial flow control window and updates all stream windows (but not the connection
stream window) by the delta.
|
int |
windowSize(Http2Stream stream)
Get the portion of the flow control window for the given stream that is currently available for sending/receiving
frames which are subject to flow control.
|
void channelHandlerContext(ChannelHandlerContext ctx) throws Http2Exception
ChannelHandlerContext
for which to apply flow control on.
This must be called to properly initialize the Http2FlowController
.
Not calling this is considered a programming error.
ctx
- The ChannelHandlerContext
for which to apply flow control on.Http2Exception
- if any protocol-related error occurred.void initialWindowSize(int newWindowSize) throws Http2Exception
Represents the value for
SETTINGS_INITIAL_WINDOW_SIZE. This method should
only be called by Netty (not users) as a result of a receiving a SETTINGS
frame.
newWindowSize
- the new initial window size.Http2Exception
- thrown if any protocol-related error occurred.int initialWindowSize()
Represents the value for
SETTINGS_INITIAL_WINDOW_SIZE. The initial value
returned by this method must be Http2CodecUtil.DEFAULT_WINDOW_SIZE
.
int windowSize(Http2Stream stream)
void incrementWindowSize(Http2Stream stream, int delta) throws Http2Exception
In the case of a Http2RemoteFlowController
this is called upon receipt of a
WINDOW_UPDATE
frame from the remote endpoint to mirror the changes to the window
size.
For a Http2LocalFlowController
this can be called to request the expansion of the
window size published by this endpoint. It is up to the implementation, however, as to when a
WINDOW_UPDATE
is actually sent.
stream
- The subject stream. Use Http2Connection.connectionStream()
for
requesting the size of the connection window.delta
- the change in size of the flow control window.Http2Exception
- thrown if a protocol-related error occurred.