use reqwest;
use std::fmt::{Display, Formatter, Result};
use std::io;
#[derive(Debug)]
pub enum ClientError {
IoError(io::Error),
DaemonError(String),
InternalError(String),
}
impl From<io::Error> for ClientError {
fn from(err: io::Error) -> Self {
ClientError::IoError(err)
}
}
impl From<reqwest::Error> for ClientError {
fn from(err: reqwest::Error) -> Self {
ClientError::InternalError(format!("Request Failed: {}", err))
}
}
impl Display for ClientError {
fn fmt(&self, f: &mut Formatter) -> Result {
match &self {
ClientError::IoError(err) => write!(f, "{:?}", err),
ClientError::DaemonError(err) => write!(f, "{}", err),
ClientError::InternalError(err) => write!(f, "{}", err),
}
}
}