mirror of
https://github.com/fluencelabs/rust-libp2p
synced 2025-05-25 08:51:20 +00:00
core/muxing: Remove the StreamMuxer::flush_all
function (#2669)
`libp2p-core` provides the `StreamMuxer` abstraction so it can provide functionality that abstracts over this trait. We never use the `flush_all` function as part of our abstractions. No one else is going to use it so we can remove it from the abstraction.
This commit is contained in:
parent
25c8bc24de
commit
2b79f113bb
@ -1,12 +1,15 @@
|
|||||||
# 0.33.0 [unreleased]
|
# 0.33.0 [unreleased]
|
||||||
|
|
||||||
- Have methods on `Transport` take `&mut self` instead of `self`. See [PR 2529].
|
- Have methods on `Transport` take `&mut self` instead of `self`. See [PR 2529].
|
||||||
|
- Remove `StreamMuxer::flush_all`. See [PR 2669].
|
||||||
- Rename `StreamMuxer::close` to `StreamMuxer::poll_close`. See [PR 2666].
|
- Rename `StreamMuxer::close` to `StreamMuxer::poll_close`. See [PR 2666].
|
||||||
- Remove deprecated function `StreamMuxer::is_remote_acknowledged`. See [PR 2665].
|
- Remove deprecated function `StreamMuxer::is_remote_acknowledged`. See [PR 2665].
|
||||||
|
|
||||||
[PR 2529]: https://github.com/libp2p/rust-libp2p/pull/2529
|
[PR 2529]: https://github.com/libp2p/rust-libp2p/pull/2529
|
||||||
[PR 2666]: https://github.com/libp2p/rust-libp2p/pull/2666
|
[PR 2666]: https://github.com/libp2p/rust-libp2p/pull/2666
|
||||||
[PR 2665]: https://github.com/libp2p/rust-libp2p/pull/2665
|
[PR 2665]: https://github.com/libp2p/rust-libp2p/pull/2665
|
||||||
|
[PR 2669]: https://github.com/libp2p/rust-libp2p/pull/2669
|
||||||
|
|
||||||
|
|
||||||
# 0.32.1
|
# 0.32.1
|
||||||
|
|
||||||
|
@ -352,13 +352,6 @@ where
|
|||||||
EitherOutput::Second(inner) => inner.poll_close(cx).map_err(|e| e.into()),
|
EitherOutput::Second(inner) => inner.poll_close(cx).map_err(|e| e.into()),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn flush_all(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
|
||||||
match self {
|
|
||||||
EitherOutput::First(inner) => inner.flush_all(cx).map_err(|e| e.into()),
|
|
||||||
EitherOutput::Second(inner) => inner.flush_all(cx).map_err(|e| e.into()),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Copy, Clone)]
|
#[derive(Debug, Copy, Clone)]
|
||||||
|
@ -216,13 +216,6 @@ pub trait StreamMuxer {
|
|||||||
/// > properly informing the remote, there is no difference between this and
|
/// > properly informing the remote, there is no difference between this and
|
||||||
/// > immediately dropping the muxer.
|
/// > immediately dropping the muxer.
|
||||||
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>;
|
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>;
|
||||||
|
|
||||||
/// Flush this `StreamMuxer`.
|
|
||||||
///
|
|
||||||
/// This drains any write buffers of substreams and delivers any pending shutdown notifications
|
|
||||||
/// due to `shutdown_substream` or `close`. One may thus shutdown groups of substreams
|
|
||||||
/// followed by a final `flush_all` instead of having to do `flush_substream` for each.
|
|
||||||
fn flush_all(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>>;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Event about a connection, reported by an implementation of [`StreamMuxer`].
|
/// Event about a connection, reported by an implementation of [`StreamMuxer`].
|
||||||
@ -609,11 +602,6 @@ impl StreamMuxer for StreamMuxerBox {
|
|||||||
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
||||||
self.inner.poll_close(cx)
|
self.inner.poll_close(cx)
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
|
||||||
fn flush_all(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
|
||||||
self.inner.flush_all(cx)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
struct Wrap<T>
|
struct Wrap<T>
|
||||||
@ -750,9 +738,4 @@ where
|
|||||||
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
||||||
self.inner.poll_close(cx).map_err(|e| e.into())
|
self.inner.poll_close(cx).map_err(|e| e.into())
|
||||||
}
|
}
|
||||||
|
|
||||||
#[inline]
|
|
||||||
fn flush_all(&self, cx: &mut Context<'_>) -> Poll<Result<(), Self::Error>> {
|
|
||||||
self.inner.flush_all(cx).map_err(|e| e.into())
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
@ -149,12 +149,7 @@ where
|
|||||||
|
|
||||||
fn destroy_substream(&self, _: Self::Substream) {}
|
fn destroy_substream(&self, _: Self::Substream) {}
|
||||||
|
|
||||||
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), io::Error>> {
|
fn poll_close(&self, _cx: &mut Context<'_>) -> Poll<Result<(), io::Error>> {
|
||||||
// The `StreamMuxer` trait requires that `close()` implies `flush_all()`.
|
Poll::Ready(Ok(()))
|
||||||
self.flush_all(cx)
|
|
||||||
}
|
|
||||||
|
|
||||||
fn flush_all(&self, cx: &mut Context<'_>) -> Poll<Result<(), io::Error>> {
|
|
||||||
AsyncWrite::poll_flush(Pin::new(&mut *self.inner.lock()), cx)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -172,10 +172,6 @@ where
|
|||||||
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), io::Error>> {
|
fn poll_close(&self, cx: &mut Context<'_>) -> Poll<Result<(), io::Error>> {
|
||||||
self.io.lock().poll_close(cx)
|
self.io.lock().poll_close(cx)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn flush_all(&self, cx: &mut Context<'_>) -> Poll<Result<(), io::Error>> {
|
|
||||||
self.io.lock().poll_flush(cx)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Active attempt to open an outbound substream.
|
/// Active attempt to open an outbound substream.
|
||||||
|
@ -191,10 +191,6 @@ where
|
|||||||
}
|
}
|
||||||
Poll::Pending
|
Poll::Pending
|
||||||
}
|
}
|
||||||
|
|
||||||
fn flush_all(&self, _: &mut Context<'_>) -> Poll<YamuxResult<()>> {
|
|
||||||
Poll::Ready(Ok(()))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// The yamux configuration.
|
/// The yamux configuration.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user