cf_mach/nq_core/body/
mod.rs1mod counting_body;
5mod upload_body;
6
7use std::convert::Infallible;
8use std::sync::Arc;
9use tokio::sync::RwLock;
10
11use http::{HeaderMap, HeaderValue};
12use http_body_util::{Empty, combinators::BoxBody};
13use hyper::body::Bytes;
14use tokio::sync::mpsc;
15
16pub type NqBody = BoxBody<Bytes, Infallible>;
18
19pub fn empty() -> Empty<Bytes> {
21 Empty::new()
22}
23
24use crate::nq_core::{EstablishedConnection, Timestamp, connection::ConnectionTiming};
25
26pub use self::{
27 counting_body::{BodyEvent, CountingBody},
28 upload_body::UploadBody,
29};
30
31pub struct InflightBody {
33 pub start: Timestamp,
35 pub connection: Arc<RwLock<EstablishedConnection>>,
38 pub timing: Option<ConnectionTiming>,
40 pub events: mpsc::UnboundedReceiver<BodyEvent>,
43 pub headers: HeaderMap<HeaderValue>,
45}