1use core::fmt;
2use std::error::Error;
3
4#[derive(Debug)]
5pub enum AppError {
6 StartUpError(String),
7 Other(String),
8}
9
10impl fmt::Display for AppError {
11 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
12 write!(
13 f,
14 "{} : {:#?}",
15 match self {
16 AppError::StartUpError(_) => "Start up error",
17 AppError::Other(_) => "App error",
18 },
19 self
20 )
21 }
22}
23
24impl Error for AppError {}
25
26#[derive(Debug)]
27pub enum DBListenerError {
28 CreationError(String),
29 DeletionError(String),
30 ListenerStartError(String),
31 ListenerStopError(String),
32 ListenerVerifyError(String),
33 ListenerError(String),
34 Other(String),
35}
36
37impl fmt::Display for DBListenerError {
38 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
39 let (prefix, err) = match self {
40 DBListenerError::CreationError(err) => ("Database creation error", err),
41 DBListenerError::DeletionError(err) => ("Database deletion error", err),
42 DBListenerError::ListenerStartError(err) => ("Database Listener error", err),
43 DBListenerError::ListenerStopError(err) => ("Database Listener error", err),
44 DBListenerError::ListenerVerifyError(err) => ("Database Listener error", err),
45 DBListenerError::ListenerError(err) => ("Database Listener error", err),
46 DBListenerError::Other(err) => ("Database Listener error", err),
47 };
48 write!(f, "{} : {:?}", prefix, err)
49 }
50}
51
52impl Error for DBListenerError {}