Skip to main content

ConnectionCreator

Trait ConnectionCreator 

Source
pub trait ConnectionCreator<T: Node> {
    // Required method
    fn create<'a>(
        scope: ExecutionScope,
        node: Arc<T>,
        protocols: impl ProtocolsExt,
        object_request: ObjectRequestRef<'a>,
    ) -> impl Future<Output = Result<(), Status>> + Send + 'a;
}
Expand description

Trait for constructing connections to nodes.

Required Methods§

Source

fn create<'a>( scope: ExecutionScope, node: Arc<T>, protocols: impl ProtocolsExt, object_request: ObjectRequestRef<'a>, ) -> impl Future<Output = Result<(), Status>> + Send + 'a

Creates a new connection to node and spawns a new Task to run the connection.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<DirectoryType: Directory> ConnectionCreator<DirectoryType> for ImmutableConnection<DirectoryType>

Source§

impl<DirectoryType: MutableDirectory> ConnectionCreator<DirectoryType> for MutableConnection<DirectoryType>

Source§

impl<N: Node> ConnectionCreator<N> for vfs::node::Connection<N>

Source§

impl<T: 'static + File + FileIo> ConnectionCreator<T> for FidlIoConnection<T>

Source§

impl<T: 'static + File + GetVmo> ConnectionCreator<T> for StreamIoConnection<T>

Source§

impl<T: 'static + File + RawFileIoConnection> ConnectionCreator<T> for RawIoConnection<T>

Source§

impl<T: Symlink> ConnectionCreator<T> for vfs::symlink::Connection<T>