pub struct EncodedUpload<E, U> { /* private fields */ }Expand description
A type for creating, building, and completing a multipart upload.
This composes a PartEncoder in front of a multipart upload in order to
build the part upload request body from an arbitrary Item. Parts are
uploaded according the target part size this value is configured with.
This writer itself is reusable, i.e., one can continue writing Items after
completing an upload, if and only if U is.
Trait Implementations§
Source§impl<E, U> Debug for EncodedUpload<E, U>
impl<E, U> Debug for EncodedUpload<E, U>
Source§impl<Item, E, U> FusedMultipartWrite<Item> for EncodedUpload<E, U>where
E: PartEncoder<Item>,
U: FusedMultipartWrite<PartBody, Ret = UploadSent, Error = Error, Output = CompletedUpload>,
impl<Item, E, U> FusedMultipartWrite<Item> for EncodedUpload<E, U>where
E: PartEncoder<Item>,
U: FusedMultipartWrite<PartBody, Ret = UploadSent, Error = Error, Output = CompletedUpload>,
Source§fn is_terminated(&self) -> bool
fn is_terminated(&self) -> bool
Returns
true if the writer should no longer be polled.Source§impl<Item, E, U> MultipartWrite<Item> for EncodedUpload<E, U>where
E: PartEncoder<Item>,
U: MultipartWrite<PartBody, Ret = UploadSent, Error = Error, Output = CompletedUpload>,
impl<Item, E, U> MultipartWrite<Item> for EncodedUpload<E, U>where
E: PartEncoder<Item>,
U: MultipartWrite<PartBody, Ret = UploadSent, Error = Error, Output = CompletedUpload>,
Source§type Output = CompletedUpload
type Output = CompletedUpload
The type of value returned when all parts are written.
Source§fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
fn poll_ready(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<()>>
Attempts to prepare the
MultipartWrite to receive a new part. Read moreSource§fn start_send(self: Pin<&mut Self>, part: Item) -> Result<Self::Ret>
fn start_send(self: Pin<&mut Self>, part: Item) -> Result<Self::Ret>
Begin the process of writing a part to this writer, returning the
associated type confirming this was done successfully. Read more
impl<'pin, E, U> Unpin for EncodedUpload<E, U>where
PinnedFieldsOf<__EncodedUpload<'pin, E, U>>: Unpin,
Auto Trait Implementations§
impl<E, U> Freeze for EncodedUpload<E, U>
impl<E, U> RefUnwindSafe for EncodedUpload<E, U>where
U: RefUnwindSafe,
E: RefUnwindSafe,
impl<E, U> Send for EncodedUpload<E, U>
impl<E, U> Sync for EncodedUpload<E, U>
impl<E, U> UnwindSafe for EncodedUpload<E, U>where
U: UnwindSafe,
E: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreCreates a shared type from an unshared type.
Source§impl<Wr, Part> MultipartWriteExt<Part> for Wrwhere
Wr: MultipartWrite<Part>,
impl<Wr, Part> MultipartWriteExt<Part> for Wrwhere
Wr: MultipartWrite<Part>,
Source§fn and_then<T, E, Fut, F>(self, f: F) -> AndThen<Self, Fut, F>
fn and_then<T, E, Fut, F>(self, f: F) -> AndThen<Self, Fut, F>
Compute from this writer’s output type a new output of a different type
using an asynchronous closure. Read more
Source§fn boxed<'a>(
self,
) -> Pin<Box<dyn MultipartWrite<Part, Error = Self::Error, Ret = Self::Ret, Output = Self::Output> + Send + 'a>>
fn boxed<'a>( self, ) -> Pin<Box<dyn MultipartWrite<Part, Error = Self::Error, Ret = Self::Ret, Output = Self::Output> + Send + 'a>>
Wrap this writer in a
Box, pinning it.Source§fn boxed_local<'a>(
self,
) -> Pin<Box<dyn MultipartWrite<Part, Error = Self::Error, Ret = Self::Ret, Output = Self::Output> + 'a>>where
Self: Sized + 'a,
fn boxed_local<'a>(
self,
) -> Pin<Box<dyn MultipartWrite<Part, Error = Self::Error, Ret = Self::Ret, Output = Self::Output> + 'a>>where
Self: Sized + 'a,
Wrap this writer in a
Box, pinning it. Read moreSource§fn buffered(self, capacity: impl Into<Option<usize>>) -> Buffered<Self, Part>where
Self: Sized,
fn buffered(self, capacity: impl Into<Option<usize>>) -> Buffered<Self, Part>where
Self: Sized,
Adds a fixed size buffer to the current writer. Read more
Source§fn complete(&mut self) -> Complete<'_, Self, Part>where
Self: Unpin,
fn complete(&mut self) -> Complete<'_, Self, Part>where
Self: Unpin,
A future that runs this writer to completion, returning the associated
output.
Source§fn fanout<U>(self, other: U) -> Fanout<Self, U, Part>
fn fanout<U>(self, other: U) -> Fanout<Self, U, Part>
Fanout the part to multiple writers. Read more
Source§fn feed(&mut self, part: Part) -> Feed<'_, Self, Part>where
Self: Unpin,
fn feed(&mut self, part: Part) -> Feed<'_, Self, Part>where
Self: Unpin,
A future that completes after the given part has been received by the
writer. Read more
Source§fn filter<F>(self, f: F) -> Filter<Self, F>
fn filter<F>(self, f: F) -> Filter<Self, F>
Apply a filter to this writer’s parts, returning a new writer with the
same output. Read more
Source§fn filter_map<U, F>(self, f: F) -> FilterMap<Self, F>
fn filter_map<U, F>(self, f: F) -> FilterMap<Self, F>
Attempt to map the input to a part for this writer, filtering out the
inputs where the mapping returns
None. Read moreSource§fn flush(&mut self) -> Flush<'_, Self, Part>where
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Part>where
Self: Unpin,
A future that completes when the underlying writer has been flushed.
Source§fn fold_ret<T, F>(self, id: T, f: F) -> FoldRet<Self, T, F>
fn fold_ret<T, F>(self, id: T, f: F) -> FoldRet<Self, T, F>
Accumulate this writer’s returned values, returning a new multipart
writer that pairs the underlying writer’s output with the
result of the accumulating function.
Source§fn fuse<F>(self, f: F) -> Fuse<Self, F>
fn fuse<F>(self, f: F) -> Fuse<Self, F>
Returns a new writer that fuses according to the provided closure. Read more
Source§fn lift<U, T>(self, other: U) -> Lift<Self, U, Part>where
Self: Sized,
Self::Error: From<<U as MultipartWrite<T>>::Error>,
U: MultipartWrite<T, Output = Part>,
fn lift<U, T>(self, other: U) -> Lift<Self, U, Part>where
Self: Sized,
Self::Error: From<<U as MultipartWrite<T>>::Error>,
U: MultipartWrite<T, Output = Part>,
“Lift” the multipart writer
U in front of this one. Read moreSource§fn map_err<E, F>(self, f: F) -> MapErr<Self, F>
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>
Map this writer’s error type to a different value, returning a new
multipart writer with the given error type.
Source§fn map_ok<U, F>(self, f: F) -> MapOk<Self, F>
fn map_ok<U, F>(self, f: F) -> MapOk<Self, F>
Map this writer’s output type to a different type, returning a new
multipart writer with the given output type.
Source§fn map_ret<U, F>(self, f: F) -> MapRet<Self, F>
fn map_ret<U, F>(self, f: F) -> MapRet<Self, F>
Map this writer’s return type to a different value, returning a new
multipart writer with the given return type.
Source§fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
A convenience method for calling
MultipartWrite::poll_ready on
Unpin writer types.Source§fn poll_flush_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
fn poll_flush_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
A convenience method for calling
MultipartWrite::poll_flush on
Unpin writer types.Source§fn poll_complete_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<Self::Output, Self::Error>>where
Self: Unpin,
fn poll_complete_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<Self::Output, Self::Error>>where
Self: Unpin,
A convenience method for calling
MultipartWrite::poll_complete on
Unpin writer types.Source§fn send_part(&mut self, part: Part) -> SendPart<'_, Self, Part>where
Self: Unpin,
fn send_part(&mut self, part: Part) -> SendPart<'_, Self, Part>where
Self: Unpin,
A future that completes when a part has been fully processed into the
writer, including flushing.
Source§impl<Part, Wr> UploadWriteExt<Part> for Wrwhere
Wr: MultipartWrite<Part>,
impl<Part, Wr> UploadWriteExt<Part> for Wrwhere
Wr: MultipartWrite<Part>,
Source§fn upload(self, client: &UploadClient, iter: ObjectUriIter) -> Upload<Self>
fn upload(self, client: &UploadClient, iter: ObjectUriIter) -> Upload<Self>
Returns a new
MultipartWrite that uploads to a multipart upload, using
this writer as a buffer for request futures.Source§fn encoded_upload<E>(
self,
encoder: E,
bytes: ByteSize,
part_bytes: ByteSize,
) -> EncodedUpload<E, Self>where
Self: MultipartWrite<PartBody, Ret = UploadSent, Error = UploadError, Output = CompletedUpload> + Sized,
fn encoded_upload<E>(
self,
encoder: E,
bytes: ByteSize,
part_bytes: ByteSize,
) -> EncodedUpload<E, Self>where
Self: MultipartWrite<PartBody, Ret = UploadSent, Error = UploadError, Output = CompletedUpload> + Sized,
Transform this
MultipartWrite by composing a PartEncoder in front
of it, resulting in a new one over any type of value that the encoder
is capable of writing.