[][src]Struct bb8::Builder

pub struct Builder<M: ManageConnection> { /* fields omitted */ }

A builder for a connection pool.

Methods

impl<M: ManageConnection> Builder<M>[src]

pub fn new() -> Builder<M>[src]

Constructs a new Builder.

Parameters are initialized with their default values.

pub fn max_size(self, max_size: u32) -> Builder<M>[src]

Sets the maximum number of connections managed by the pool.

Defaults to 10.

pub fn min_idle(self, min_idle: Option<u32>) -> Builder<M>[src]

Sets the minimum idle connection count maintained by the pool.

If set, the pool will try to maintain at least this many idle connections at all times, while respecting the value of max_size.

Defaults to None.

pub fn test_on_check_out(self, test_on_check_out: bool) -> Builder<M>[src]

If true, the health of a connection will be verified through a call to ManageConnection::is_valid before it is provided to a pool user.

Defaults to true.

pub fn max_lifetime(self, max_lifetime: Option<Duration>) -> Builder<M>[src]

Sets the maximum lifetime of connections in the pool.

If set, connections will be closed at the next reaping after surviving past this duration.

If a connection reachs its maximum lifetime while checked out it will be closed when it is returned to the pool.

Defaults to 30 minutes.

pub fn idle_timeout(self, idle_timeout: Option<Duration>) -> Builder<M>[src]

Sets the idle timeout used by the pool.

If set, idle connections in excess of min_idle will be closed at the next reaping after remaining idle past this duration.

Defaults to 10 minutes.

pub fn connection_timeout(self, connection_timeout: Duration) -> Builder<M>[src]

Sets the connection timeout used by the pool.

Futures returned by Pool::get will wait this long before giving up and resolving with an error.

Defaults to 30 seconds.

pub fn error_sink(self, error_sink: Box<dyn ErrorSink<M::Error>>) -> Builder<M>[src]

Set the sink for errors that are not associated with any particular operation on the pool. This can be used to log and monitor failures.

Defaults to NopErrorSink.

pub fn reaper_rate(self, reaper_rate: Duration) -> Builder<M>[src]

Used by tests

pub fn build(
    self,
    manager: M
) -> impl Future<Item = Pool<M>, Error = M::Error> + Send
[src]

Consumes the builder, returning a new, initialized Pool.

The Pool will not be returned until it has established its configured minimum number of connections, or it times out.

pub fn build_unchecked(self, manager: M) -> Pool<M>[src]

Consumes the builder, returning a new, initialized Pool.

Unlike build, this does not wait for any connections to be established before returning.

Trait Implementations

impl<M: ManageConnection> Default for Builder<M>[src]

impl<M: Debug + ManageConnection> Debug for Builder<M> where
    M::Error: Debug
[src]

Auto Trait Implementations

impl<M> Unpin for Builder<M> where
    M: Unpin

impl<M> Sync for Builder<M>

impl<M> Send for Builder<M>

impl<M> !RefUnwindSafe for Builder<M>

impl<M> !UnwindSafe for Builder<M>

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]