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")]
17 pub path: String,
18 #[serde(rename = "kind")]
19 pub kind: Kind,
20 #[serde(rename = "access_type", skip_serializing_if = "Option::is_none")]
21 pub access_type: Option<AccessType>,
22 #[serde(rename = "alt_access_type", skip_serializing_if = "Option::is_none")]
23 pub alt_access_type: Option<AltAccessType>,
24}
25
26impl RawScriptAssetsInner {
27 pub fn new(path: String, kind: Kind) -> RawScriptAssetsInner {
28 RawScriptAssetsInner {
29 path,
30 kind,
31 access_type: None,
32 alt_access_type: None,
33 }
34 }
35}
36#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
38pub enum Kind {
39 #[serde(rename = "s3object")]
40 S3object,
41 #[serde(rename = "resource")]
42 Resource,
43}
44
45impl Default for Kind {
46 fn default() -> Kind {
47 Self::S3object
48 }
49}
50#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
52pub enum AccessType {
53 #[serde(rename = "r")]
54 R,
55 #[serde(rename = "w")]
56 W,
57 #[serde(rename = "rw")]
58 Rw,
59}
60
61impl Default for AccessType {
62 fn default() -> AccessType {
63 Self::R
64 }
65}
66#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
68pub enum AltAccessType {
69 #[serde(rename = "r")]
70 R,
71 #[serde(rename = "w")]
72 W,
73 #[serde(rename = "rw")]
74 Rw,
75}
76
77impl Default for AltAccessType {
78 fn default() -> AltAccessType {
79 Self::R
80 }
81}
82