From 9a783a6b659b289d865a189eee590f22ceb69e7f Mon Sep 17 00:00:00 2001 From: Lennart <18233294+lennart-k@users.noreply.github.com> Date: Sun, 16 Jun 2024 13:02:28 +0200 Subject: [PATCH] dav: Add another error type --- crates/dav/src/error.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/crates/dav/src/error.rs b/crates/dav/src/error.rs index 7f34dac..d80574b 100644 --- a/crates/dav/src/error.rs +++ b/crates/dav/src/error.rs @@ -7,14 +7,22 @@ use thiserror::Error; pub enum Error { #[error("Not found")] NotFound, + #[error("Bad request: {0}")] BadRequest(String), + #[error("Unauthorized")] Unauthorized, + #[error("Internal server error :(")] InternalError, + + #[error("prop {0} is read-only")] + PropReadOnly(String), + #[error(transparent)] XmlDecodeError(#[from] quick_xml::DeError), + #[error("Internal server error")] Other(#[from] anyhow::Error), } @@ -28,6 +36,7 @@ impl actix_web::error::ResponseError for Error { Self::BadRequest(_) => StatusCode::BAD_REQUEST, Self::Unauthorized => StatusCode::UNAUTHORIZED, Self::XmlDecodeError(_) => StatusCode::BAD_REQUEST, + Error::PropReadOnly(_) => StatusCode::CONFLICT, } }