openapi_github/models/
organization_programmatic_access_grant_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationProgrammaticAccessGrantRequest {
17 #[serde(rename = "id")]
19 pub id: i32,
20 #[serde(rename = "reason", deserialize_with = "Option::deserialize")]
22 pub reason: Option<String>,
23 #[serde(rename = "owner")]
24 pub owner: Box<models::SimpleUser>,
25 #[serde(rename = "repository_selection")]
27 pub repository_selection: RepositorySelection,
28 #[serde(rename = "repositories_url")]
30 pub repositories_url: String,
31 #[serde(rename = "permissions")]
32 pub permissions: Box<models::OrganizationProgrammaticAccessGrantRequestPermissions>,
33 #[serde(rename = "created_at")]
35 pub created_at: String,
36 #[serde(rename = "token_expired")]
38 pub token_expired: bool,
39 #[serde(rename = "token_expires_at", deserialize_with = "Option::deserialize")]
41 pub token_expires_at: Option<String>,
42 #[serde(rename = "token_last_used_at", deserialize_with = "Option::deserialize")]
44 pub token_last_used_at: Option<String>,
45}
46
47impl OrganizationProgrammaticAccessGrantRequest {
48 pub fn new(id: i32, reason: Option<String>, owner: models::SimpleUser, repository_selection: RepositorySelection, repositories_url: String, permissions: models::OrganizationProgrammaticAccessGrantRequestPermissions, created_at: String, token_expired: bool, token_expires_at: Option<String>, token_last_used_at: Option<String>) -> OrganizationProgrammaticAccessGrantRequest {
50 OrganizationProgrammaticAccessGrantRequest {
51 id,
52 reason,
53 owner: Box::new(owner),
54 repository_selection,
55 repositories_url,
56 permissions: Box::new(permissions),
57 created_at,
58 token_expired,
59 token_expires_at,
60 token_last_used_at,
61 }
62 }
63}
64#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
66pub enum RepositorySelection {
67 #[serde(rename = "none")]
68 None,
69 #[serde(rename = "all")]
70 All,
71 #[serde(rename = "subset")]
72 Subset,
73}
74
75impl Default for RepositorySelection {
76 fn default() -> RepositorySelection {
77 Self::None
78 }
79}
80