simple_job_queue/
error.rs1use std::{error::Error, fmt::Display};
2
3use redis::RedisError;
4
5#[derive(Debug)]
6pub struct JobError;
7
8impl Display for JobError {
9 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
10 Display::fmt("An error occurred while processing the job", f)
11 }
12}
13
14impl Error for JobError {}
15
16#[derive(Debug)]
17pub enum JobQueueError {
18 MalformedJob,
19 #[cfg(feature = "redis")]
20 RedisError(RedisError),
21}
22
23impl Display for JobQueueError {
24 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
25 match self {
26 JobQueueError::MalformedJob => write!(f, "Malformed job"),
27 #[cfg(feature = "redis")]
28 JobQueueError::RedisError(error) => error.fmt(f),
29 }
30 }
31}
32
33impl Error for JobQueueError {}
34
35#[cfg(feature = "redis")]
36impl From<RedisError> for JobQueueError {
37 fn from(value: RedisError) -> Self {
38 Self::RedisError(value)
39 }
40}