Struct aws_smithy_http::body::SdkBody
source · [−]pub struct SdkBody { /* private fields */ }
Expand description
SdkBody type
This is the Body used for dispatching all HTTP Requests. For handling responses, the type of the body will be controlled by the HTTP stack.
TODO(naming): Consider renaming to simply Body
, although I’m concerned about naming headaches
between hyper::Body and our Body
Implementations
sourceimpl SdkBody
impl SdkBody
sourcepub fn from_dyn(body: BoxBody) -> Self
pub fn from_dyn(body: BoxBody) -> Self
Construct an SdkBody from a Boxed implementation of http::Body
sourcepub fn retryable(f: impl Fn() -> SdkBody + Send + Sync + 'static) -> Self
pub fn retryable(f: impl Fn() -> SdkBody + Send + Sync + 'static) -> Self
Construct an explicitly retryable SDK body
Note: This is probably not what you want
All bodies constructed from in-memory data (String
, Vec<u8>
, Bytes
, etc.) will be
retryable out of the box. If you want to read data from a file, you should use
ByteStream::from_path
. This function
is only necessary when you need to enable retries for your own streaming container.
pub fn taken() -> Self
pub fn empty() -> Self
sourcepub fn bytes(&self) -> Option<&[u8]>
pub fn bytes(&self) -> Option<&[u8]>
If possible, return a reference to this body as &[u8]
If this SdkBody is NOT streaming, this will return the byte slab
If this SdkBody is streaming, this will return None
pub fn try_clone(&self) -> Option<Self>
pub fn content_length(&self) -> Option<u64>
pub fn with_callback(&mut self, callback: Box<dyn BodyCallback>) -> &mut Self
pub fn map(
self,
f: impl Fn(SdkBody) -> SdkBody + Sync + Send + 'static
) -> SdkBody
Trait Implementations
sourceimpl Body for SdkBody
impl Body for SdkBody
sourcefn poll_data(
self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> Poll<Option<Result<Self::Data, Self::Error>>>
fn poll_data(
self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> Poll<Option<Result<Self::Data, Self::Error>>>
sourcefn poll_trailers(
self: Pin<&mut Self>,
_cx: &mut Context<'_>
) -> Poll<Result<Option<HeaderMap<HeaderValue>>, Self::Error>>
fn poll_trailers(
self: Pin<&mut Self>,
_cx: &mut Context<'_>
) -> Poll<Result<Option<HeaderMap<HeaderValue>>, Self::Error>>
HeaderMap
of trailers. Read moresourcefn is_end_stream(&self) -> bool
fn is_end_stream(&self) -> bool
true
when the end of stream has been reached. Read more