#[derive(Debug)]
pub enum QueueError {
UnknownJob(String),
SerializeError(String),
HandlerError(String),
Shutdown,
}
impl std::fmt::Display for QueueError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
match self {
Self::UnknownJob(name) => write!(f, "no handler registered for job '{name}'"),
Self::SerializeError(e) => write!(f, "failed to serialize job payload: {e}"),
Self::HandlerError(e) => write!(f, "job handler error: {e}"),
Self::Shutdown => write!(f, "queue has been shut down"),
}
}
}
impl std::error::Error for QueueError {}