Skip to content

Commit

Permalink
feat(client): add http1::Connection without_shutdown() method (#3430
Browse files Browse the repository at this point in the history
)
  • Loading branch information
kiron1 authored Nov 21, 2023
1 parent abf696a commit 210bfaa
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions src/client/conn/http1.rs
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,17 @@ where
pub fn poll_without_shutdown(&mut self, cx: &mut Context<'_>) -> Poll<crate::Result<()>> {
self.inner.poll_without_shutdown(cx)
}

/// Prevent shutdown of the underlying IO object at the end of service the request,
/// instead run `into_parts`. This is a convenience wrapper over `poll_without_shutdown`.
pub async fn without_shutdown(self) -> crate::Result<Parts<T>> {
let mut conn = Some(self);
futures_util::future::poll_fn(move |cx| -> Poll<crate::Result<Parts<T>>> {
ready!(conn.as_mut().unwrap().poll_without_shutdown(cx))?;
Poll::Ready(Ok(conn.take().unwrap().into_parts()))
})
.await
}
}

/// A builder to configure an HTTP connection.
Expand Down

0 comments on commit 210bfaa

Please sign in to comment.