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§
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
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.