bgpkit_broker/
error.rs

1//! Error handling module.
2use thiserror::Error;
3
4/// Broker error enum.
5#[derive(Error, Debug)]
6pub enum BrokerError {
7    #[error("NetworkError: {0}")]
8    NetworkError(#[from] reqwest::Error),
9
10    #[error("BrokerError: {0}")]
11    BrokerError(String),
12
13    #[error("ConfigurationError: {0}")]
14    ConfigurationError(String),
15
16    #[cfg(feature = "cli")]
17    #[error("CrawlerError: {0}")]
18    CrawlerError(String),
19
20    #[cfg(feature = "cli")]
21    #[error("IoError: {0}")]
22    IoError(#[from] std::io::Error),
23
24    #[cfg(feature = "cli")]
25    #[error("ConfigConfigError: {0}")]
26    ConfigJsonError(#[from] serde_json::Error),
27
28    #[cfg(feature = "cli")]
29    #[error("ConfigUnknownError: {0}")]
30    ConfigUnknownError(String),
31
32    #[error("DateTimeParseError: {0}")]
33    DateTimeParseError(#[from] chrono::ParseError),
34
35    #[cfg(feature = "backend")]
36    #[error("DatabaseError: {0}")]
37    DatabaseError(#[from] sqlx::Error),
38
39    #[cfg(feature = "nats")]
40    #[error("NotifierError: {0}")]
41    NotifierError(String),
42}