actix_ratelimit/
errors.rs1use actix_web::error::Error as AWError;
3use actix_web::web::HttpResponse;
4use failure::{self, Fail};
5use log::*;
6
7#[derive(Debug, Fail)]
12pub enum ARError {
13 #[fail(display = "store not connected")]
15 NotConnected,
16
17 #[fail(display = "store disconnected")]
19 Disconnected,
20
21 #[fail(display = "read/write operatiion failed: {}", _0)]
23 ReadWriteError(String),
24
25 #[fail(display = "unknown error: {}", _0)]
27 UnknownError(std::io::Error),
28
29 #[fail(display = "client identification failed")]
31 IdentificationError,
32}
33
34impl From<ARError> for AWError {
35 fn from(err: ARError) -> AWError {
36 error!("{}", &err);
37 HttpResponse::InternalServerError().into()
38 }
39}