jira_v3_openapi 1.6.0

Jira Cloud platform REST API lib (OpenAPI document version: 1001.0.0-SNAPSHOT-af42c50d50804c2f1b8ad4bb80d52c53890867e2)
Documentation
/*
 * The Jira Cloud platform REST API
 *
 * Jira Cloud platform REST API documentation
 *
 * The version of the OpenAPI document: 1001.0.0-SNAPSHOT-af42c50d50804c2f1b8ad4bb80d52c53890867e2
 * Contact: ecosystem@atlassian.com
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// SaveProjectTemplateRequest : The request details to generate template from a project
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SaveProjectTemplateRequest {
    /// The ID of the target project
    #[serde(rename = "projectId", skip_serializing_if = "Option::is_none")]
    pub project_id: Option<i64>,
    #[serde(rename = "templateGenerationOptions", skip_serializing_if = "Option::is_none")]
    pub template_generation_options: Option<Box<models::CustomTemplateOptions>>,
    /// The type of the template: LIVE | SNAPSHOT
    #[serde(rename = "templateType", skip_serializing_if = "Option::is_none")]
    pub template_type: Option<TemplateType>,
}

impl SaveProjectTemplateRequest {
    /// The request details to generate template from a project
    pub fn new() -> SaveProjectTemplateRequest {
        SaveProjectTemplateRequest {
            project_id: None,
            template_generation_options: None,
            template_type: None,
        }
    }
}
/// The type of the template: LIVE | SNAPSHOT
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum TemplateType {
    #[serde(rename = "LIVE")]
    Live,
    #[serde(rename = "SNAPSHOT")]
    Snapshot,
}

impl Default for TemplateType {
    fn default() -> TemplateType {
        Self::Live
    }
}