use failure::Error as FailureError;
use reqwest::StatusCode;
use url;
use super::response::PropfindParseError;
pub type Result<T> = ::std::result::Result<T, FailureError>;
#[derive(Fail, Debug)]
pub enum Error {
#[fail(display = "{:?}", _0)]
NetworkingError(#[cause] ::reqwest::Error),
#[fail(display = "Failed to propfind: {}", _0)]
PropfindParse(PropfindParseError),
#[fail(display = "Request failed, error code: {}", _0)]
FailedRequest(StatusCode),
#[fail(display = "Parsing URL failed: {}", _0)]
UrlParsingError(#[cause] url::ParseError),
}