zone_update/
errors.rs

1
2use std::result;
3use thiserror::Error;
4
5
6#[derive(Debug, Error)]
7pub enum Error {
8    #[error("API usage error: {0}")]
9    ApiError(String),
10
11    #[error("Auth error: {0}")]
12    AuthError(String),
13
14    #[error("HTTP error: {0}")]
15    HttpError(String),
16
17    #[error("URL error: {0}")]
18    UrlError(String),
19
20    #[error("Unexpected record value: {0}")]
21    UnexpectedRecord(String),
22
23    #[error(transparent)]
24    AddrParseError(#[from] std::net::AddrParseError),
25
26    #[error(transparent)]
27    UreqError(#[from] ureq::Error),
28
29    #[error("Failed to lock: {0}")]
30    LockingError(String),
31
32    #[error(transparent)]
33    HeaderNameError(#[from] ureq::http::header::InvalidHeaderName),
34
35    #[error(transparent)]
36    HeaderValueError(#[from] ureq::http::header::InvalidHeaderValue),
37
38    #[error(transparent)]
39    IoError(#[from] std::io::Error),
40
41    #[error(transparent)]
42    JsonError(#[from] serde_json::Error),
43
44    // #[error(transparent)]
45    // RustlsError(#[from] rustls::Error),
46}
47
48pub type Result<T> = result::Result<T, Error>;