windmill_api/models/
flow_module.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct FlowModule {
17 #[serde(rename = "id")]
19 pub id: String,
20 #[serde(rename = "value")]
21 pub value: Box<models::FlowModuleValue>,
22 #[serde(rename = "stop_after_if", skip_serializing_if = "Option::is_none")]
23 pub stop_after_if: Option<Box<models::StopAfterIf>>,
24 #[serde(rename = "stop_after_all_iters_if", skip_serializing_if = "Option::is_none")]
25 pub stop_after_all_iters_if: Option<Box<models::StopAfterIf>>,
26 #[serde(rename = "skip_if", skip_serializing_if = "Option::is_none")]
27 pub skip_if: Option<Box<models::FlowModuleSkipIf>>,
28 #[serde(rename = "sleep", skip_serializing_if = "Option::is_none")]
29 pub sleep: Option<Box<models::InputTransform>>,
30 #[serde(rename = "cache_ttl", skip_serializing_if = "Option::is_none")]
32 pub cache_ttl: Option<f64>,
33 #[serde(rename = "cache_ignore_s3_path", skip_serializing_if = "Option::is_none")]
34 pub cache_ignore_s3_path: Option<bool>,
35 #[serde(rename = "timeout", skip_serializing_if = "Option::is_none")]
36 pub timeout: Option<Box<models::InputTransform>>,
37 #[serde(rename = "delete_after_use", skip_serializing_if = "Option::is_none")]
39 pub delete_after_use: Option<bool>,
40 #[serde(rename = "summary", skip_serializing_if = "Option::is_none")]
42 pub summary: Option<String>,
43 #[serde(rename = "mock", skip_serializing_if = "Option::is_none")]
44 pub mock: Option<Box<models::FlowModuleMock>>,
45 #[serde(rename = "suspend", skip_serializing_if = "Option::is_none")]
46 pub suspend: Option<Box<models::FlowModuleSuspend>>,
47 #[serde(rename = "priority", skip_serializing_if = "Option::is_none")]
49 pub priority: Option<f64>,
50 #[serde(rename = "continue_on_error", skip_serializing_if = "Option::is_none")]
52 pub continue_on_error: Option<bool>,
53 #[serde(rename = "retry", skip_serializing_if = "Option::is_none")]
54 pub retry: Option<Box<models::Retry>>,
55}
56
57impl FlowModule {
58 pub fn new(id: String, value: models::FlowModuleValue) -> FlowModule {
60 FlowModule {
61 id,
62 value: Box::new(value),
63 stop_after_if: None,
64 stop_after_all_iters_if: None,
65 skip_if: None,
66 sleep: None,
67 cache_ttl: None,
68 cache_ignore_s3_path: None,
69 timeout: None,
70 delete_after_use: None,
71 summary: None,
72 mock: None,
73 suspend: None,
74 priority: None,
75 continue_on_error: None,
76 retry: None,
77 }
78 }
79}
80