use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CmmnCaseTransitionIntent {
#[serde(rename = "transition")]
pub transition: Transition,
#[serde(rename = "requested_by")]
pub requested_by: String,
#[serde(rename = "requested_at")]
pub requested_at: String,
}
impl CmmnCaseTransitionIntent {
pub fn new(transition: Transition, requested_by: String, requested_at: String) -> CmmnCaseTransitionIntent {
CmmnCaseTransitionIntent {
transition,
requested_by,
requested_at,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Transition {
#[serde(rename = "suspend")]
Suspend,
#[serde(rename = "resume")]
Resume,
#[serde(rename = "terminate")]
Terminate,
#[serde(rename = "close")]
Close,
}
impl Default for Transition {
fn default() -> Transition {
Self::Suspend
}
}