eve_esi_api/
errors.rs

1use oauth2::{ErrorResponse, RequestTokenError};
2use reqwest::StatusCode;
3
4#[derive(Debug, thiserror::Error)]
5pub enum EveEsiError {
6    #[error("No api token")]
7    NoTokenFound,
8
9    #[error("Api call error {0} : {1}")]
10    ApiCallError(StatusCode, String),
11
12    #[error("Login error")]
13    LoginError,
14
15    #[error("Request Error {0}")]
16    ReqError(#[from] reqwest::Error),
17
18    #[error("Serde Error {0}")]
19    SerdeError(#[from] serde_json::Error),
20
21    #[error("Parse error {0}")]
22    ParseError(#[from] url::ParseError),
23
24    #[error("IO Error {0}")]
25    IoError(#[from] std::io::Error),
26
27    #[error("Authentication Error")]
28    AuthentError(),
29
30    #[error("Token error")]
31    TokenError(),
32
33    #[error("Scopes changed")]
34    ScopesChanged,
35}
36
37impl<RE: std::error::Error, TE: ErrorResponse> From<RequestTokenError<RE, TE>> for EveEsiError {
38    fn from(_: RequestTokenError<RE, TE>) -> Self {
39        EveEsiError::TokenError()
40    }
41}