jira_v3_openapi 1.5.2

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

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

/// IssueLayoutPayload : Defines the payload to configure the issue layouts for a project.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IssueLayoutPayload {
    #[serde(rename = "containerId", skip_serializing_if = "Option::is_none")]
    pub container_id: Option<Box<models::ProjectCreateResourceIdentifier>>,
    /// The issue layout type
    #[serde(rename = "issueLayoutType", skip_serializing_if = "Option::is_none")]
    pub issue_layout_type: Option<IssueLayoutType>,
    /// The configuration of items in the issue layout
    #[serde(rename = "items", skip_serializing_if = "Option::is_none")]
    pub items: Option<Vec<models::IssueLayoutItemPayload>>,
    #[serde(rename = "pcri", skip_serializing_if = "Option::is_none")]
    pub pcri: Option<Box<models::ProjectCreateResourceIdentifier>>,
}

impl IssueLayoutPayload {
    /// Defines the payload to configure the issue layouts for a project.
    pub fn new() -> IssueLayoutPayload {
        IssueLayoutPayload {
            container_id: None,
            issue_layout_type: None,
            items: None,
            pcri: None,
        }
    }
}
/// The issue layout type
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum IssueLayoutType {
    #[serde(rename = "ISSUE_VIEW")]
    IssueView,
    #[serde(rename = "ISSUE_CREATE")]
    IssueCreate,
    #[serde(rename = "REQUEST_FORM")]
    RequestForm,
}

impl Default for IssueLayoutType {
    fn default() -> IssueLayoutType {
        Self::IssueView
    }
}