From 49a46acef3ce325e20e13cc97c2e65e8a829dd86 Mon Sep 17 00:00:00 2001
From: Philippe Loctaux
Date: Wed, 1 Mar 2023 22:54:13 +0100
Subject: [PATCH] removed StatusCode, use Status directly
---
crates/ezidam/src/error/catchers.rs | 8 ++++----
crates/ezidam/src/error/mod.rs | 15 +++++++--------
crates/ezidam/src/error/responder.rs | 6 +++---
crates/ezidam/src/error/status_code.rs | 18 ------------------
4 files changed, 14 insertions(+), 33 deletions(-)
delete mode 100644 crates/ezidam/src/error/status_code.rs
diff --git a/crates/ezidam/src/error/catchers.rs b/crates/ezidam/src/error/catchers.rs
index 177afe1..5647ae4 100644
--- a/crates/ezidam/src/error/catchers.rs
+++ b/crates/ezidam/src/error/catchers.rs
@@ -1,20 +1,20 @@
-use super::{Error, StatusCode};
+use super::Error;
use rocket::http::Status;
use rocket::{catch, catchers, Build, Request, Rocket};
#[catch(404)]
fn not_found(req: &Request) -> Error {
- Error::new(StatusCode::NotFound, req.uri())
+ Error::new(Status::NotFound, req.uri())
}
#[catch(500)]
fn internal_server_error(req: &Request) -> Error {
- Error::new(StatusCode::InternalServerError, req.uri())
+ Error::new(Status::InternalServerError, req.uri())
}
#[catch(default)]
fn default(status: Status, req: &Request) -> Error {
- Error::new(StatusCode::Unknown(status), req.uri())
+ Error::new(status, req.uri())
}
pub fn register(rocket_builder: Rocket) -> Rocket {
diff --git a/crates/ezidam/src/error/mod.rs b/crates/ezidam/src/error/mod.rs
index 26b5935..4c32bb2 100644
--- a/crates/ezidam/src/error/mod.rs
+++ b/crates/ezidam/src/error/mod.rs
@@ -1,34 +1,33 @@
pub(super) mod catchers;
mod conversion;
mod responder;
-mod status_code;
-use self::status_code::StatusCode;
+use rocket::http::Status;
use rocket_dyn_templates::{context, Template};
pub struct Error {
- status: StatusCode,
+ status: Status,
template: Template,
}
impl Error {
- fn new(status: StatusCode, message: M) -> Self {
+ fn new(status: Status, message: M) -> Self {
Self {
status,
template: Template::render(
"error",
context! {
- title: format!("{} Error", status.http_code().code),
+ title: format!("{} Error", status.code),
message: message.to_string(),
version: env!("CARGO_PKG_VERSION"),
- http_code: status.http_code().code,
- http_reason: status.http_code().reason_lossy()
+ http_code: status.code,
+ http_reason: status.reason_lossy()
},
),
}
}
pub fn internal_server_error(error: E) -> Self {
- Self::new(StatusCode::InternalServerError, error)
+ Self::new(Status::InternalServerError, error)
}
}
diff --git a/crates/ezidam/src/error/responder.rs b/crates/ezidam/src/error/responder.rs
index e964e46..0d8297a 100644
--- a/crates/ezidam/src/error/responder.rs
+++ b/crates/ezidam/src/error/responder.rs
@@ -1,6 +1,6 @@
-use rocket::{response, Request, Response};
-use rocket::response::Responder;
use super::Error;
+use rocket::response::Responder;
+use rocket::{response, Request, Response};
impl<'r, 'o: 'r> Responder<'r, 'o> for Error {
fn respond_to(self, req: &Request) -> response::Result<'o> {
@@ -9,7 +9,7 @@ impl<'r, 'o: 'r> Responder<'r, 'o> for Error {
// Set status for final response
Response::build_from(template_response)
- .status(self.status.http_code())
+ .status(self.status)
.ok()
}
}
diff --git a/crates/ezidam/src/error/status_code.rs b/crates/ezidam/src/error/status_code.rs
deleted file mode 100644
index 232c3fc..0000000
--- a/crates/ezidam/src/error/status_code.rs
+++ /dev/null
@@ -1,18 +0,0 @@
-use rocket::http::Status;
-
-#[derive(Copy, Clone)]
-pub(super) enum StatusCode {
- NotFound,
- InternalServerError,
- Unknown(Status),
-}
-
-impl StatusCode {
- pub fn http_code(self) -> Status {
- match self {
- StatusCode::NotFound => Status::NotFound,
- StatusCode::InternalServerError => Status::InternalServerError,
- StatusCode::Unknown(status) => status,
- }
- }
-}