asana 0.1.1

asana bindings for rust
Documentation
/*
 * Asana
 *
 * This is the interface for interacting with the [Asana Platform](https://developers.asana.com). Our API reference is generated from our [OpenAPI spec] (https://raw.githubusercontent.com/Asana/developer-docs/master/defs/asana_oas.yaml).
 *
 * The version of the OpenAPI document: 1.0
 *
 * Generated by: https://openapi-generator.tech
 */

/// JobCompactAllOf : A *job* is an object representing a process that handles asynchronous work.

#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct JobCompactAllOf {
    /// The subtype of this resource. Different subtypes retain many of the same fields and behavior, but may render differently in Asana or represent resources with different semantic meaning.
    #[serde(
        rename = "resource_subtype",
        skip_serializing_if = "Option::is_none"
    )]
    pub resource_subtype: Option<String>,
    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
    pub status: Option<Status>,
    #[serde(rename = "new_project", skip_serializing_if = "Option::is_none")]
    pub new_project: Option<Box<crate::models::ProjectCompact>>,
    #[serde(rename = "new_task", skip_serializing_if = "Option::is_none")]
    pub new_task: Option<Box<crate::models::TaskCompact>>,
}

impl JobCompactAllOf {
    /// A *job* is an object representing a process that handles asynchronous work.
    pub fn new() -> JobCompactAllOf {
        JobCompactAllOf {
            resource_subtype: None,
            status: None,
            new_project: None,
            new_task: None,
        }
    }
}

///
#[derive(
    Clone,
    Copy,
    Debug,
    Eq,
    PartialEq,
    Ord,
    PartialOrd,
    Hash,
    Serialize,
    Deserialize
)]
pub enum Status {
    #[serde(rename = "not_started")]
    NotStarted,
    #[serde(rename = "in_progress")]
    InProgress,
    #[serde(rename = "completed")]
    Completed,
    #[serde(rename = "failed")]
    Failed,
}