use crate::executor::ExecutorConfig;
use crate::scheduler::SchedulerConfig;
use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Serialize, Deserialize)]
pub enum StorageType {
InMemory,
}
#[derive(Clone, Debug, Serialize, Deserialize)]
pub struct TaskFlowConfig {
pub scheduler: SchedulerConfig,
pub executor: ExecutorConfig,
pub storage_type: StorageType,
}
impl Default for TaskFlowConfig {
fn default() -> Self {
Self {
scheduler: SchedulerConfig::default(),
executor: ExecutorConfig::default(),
storage_type: StorageType::InMemory,
}
}
}
impl TaskFlowConfig {
pub fn with_in_memory() -> Self {
Self {
storage_type: StorageType::InMemory,
..Default::default()
}
}
}