add Connection::max_concurrent_recv_streams (#516)
This commit adds accessors to `client::Connection` and `server::Connection` that return the current value of the `SETTINGS_MAX_CONCURRENT_STREAMS` limit that has been sent by this peer and acknowledged by the remote. This is analogous to the `max_concurrent_send_streams` methods added in PR #513. These accessors may be somewhat less useful than the ones for the values negotiated by the remote, since users who care about this limit are probably setting the builder parameter. However, it seems worth having for completeness sake --- and it might be useful for determining whether or not a configured concurrency limit has been acked yet... Part of #512
This commit is contained in:
@@ -534,14 +534,29 @@ where
|
||||
/// by the server on this connection.
|
||||
///
|
||||
/// This limit is configured by the client peer by sending the
|
||||
/// [`SETTINGS_MAX_CONCURRENT_STREAMS` parameter][settings] in a `SETTINGS`
|
||||
/// frame. This method returns the currently acknowledged value recieved
|
||||
/// from the remote.
|
||||
/// [`SETTINGS_MAX_CONCURRENT_STREAMS` parameter][1] in a `SETTINGS` frame.
|
||||
/// This method returns the currently acknowledged value recieved from the
|
||||
/// remote.
|
||||
///
|
||||
/// [settings]: https://tools.ietf.org/html/rfc7540#section-5.1.2
|
||||
/// [1]: https://tools.ietf.org/html/rfc7540#section-5.1.2
|
||||
pub fn max_concurrent_send_streams(&self) -> usize {
|
||||
self.connection.max_send_streams()
|
||||
}
|
||||
|
||||
/// Returns the maximum number of concurrent streams that may be initiated
|
||||
/// by the client on this connection.
|
||||
///
|
||||
/// This returns the value of the [`SETTINGS_MAX_CONCURRENT_STREAMS`
|
||||
/// parameter][1] sent in a `SETTINGS` frame that has been
|
||||
/// acknowledged by the remote peer. The value to be sent is configured by
|
||||
/// the [`Builder::max_concurrent_streams`][2] method before handshaking
|
||||
/// with the remote peer.
|
||||
///
|
||||
/// [1]: https://tools.ietf.org/html/rfc7540#section-5.1.2
|
||||
/// [2]: ../struct.Builder.html#method.max_concurrent_streams
|
||||
pub fn max_concurrent_recv_streams(&self) -> usize {
|
||||
self.connection.max_recv_streams()
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(feature = "stream")]
|
||||
|
||||
Reference in New Issue
Block a user