pub trait LaunchHandler: Send + Sync {
    // Required method
    fn launch<'life0, 'life1, 'life2, 'life3, 'async_trait>(
        &'life0 self,
        destination: &'life1 Destination,
        options: &'life2 Map,
        authenticator: &'life3 mut dyn Authenticator
    ) -> Pin<Box<dyn Future<Output = Result<Destination>> + Send + 'async_trait>>
       where Self: 'async_trait,
             'life0: 'async_trait,
             'life1: 'async_trait,
             'life2: 'async_trait,
             'life3: 'async_trait;
}
Expand description

Represents an interface to start a server at some remote destination.

  • destination is the location where the server will be started.
  • options is provided to include extra information needed to launch or establish the connection.
  • authenticator is provided to support a challenge-based authentication while launching.

Returns a Destination representing the new origin to use if a connection is desired.

Required Methods§

source

fn launch<'life0, 'life1, 'life2, 'life3, 'async_trait>( &'life0 self, destination: &'life1 Destination, options: &'life2 Map, authenticator: &'life3 mut dyn Authenticator ) -> Pin<Box<dyn Future<Output = Result<Destination>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait, 'life3: 'async_trait,

Implementors§

source§

impl<F, R> LaunchHandler for Fwhere F: Fn(&Destination, &Map, &mut dyn Authenticator) -> R + Send + Sync + 'static, R: Future<Output = Result<Destination>> + Send + 'static,