use std::future::Future;
use std::pin::Pin;
use zeph_commands::{CommandError, OrchestrationAccess};
use super::Agent;
use super::command_macros::delegate_cmd;
use crate::channel::Channel;
impl<C: Channel + Send + 'static> OrchestrationAccess for Agent<C> {
#[cfg(feature = "scheduler")]
delegate_cmd!(handle_plan, dispatch_plan_command_as_string, input: &'a str => String);
#[cfg(not(feature = "scheduler"))]
fn handle_plan<'a>(
&'a mut self,
_input: &'a str,
) -> Pin<Box<dyn Future<Output = Result<String, CommandError>> + Send + 'a>> {
Box::pin(async move { Ok(String::new()) })
}
delegate_cmd!(handle_experiment, handle_experiment_command_as_string, input: &'a str => String);
}