[][src]Trait ckb_sentry::TransportFactory

pub trait TransportFactory: Send + Sync {
    pub fn create_transport(
        &self,
        options: &ClientOptions
    ) -> Arc<dyn Transport + 'static>; }

A factory creating transport instances.

Because options are potentially reused between different clients the options do not actually contain a transport but a factory object that can create transports instead.

The factory has a single method that creates a new arced transport. Because transports can be wrapped in Arcs and those are clonable any Arc<Transport> is also a valid transport factory. This for instance lets you put a Arc<TestTransport> directly into the options.

This is automatically implemented for all closures optionally taking options and returning a boxed factory.

Required methods

pub fn create_transport(
    &self,
    options: &ClientOptions
) -> Arc<dyn Transport + 'static>
[src]

Given some options creates a transport.

Loading content...

Implementations on Foreign Types

impl<T> TransportFactory for Arc<T> where
    T: Transport
[src]

Loading content...

Implementors

impl TransportFactory for DefaultTransportFactory[src]

impl<F> TransportFactory for F where
    F: Fn(&ClientOptions) -> Arc<dyn Transport + 'static> + Clone + Send + Sync + 'static, 
[src]

Loading content...