orvanta-api 6.5.0

No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
Documentation
/*
 * Orvanta API
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 6.5.0
 * Contact: contact@orvanta.cloud
 * Generated by: https://openapi-generator.tech
 */

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

/// BpmnUnresolvedAssignment : One assignment expression the engine could not turn into an identity at park time (#1123), and why. The engine resolves only expressions that are a plain variable read (`${approver}`, `${order.approver}`); interpolation, arithmetic, calls and engine-API roots are refused rather than guessed at, because reading JUEL as Javascript would change their meaning. An unset variable is refused the same way. 
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct BpmnUnresolvedAssignment {
    /// which assignment slot the expression sat in
    #[serde(rename = "slot")]
    pub slot: Slot,
    /// the expression as authored, delimiters included
    #[serde(rename = "source")]
    pub source: String,
    /// a sentence naming what stopped it, addressed to whoever wrote the model
    #[serde(rename = "reason")]
    pub reason: String,
}

impl BpmnUnresolvedAssignment {
    /// One assignment expression the engine could not turn into an identity at park time (#1123), and why. The engine resolves only expressions that are a plain variable read (`${approver}`, `${order.approver}`); interpolation, arithmetic, calls and engine-API roots are refused rather than guessed at, because reading JUEL as Javascript would change their meaning. An unset variable is refused the same way. 
    pub fn new(slot: Slot, source: String, reason: String) -> BpmnUnresolvedAssignment {
        BpmnUnresolvedAssignment {
            slot,
            source,
            reason,
        }
    }
}
/// which assignment slot the expression sat in
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Slot {
    #[serde(rename = "assignee")]
    Assignee,
    #[serde(rename = "owner")]
    Owner,
    #[serde(rename = "candidate_users")]
    CandidateUsers,
    #[serde(rename = "candidate_groups")]
    CandidateGroups,
}

impl Default for Slot {
    fn default() -> Slot {
        Self::Assignee
    }
}