openapi_github/models/
webhook_pull_request_assigned.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct WebhookPullRequestAssigned {
16 #[serde(rename = "action")]
17 pub action: Action,
18 #[serde(rename = "assignee", deserialize_with = "Option::deserialize")]
19 pub assignee: Option<Box<models::WebhooksUser>>,
20 #[serde(rename = "enterprise", skip_serializing_if = "Option::is_none")]
21 pub enterprise: Option<Box<models::EnterpriseWebhooks>>,
22 #[serde(rename = "installation", skip_serializing_if = "Option::is_none")]
23 pub installation: Option<Box<models::SimpleInstallation>>,
24 #[serde(rename = "number")]
26 pub number: i32,
27 #[serde(rename = "organization", skip_serializing_if = "Option::is_none")]
28 pub organization: Option<Box<models::OrganizationSimpleWebhooks>>,
29 #[serde(rename = "pull_request")]
30 pub pull_request: Box<models::PullRequest>,
31 #[serde(rename = "repository")]
32 pub repository: Box<models::RepositoryWebhooks>,
33 #[serde(rename = "sender")]
34 pub sender: Box<models::SimpleUserWebhooks>,
35}
36
37impl WebhookPullRequestAssigned {
38 pub fn new(action: Action, assignee: Option<models::WebhooksUser>, number: i32, pull_request: models::PullRequest, repository: models::RepositoryWebhooks, sender: models::SimpleUserWebhooks) -> WebhookPullRequestAssigned {
39 WebhookPullRequestAssigned {
40 action,
41 assignee: assignee.map(Box::new),
42 enterprise: None,
43 installation: None,
44 number,
45 organization: None,
46 pull_request: Box::new(pull_request),
47 repository: Box::new(repository),
48 sender: Box::new(sender),
49 }
50 }
51}
52#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
54pub enum Action {
55 #[serde(rename = "assigned")]
56 Assigned,
57}
58
59impl Default for Action {
60 fn default() -> Action {
61 Self::Assigned
62 }
63}
64