1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/*
* NetBox REST API
*
* No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
*
* The version of the OpenAPI document: 4.6.2 (4.6)
*
* Generated by: https://openapi-generator.tech
*/
/// Notification : Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see <https://github.com/encode/django-rest-framework/issues/3144>)
#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct Notification {
#[serde(rename = "id", skip_serializing_if = "Option::is_none")]
pub id: Option<i32>,
#[serde(rename = "url", skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
#[serde(rename = "display", skip_serializing_if = "Option::is_none")]
pub display: Option<String>,
#[serde(rename = "object_type")]
pub object_type: String,
#[serde(rename = "object_id")]
pub object_id: i64,
#[serde(
rename = "object",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub object: Option<Option<serde_json::Value>>,
#[serde(rename = "user")]
pub user: Box<crate::models::BriefUser>,
#[serde(rename = "created", skip_serializing_if = "Option::is_none")]
pub created: Option<String>,
#[serde(
rename = "read",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub read: Option<Option<String>>,
/// * `object_created` - Object created * `object_updated` - Object updated * `object_deleted` - Object deleted * `job_started` - Job started * `job_completed` - Job completed * `job_failed` - Job failed * `job_errored` - Job errored
#[serde(rename = "event_type")]
pub event_type: EventType,
}
impl Notification {
/// Extends the built-in ModelSerializer to enforce calling full_clean() on a copy of the associated instance during validation. (DRF does not do this by default; see <https://github.com/encode/django-rest-framework/issues/3144>)
pub fn new(
object_type: String,
object_id: i64,
user: crate::models::BriefUser,
event_type: EventType,
) -> Notification {
Notification {
id: None,
url: None,
display: None,
object_type,
object_id,
object: None,
user: Box::new(user),
created: None,
read: None,
event_type,
}
}
}
/// * `object_created` - Object created * `object_updated` - Object updated * `object_deleted` - Object deleted * `job_started` - Job started * `job_completed` - Job completed * `job_failed` - Job failed * `job_errored` - Job errored
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum EventType {
#[serde(rename = "object_created")]
ObjectCreated,
#[serde(rename = "object_updated")]
ObjectUpdated,
#[serde(rename = "object_deleted")]
ObjectDeleted,
#[serde(rename = "job_started")]
JobStarted,
#[serde(rename = "job_completed")]
JobCompleted,
#[serde(rename = "job_failed")]
JobFailed,
#[serde(rename = "job_errored")]
JobErrored,
}
impl Default for EventType {
fn default() -> EventType {
Self::ObjectCreated
}
}