rusty_box/client/
client_error_model.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct ClientErrorContextInfo {
13 #[serde(rename = "message", skip_serializing_if = "Option::is_none")]
15 pub message: Option<String>,
16}
17
18impl ClientErrorContextInfo {
19 pub fn new() -> ClientErrorContextInfo {
21 ClientErrorContextInfo { message: None }
22 }
23}
24
25#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
28pub struct BoxAPIErrorResponse {
29 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
31 pub object_type: Option<ObjectType>,
32 #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
34 pub status: Option<i32>,
35 #[serde(rename = "code", skip_serializing_if = "Option::is_none")]
37 pub code: Option<Code>,
38 #[serde(rename = "message", skip_serializing_if = "Option::is_none")]
40 pub message: Option<String>,
41 #[serde(rename = "context_info", skip_serializing_if = "Option::is_none")]
42 pub context_info: Option<Box<ClientErrorContextInfo>>,
43 #[serde(rename = "help_url", skip_serializing_if = "Option::is_none")]
45 pub help_url: Option<String>,
46 #[serde(rename = "request_id", skip_serializing_if = "Option::is_none")]
48 pub request_id: Option<String>,
49}
50
51impl BoxAPIErrorResponse {
52 pub fn new() -> BoxAPIErrorResponse {
54 BoxAPIErrorResponse {
55 object_type: None,
56 status: None,
57 code: None,
58 message: None,
59 context_info: None,
60 help_url: None,
61 request_id: None,
62 }
63 }
64}
65
66#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
68pub enum ObjectType {
69 #[serde(rename = "error")]
70 Error,
71}
72
73impl Default for ObjectType {
74 fn default() -> ObjectType {
75 Self::Error
76 }
77}
78#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
80pub enum Code {
81 #[serde(rename = "created")]
82 Created,
83 #[serde(rename = "accepted")]
84 Accepted,
85 #[serde(rename = "no_content")]
86 NoContent,
87 #[serde(rename = "redirect")]
88 Redirect,
89 #[serde(rename = "not_modified")]
90 NotModified,
91 #[serde(rename = "bad_request")]
92 BadRequest,
93 #[serde(rename = "unauthorized")]
94 Unauthorized,
95 #[serde(rename = "forbidden")]
96 Forbidden,
97 #[serde(rename = "not_found")]
98 NotFound,
99 #[serde(rename = "method_not_allowed")]
100 MethodNotAllowed,
101 #[serde(rename = "conflict")]
102 Conflict,
103 #[serde(rename = "precondition_failed")]
104 PreconditionFailed,
105 #[serde(rename = "too_many_requests")]
106 TooManyRequests,
107 #[serde(rename = "internal_server_error")]
108 InternalServerError,
109 #[serde(rename = "unavailable")]
110 Unavailable,
111 #[serde(rename = "item_name_invalid")]
112 ItemNameInvalid,
113 #[serde(rename = "insufficient_scope")]
114 InsufficientScope,
115 #[serde(rename = "user_login_already_used")]
116 UserLoginAlreadyUsed,
117}
118
119impl Default for Code {
120 fn default() -> Code {
121 Self::NoContent
122 }
123}