use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum JobType {
#[serde(rename = "noop")]
Noop,
#[serde(rename = "data_refresh_table")]
DataRefreshTable,
#[serde(rename = "data_refresh_connection")]
DataRefreshConnection,
#[serde(rename = "create_index")]
CreateIndex,
#[serde(rename = "managed_load")]
ManagedLoad,
#[serde(rename = "ducklake_vacuum")]
DucklakeVacuum,
#[serde(rename = "ducklake_orphan_cleanup")]
DucklakeOrphanCleanup,
#[serde(rename = "result_deletion")]
ResultDeletion,
#[serde(rename = "stale_result_cleanup")]
StaleResultCleanup,
#[serde(rename = "result_retention")]
ResultRetention,
}
impl std::fmt::Display for JobType {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Noop => write!(f, "noop"),
Self::DataRefreshTable => write!(f, "data_refresh_table"),
Self::DataRefreshConnection => write!(f, "data_refresh_connection"),
Self::CreateIndex => write!(f, "create_index"),
Self::ManagedLoad => write!(f, "managed_load"),
Self::DucklakeVacuum => write!(f, "ducklake_vacuum"),
Self::DucklakeOrphanCleanup => write!(f, "ducklake_orphan_cleanup"),
Self::ResultDeletion => write!(f, "result_deletion"),
Self::StaleResultCleanup => write!(f, "stale_result_cleanup"),
Self::ResultRetention => write!(f, "result_retention"),
}
}
}
impl Default for JobType {
fn default() -> JobType {
Self::Noop
}
}