foxtive_ntex/contracts/response_code_contract.rs
1use ntex::http::StatusCode;
2use std::borrow::Cow;
3
4pub trait ResponseCodeContract: Clone {
5 fn code(&self) -> Cow<'static, str>;
6
7 fn status(&self) -> StatusCode;
8
9 fn success(&self) -> bool {
10 let code = self.status().as_u16();
11 (200..300).contains(&code)
12 }
13
14 fn from_code(code: &str) -> Self;
15
16 fn from_status(status: StatusCode) -> Self;
17}