harbor_api/models/
webhook_policy.rs

1/*
2 * Harbor API
3 *
4 * These APIs provide services for manipulating Harbor project.
5 *
6 * The version of the OpenAPI document: 2.0
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// WebhookPolicy : The webhook policy object
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct WebhookPolicy {
17    /// The webhook policy ID.
18    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
19    pub id: Option<i64>,
20    /// The name of webhook policy.
21    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
22    pub name: Option<String>,
23    /// The description of webhook policy.
24    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
25    pub description: Option<String>,
26    /// The project ID of webhook policy.
27    #[serde(rename = "project_id", skip_serializing_if = "Option::is_none")]
28    pub project_id: Option<i32>,
29    #[serde(rename = "targets", skip_serializing_if = "Option::is_none")]
30    pub targets: Option<Vec<models::WebhookTargetObject>>,
31    #[serde(rename = "event_types", skip_serializing_if = "Option::is_none")]
32    pub event_types: Option<Vec<String>>,
33    /// The creator of the webhook policy.
34    #[serde(rename = "creator", skip_serializing_if = "Option::is_none")]
35    pub creator: Option<String>,
36    /// The create time of the webhook policy.
37    #[serde(rename = "creation_time", skip_serializing_if = "Option::is_none")]
38    pub creation_time: Option<String>,
39    /// The update time of the webhook policy.
40    #[serde(rename = "update_time", skip_serializing_if = "Option::is_none")]
41    pub update_time: Option<String>,
42    /// Whether the webhook policy is enabled or not.
43    #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
44    pub enabled: Option<bool>,
45}
46
47impl WebhookPolicy {
48    /// The webhook policy object
49    pub fn new() -> WebhookPolicy {
50        WebhookPolicy {
51            id: None,
52            name: None,
53            description: None,
54            project_id: None,
55            targets: None,
56            event_types: None,
57            creator: None,
58            creation_time: None,
59            update_time: None,
60            enabled: None,
61        }
62    }
63}
64