Skip to main content

gitbundle_sdk/models/
webhook_model.rs

1/*
2 * GitBundle API
3 *
4 * GitBundle API documentation.
5 *
6 * The version of the OpenAPI document: 3.4.1
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct WebhookModel {
17    #[serde(rename = "created")]
18    pub created: i64,
19    #[serde(rename = "created_by")]
20    pub created_by: i64,
21    #[serde(rename = "description")]
22    pub description: String,
23    #[serde(rename = "display_name")]
24    pub display_name: String,
25    #[serde(rename = "enabled")]
26    pub enabled: bool,
27    #[serde(
28        rename = "group_id",
29        default,
30        with = "::serde_with::rust::double_option",
31        skip_serializing_if = "Option::is_none"
32    )]
33    pub group_id: Option<Option<i64>>,
34    #[serde(rename = "id")]
35    pub id: i64,
36    #[serde(rename = "insecure")]
37    pub insecure: bool,
38    #[serde(rename = "internal")]
39    pub internal: bool,
40    #[serde(
41        rename = "latest_execution_result",
42        default,
43        with = "::serde_with::rust::double_option",
44        skip_serializing_if = "Option::is_none"
45    )]
46    pub latest_execution_result: Option<Option<models::WebhookExecutionResult>>,
47    #[serde(rename = "name")]
48    pub name: String,
49    #[serde(rename = "parent_type")]
50    pub parent_type: models::WebhookParentType,
51    #[serde(
52        rename = "repo_id",
53        default,
54        with = "::serde_with::rust::double_option",
55        skip_serializing_if = "Option::is_none"
56    )]
57    pub repo_id: Option<Option<i64>>,
58    #[serde(rename = "secret")]
59    pub secret: String,
60    #[serde(rename = "triggers")]
61    pub triggers: Vec<models::WebhookTrigger>,
62    #[serde(rename = "updated")]
63    pub updated: i64,
64    #[serde(rename = "url")]
65    pub url: String,
66    #[serde(rename = "version")]
67    pub version: i64,
68}
69
70impl WebhookModel {
71    pub fn new(
72        created: i64,
73        created_by: i64,
74        description: String,
75        display_name: String,
76        enabled: bool,
77        id: i64,
78        insecure: bool,
79        internal: bool,
80        name: String,
81        parent_type: models::WebhookParentType,
82        secret: String,
83        triggers: Vec<models::WebhookTrigger>,
84        updated: i64,
85        url: String,
86        version: i64,
87    ) -> WebhookModel {
88        WebhookModel {
89            created,
90            created_by,
91            description,
92            display_name,
93            enabled,
94            group_id: None,
95            id,
96            insecure,
97            internal,
98            latest_execution_result: None,
99            name,
100            parent_type,
101            repo_id: None,
102            secret,
103            triggers,
104            updated,
105            url,
106            version,
107        }
108    }
109}