orvanta_api/models/
bpmn_flow.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct BpmnFlow {
16 #[serde(rename = "workspace_id")]
17 pub workspace_id: String,
18 #[serde(rename = "path")]
19 pub path: String,
20 #[serde(rename = "summary")]
21 pub summary: String,
22 #[serde(rename = "description")]
23 pub description: String,
24 #[serde(rename = "bpmn_xml")]
25 pub bpmn_xml: String,
26 #[serde(rename = "schema", skip_serializing_if = "Option::is_none")]
28 pub schema: Option<serde_json::Value>,
29 #[serde(rename = "draft_only", skip_serializing_if = "Option::is_none")]
30 pub draft_only: Option<bool>,
31 #[serde(rename = "labels", skip_serializing_if = "Option::is_none")]
32 pub labels: Option<Vec<String>>,
33 #[serde(rename = "archived")]
34 pub archived: bool,
35 #[serde(rename = "edited_by")]
36 pub edited_by: String,
37 #[serde(rename = "edited_at")]
38 pub edited_at: String,
39 #[serde(rename = "extra_perms")]
40 pub extra_perms: std::collections::HashMap<String, bool>,
41 #[serde(rename = "version_id", skip_serializing_if = "Option::is_none")]
42 pub version_id: Option<i32>,
43}
44
45impl BpmnFlow {
46 pub fn new(workspace_id: String, path: String, summary: String, description: String, bpmn_xml: String, archived: bool, edited_by: String, edited_at: String, extra_perms: std::collections::HashMap<String, bool>) -> BpmnFlow {
47 BpmnFlow {
48 workspace_id,
49 path,
50 summary,
51 description,
52 bpmn_xml,
53 schema: None,
54 draft_only: None,
55 labels: None,
56 archived,
57 edited_by,
58 edited_at,
59 extra_perms,
60 version_id: None,
61 }
62 }
63}
64