1use failure::Fail;
2pub use failure::Error;
3
4#[derive(Debug, Fail)]
9pub enum ApiError {
10 #[fail(display = "Invalid api_key")]
12 InvalidApiKey(),
13 #[fail(display = "Invalid secret_api_key")]
15 InvalidSecretApiKey(),
16 #[fail(display = "Error: {}", _0)]
18 GenericError(String),
19}
20
21impl From<reqwest::Error> for ApiError {
22 fn from(req_err: reqwest::Error) -> ApiError {
23 ApiError::GenericError(format!("{}", req_err))
24 }
25}
26
27impl From<std::io::Error> for ApiError {
28 fn from(io_err: std::io::Error) -> ApiError {
29 ApiError::GenericError(format!("{}", io_err))
30 }
31}
32
33impl From<walkdir::Error> for ApiError {
34 fn from(io_err: walkdir::Error) -> ApiError {
35 ApiError::GenericError(format!("{}", io_err))
36 }
37}
38
39impl From<std::path::StripPrefixError> for ApiError {
40 fn from(io_err: std::path::StripPrefixError) -> ApiError {
41 ApiError::GenericError(format!("{}", io_err))
42 }
43}