taskflow_rs/framework/
config.rs1use crate::executor::ExecutorConfig;
2use crate::scheduler::SchedulerConfig;
3use serde::{Deserialize, Serialize};
4
5#[derive(Clone, Debug, Serialize, Deserialize)]
6pub enum StorageType {
7 InMemory,
8}
9
10#[derive(Clone, Debug, Serialize, Deserialize)]
11pub struct TaskFlowConfig {
12 pub scheduler: SchedulerConfig,
13 pub executor: ExecutorConfig,
14 pub storage_type: StorageType,
15}
16
17impl Default for TaskFlowConfig {
18 fn default() -> Self {
19 Self {
20 scheduler: SchedulerConfig::default(),
21 executor: ExecutorConfig::default(),
22 storage_type: StorageType::InMemory,
23 }
24 }
25}
26
27impl TaskFlowConfig {
28 pub fn with_in_memory() -> Self {
29 Self {
30 storage_type: StorageType::InMemory,
31 ..Default::default()
32 }
33 }
34}