use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct Workflow {
#[serde(rename = "created", skip_serializing_if = "Option::is_none")]
pub created: Option<String>,
#[serde(rename = "description")]
pub description: String,
#[serde(rename = "hasDraftWorkflow", skip_serializing_if = "Option::is_none")]
pub has_draft_workflow: Option<bool>,
#[serde(rename = "id")]
pub id: Box<models::PublishedWorkflowId>,
#[serde(rename = "isDefault", skip_serializing_if = "Option::is_none")]
pub is_default: Option<bool>,
#[serde(rename = "operations", skip_serializing_if = "Option::is_none")]
pub operations: Option<Box<models::WorkflowOperations>>,
#[serde(rename = "projects", skip_serializing_if = "Option::is_none")]
pub projects: Option<Vec<models::ProjectDetails>>,
#[serde(rename = "schemes", skip_serializing_if = "Option::is_none")]
pub schemes: Option<Vec<models::WorkflowSchemeIdName>>,
#[serde(rename = "statuses", skip_serializing_if = "Option::is_none")]
pub statuses: Option<Vec<models::WorkflowStatus>>,
#[serde(rename = "transitions", skip_serializing_if = "Option::is_none")]
pub transitions: Option<Vec<models::Transition>>,
#[serde(rename = "updated", skip_serializing_if = "Option::is_none")]
pub updated: Option<String>,
}
impl Workflow {
pub fn new(description: String, id: models::PublishedWorkflowId) -> Workflow {
Workflow {
created: None,
description,
has_draft_workflow: None,
id: Box::new(id),
is_default: None,
operations: None,
projects: None,
schemes: None,
statuses: None,
transitions: None,
updated: None,
}
}
}