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

Object Safety§

This trait is not object safe.

Implementors§