persistent_scheduler/core/
task_kind.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Clone, Debug, Default, Eq, PartialEq, Serialize, Deserialize)]
4pub enum TaskKind {
6 Cron {
8 schedule: String,
10 timezone: String,
12 },
13
14 Repeat {
16 interval_seconds: u32
18 },
19
20 #[default]
22 Once,
23}
24
25impl std::fmt::Display for TaskKind {
26 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
27 match self {
28 TaskKind::Cron { .. } => write!(f, "Cron"),
29 TaskKind::Repeat { .. } => write!(f, "Repeat"),
30 TaskKind::Once => write!(f, "Once"),
31 }
32 }
33}