windmill_api/models/
new_schedule.rs

1/*
2 * Windmill API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.505.0
7 * Contact: contact@windmill.dev
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct NewSchedule {
16    #[serde(rename = "path")]
17    pub path: String,
18    #[serde(rename = "schedule")]
19    pub schedule: String,
20    #[serde(rename = "timezone")]
21    pub timezone: String,
22    #[serde(rename = "script_path")]
23    pub script_path: String,
24    #[serde(rename = "is_flow")]
25    pub is_flow: bool,
26    #[serde(rename = "args")]
27    pub args: std::collections::HashMap<String, serde_json::Value>,
28    #[serde(rename = "enabled", skip_serializing_if = "Option::is_none")]
29    pub enabled: Option<bool>,
30    #[serde(rename = "on_failure", skip_serializing_if = "Option::is_none")]
31    pub on_failure: Option<String>,
32    #[serde(rename = "on_failure_times", skip_serializing_if = "Option::is_none")]
33    pub on_failure_times: Option<f64>,
34    #[serde(rename = "on_failure_exact", skip_serializing_if = "Option::is_none")]
35    pub on_failure_exact: Option<bool>,
36    #[serde(rename = "on_failure_extra_args", skip_serializing_if = "Option::is_none")]
37    pub on_failure_extra_args: Option<std::collections::HashMap<String, serde_json::Value>>,
38    #[serde(rename = "on_recovery", skip_serializing_if = "Option::is_none")]
39    pub on_recovery: Option<String>,
40    #[serde(rename = "on_recovery_times", skip_serializing_if = "Option::is_none")]
41    pub on_recovery_times: Option<f64>,
42    #[serde(rename = "on_recovery_extra_args", skip_serializing_if = "Option::is_none")]
43    pub on_recovery_extra_args: Option<std::collections::HashMap<String, serde_json::Value>>,
44    #[serde(rename = "on_success", skip_serializing_if = "Option::is_none")]
45    pub on_success: Option<String>,
46    #[serde(rename = "on_success_extra_args", skip_serializing_if = "Option::is_none")]
47    pub on_success_extra_args: Option<std::collections::HashMap<String, serde_json::Value>>,
48    #[serde(rename = "ws_error_handler_muted", skip_serializing_if = "Option::is_none")]
49    pub ws_error_handler_muted: Option<bool>,
50    #[serde(rename = "retry", skip_serializing_if = "Option::is_none")]
51    pub retry: Option<Box<models::Retry>>,
52    #[serde(rename = "no_flow_overlap", skip_serializing_if = "Option::is_none")]
53    pub no_flow_overlap: Option<bool>,
54    #[serde(rename = "summary", skip_serializing_if = "Option::is_none")]
55    pub summary: Option<String>,
56    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
57    pub description: Option<String>,
58    #[serde(rename = "tag", skip_serializing_if = "Option::is_none")]
59    pub tag: Option<String>,
60    #[serde(rename = "paused_until", skip_serializing_if = "Option::is_none")]
61    pub paused_until: Option<String>,
62    #[serde(rename = "cron_version", skip_serializing_if = "Option::is_none")]
63    pub cron_version: Option<String>,
64}
65
66impl NewSchedule {
67    pub fn new(path: String, schedule: String, timezone: String, script_path: String, is_flow: bool, args: std::collections::HashMap<String, serde_json::Value>) -> NewSchedule {
68        NewSchedule {
69            path,
70            schedule,
71            timezone,
72            script_path,
73            is_flow,
74            args,
75            enabled: None,
76            on_failure: None,
77            on_failure_times: None,
78            on_failure_exact: None,
79            on_failure_extra_args: None,
80            on_recovery: None,
81            on_recovery_times: None,
82            on_recovery_extra_args: None,
83            on_success: None,
84            on_success_extra_args: None,
85            ws_error_handler_muted: None,
86            retry: None,
87            no_flow_overlap: None,
88            summary: None,
89            description: None,
90            tag: None,
91            paused_until: None,
92            cron_version: None,
93        }
94    }
95}
96