eskom_se_push_api/
errors.rs1#[derive(thiserror::Error, Debug)]
2pub enum HttpError {
3 #[error("API Error: {0}")]
4 APIError(#[from] APIError), #[error("Timeout")]
6 Timeout,
7 #[error("No Internet")]
8 NoInternet,
9 #[error("UnknownError")]
10 Unknown,
11 #[error("Response Error: {0}")]
12 #[cfg(any(feature = "reqwest", doc))]
13 ResponseError(#[from] reqwest::Error),
14 #[cfg(any(feature = "ureq", doc))]
15 #[error("Response Error: {0}")]
16 UreqResponseError(String),
17 #[error("Search text not set")]
18 SearchTextNotSet,
19 #[error("Area ID not set")]
20 AreaIdNotSet,
21 #[error(
22 "Longitude and/or latitude has not been set: Long: {longitude:?} latitude: {latitude:?}"
23 )]
24 LongitudeOrLatitudeNotSet { longitude: f32, latitude: f32 },
25 #[error("Unknown error: {0}")]
26 UnknownError(String),
27}
28
29#[derive(thiserror::Error, Debug)]
30pub enum APIError {
31 #[error("Bad Request (You sent something bad)")]
32 BadRequest,
33 #[error("Not Authenticated (Token Invalid / Disabled)")]
34 Forbidden,
35 #[error("Not found")]
36 NotFound,
37 #[error("Too Many Requests (Token quota exceeded)")]
38 TooManyRequests,
39 #[error("Server Error: {0}")]
40 ServerError(String),
41}