Coordinator

Trait Coordinator 

Source
pub trait Coordinator {
    // Required methods
    fn upload_scenario(
        &self,
        client: ClientClient,
        name: String,
        content: Vec<u8>,
    ) -> impl Future<Output = Result<(), CoordinatorError>> + Send;
    fn start(
        &self,
        client: ClientClient,
        name: String,
        workers_number: usize,
    ) -> impl Future<Output = Result<(RunId, Vec<String>), CoordinatorError>> + Send;
    fn list_workers(
        &self,
        client: ClientClient,
    ) -> impl Future<Output = Vec<String>> + Send;
    fn get_run_status(
        &self,
        client: ClientClient,
        id: RunId,
    ) -> impl Future<Output = Option<HashMap<String, RunInfo>>> + Send;
}

Required Methods§

Source

fn upload_scenario( &self, client: ClientClient, name: String, content: Vec<u8>, ) -> impl Future<Output = Result<(), CoordinatorError>> + Send

Source

fn start( &self, client: ClientClient, name: String, workers_number: usize, ) -> impl Future<Output = Result<(RunId, Vec<String>), CoordinatorError>> + Send

Source

fn list_workers( &self, client: ClientClient, ) -> impl Future<Output = Vec<String>> + Send

Source

fn get_run_status( &self, client: ClientClient, id: RunId, ) -> impl Future<Output = Option<HashMap<String, RunInfo>>> + Send

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§