windmill_api/models/
raw_script_assets_inner.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct RawScriptAssetsInner {
16 #[serde(rename = "path")]
18 pub path: String,
19 #[serde(rename = "kind")]
21 pub kind: Kind,
22 #[serde(rename = "access_type", skip_serializing_if = "Option::is_none")]
24 pub access_type: Option<AccessType>,
25 #[serde(rename = "alt_access_type", skip_serializing_if = "Option::is_none")]
27 pub alt_access_type: Option<AltAccessType>,
28}
29
30impl RawScriptAssetsInner {
31 pub fn new(path: String, kind: Kind) -> RawScriptAssetsInner {
32 RawScriptAssetsInner {
33 path,
34 kind,
35 access_type: None,
36 alt_access_type: None,
37 }
38 }
39}
40#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
42pub enum Kind {
43 #[serde(rename = "s3object")]
44 S3object,
45 #[serde(rename = "resource")]
46 Resource,
47 #[serde(rename = "ducklake")]
48 Ducklake,
49 #[serde(rename = "datatable")]
50 Datatable,
51}
52
53impl Default for Kind {
54 fn default() -> Kind {
55 Self::S3object
56 }
57}
58#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
60pub enum AccessType {
61 #[serde(rename = "r")]
62 R,
63 #[serde(rename = "w")]
64 W,
65 #[serde(rename = "rw")]
66 Rw,
67}
68
69impl Default for AccessType {
70 fn default() -> AccessType {
71 Self::R
72 }
73}
74#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
76pub enum AltAccessType {
77 #[serde(rename = "r")]
78 R,
79 #[serde(rename = "w")]
80 W,
81 #[serde(rename = "rw")]
82 Rw,
83}
84
85impl Default for AltAccessType {
86 fn default() -> AltAccessType {
87 Self::R
88 }
89}
90