pub struct UniBodySink { /* private fields */ }
Expand description

Adaptor for BodySink implementing the futures::Sink trait. This allows a Stream<Item=UniBodyBuf> to be forwarded (e.g. via futures::Stream::forward) to a BodySink, in a fully asynchronous fashion and with zero-copy MemMap support (mmap feature only).

Tunables are used during the streaming to decide when to write back a BodySink in Ram to FsWrite. This implementation uses tokio_threadpool::blocking to request becoming a backup thread for blocking operations including BodySink::write_back and BodySink::write_all (state FsWrite). It may thus only be used on the tokio threadpool. If the max_blocking number of backup threads is reached, and a blocking operation is required, then this implementation will appear full, with start_send returning Ok(AsyncSink::NotReady(chunk), until a backup thread becomes available or any timeout occurs.

Implementations§

Wrap by consuming a BodySink and Tunables instances.

Note: Both BodyImage and Tunables are Clone (inexpensive), so that can be done beforehand to preserve owned copies.

The inner BodySink as constructed.

A mutable reference to the inner BodySink.

Unwrap and return the BodySink.

Trait Implementations§

Formats the value using the given formatter. Read more
The type of value that the sink accepts.
The type of value produced by the sink when an error occurs.
Begin the process of sending a value to the sink. Read more
Flush all output from this sink, if necessary. Read more
A method to indicate that no more values will ever be pushed into this sink. Read more
Creates a new object which will produce a synchronous sink. Read more
Composes a function in front of the sink. Read more
Composes a function in front of the sink. Read more
Transforms the error returned by the sink.
Map this sink’s error to any error implementing From for this sink’s Error, returning a new sink. Read more
Adds a fixed-size buffer to the current sink. Read more
A future that completes when the sink has finished processing all pending requests. Read more
A future that completes after the given item has been fully processed into the sink, including flushing. Read more
A future that completes after the given stream has been fully processed into the sink, including flushing. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.