use hyper::{ StatusCode, header::{HeaderValue, HeaderMap}, body::{Buf, Body}, }; use crate::Error; #[derive(Debug)] pub struct Response(pub(crate) hyper::Response); impl Response { pub fn status(&self) -> StatusCode { self.0.status() } pub fn headers(&self) -> &HeaderMap { self.0.headers() } pub async fn body(self) -> Result { hyper::body::aggregate(self.0.into_body()).await.map(Buf::reader).map_err(Error::Hyper) } }