use crate::gen::task_schedule::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum TaskStateEvents {
#[serde(rename = "on_scheduled")]
OnScheduled,
#[serde(rename = "on_rescheduled")]
OnRescheduled,
#[serde(rename = "on_selecting")]
OnSelecting,
#[serde(rename = "on_accepted")]
OnAccepted,
#[serde(rename = "on_rejected")]
OnRejected,
#[serde(rename = "on_assigned")]
OnAssigned,
#[serde(rename = "on_processing")]
OnProcessing,
#[serde(rename = "on_pending")]
OnPending,
#[serde(rename = "on_completed")]
OnCompleted,
#[serde(rename = "on_canceled")]
OnCanceled,
#[serde(rename = "on_failed")]
OnFailed,
}
impl std::fmt::Display for TaskStateEvents {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::OnScheduled => write!(f, "on_scheduled"),
Self::OnRescheduled => write!(f, "on_rescheduled"),
Self::OnSelecting => write!(f, "on_selecting"),
Self::OnAccepted => write!(f, "on_accepted"),
Self::OnRejected => write!(f, "on_rejected"),
Self::OnAssigned => write!(f, "on_assigned"),
Self::OnProcessing => write!(f, "on_processing"),
Self::OnPending => write!(f, "on_pending"),
Self::OnCompleted => write!(f, "on_completed"),
Self::OnCanceled => write!(f, "on_canceled"),
Self::OnFailed => write!(f, "on_failed"),
}
}
}
impl Default for TaskStateEvents {
fn default() -> TaskStateEvents {
Self::OnScheduled
}
}