openapi_github/models/
webhooks_alert.rs

1/*
2 * GitHub's official OpenAPI spec + Octokit extension
3 *
4 * OpenAPI specs from https://github.com/github/rest-api-description with the 'x-octokit' extension required by the Octokit SDKs
5 *
6 * The version of the OpenAPI document: 16.6.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// WebhooksAlert : The security alert of the vulnerable dependency.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct WebhooksAlert {
17    #[serde(rename = "affected_package_name")]
18    pub affected_package_name: String,
19    #[serde(rename = "affected_range")]
20    pub affected_range: String,
21    #[serde(rename = "created_at")]
22    pub created_at: String,
23    #[serde(rename = "dismiss_reason", skip_serializing_if = "Option::is_none")]
24    pub dismiss_reason: Option<String>,
25    #[serde(rename = "dismissed_at", skip_serializing_if = "Option::is_none")]
26    pub dismissed_at: Option<String>,
27    #[serde(rename = "dismisser", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
28    pub dismisser: Option<Option<Box<models::User>>>,
29    #[serde(rename = "external_identifier")]
30    pub external_identifier: String,
31    #[serde(rename = "external_reference", deserialize_with = "Option::deserialize")]
32    pub external_reference: Option<String>,
33    #[serde(rename = "fix_reason", skip_serializing_if = "Option::is_none")]
34    pub fix_reason: Option<String>,
35    #[serde(rename = "fixed_at", skip_serializing_if = "Option::is_none")]
36    pub fixed_at: Option<String>,
37    #[serde(rename = "fixed_in", skip_serializing_if = "Option::is_none")]
38    pub fixed_in: Option<String>,
39    #[serde(rename = "ghsa_id")]
40    pub ghsa_id: String,
41    #[serde(rename = "id")]
42    pub id: i32,
43    #[serde(rename = "node_id")]
44    pub node_id: String,
45    #[serde(rename = "number")]
46    pub number: i32,
47    #[serde(rename = "severity")]
48    pub severity: String,
49    #[serde(rename = "state")]
50    pub state: State,
51}
52
53impl WebhooksAlert {
54    /// The security alert of the vulnerable dependency.
55    pub fn new(affected_package_name: String, affected_range: String, created_at: String, external_identifier: String, external_reference: Option<String>, ghsa_id: String, id: i32, node_id: String, number: i32, severity: String, state: State) -> WebhooksAlert {
56        WebhooksAlert {
57            affected_package_name,
58            affected_range,
59            created_at,
60            dismiss_reason: None,
61            dismissed_at: None,
62            dismisser: None,
63            external_identifier,
64            external_reference,
65            fix_reason: None,
66            fixed_at: None,
67            fixed_in: None,
68            ghsa_id,
69            id,
70            node_id,
71            number,
72            severity,
73            state,
74        }
75    }
76}
77/// 
78#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
79pub enum State {
80    #[serde(rename = "open")]
81    Open,
82}
83
84impl Default for State {
85    fn default() -> State {
86        Self::Open
87    }
88}
89