fastly_api/models/
waf_exclusion_data_attributes.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct WafExclusionDataAttributes {
13 #[serde(rename = "condition", skip_serializing_if = "Option::is_none")]
15 pub condition: Option<String>,
16 #[serde(rename = "exclusion_type", skip_serializing_if = "Option::is_none")]
18 pub exclusion_type: Option<ExclusionType>,
19 #[serde(rename = "logging", skip_serializing_if = "Option::is_none")]
21 pub logging: Option<bool>,
22 #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
24 pub name: Option<String>,
25 #[serde(rename = "number", skip_serializing_if = "Option::is_none")]
27 pub number: Option<i32>,
28 #[serde(rename = "variable", skip_serializing_if = "Option::is_none")]
30 pub variable: Option<Variable>,
31}
32
33impl WafExclusionDataAttributes {
34 pub fn new() -> WafExclusionDataAttributes {
35 WafExclusionDataAttributes {
36 condition: None,
37 exclusion_type: None,
38 logging: None,
39 name: None,
40 number: None,
41 variable: None,
42 }
43 }
44}
45
46#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
48pub enum ExclusionType {
49 #[serde(rename = "rule")]
50 Rule,
51 #[serde(rename = "variable")]
52 Variable,
53 #[serde(rename = "waf")]
54 Waf,
55}
56
57impl Default for ExclusionType {
58 fn default() -> ExclusionType {
59 Self::Rule
60 }
61}
62#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
64pub enum Variable {
65 #[serde(rename = "req.cookies")]
66 ReqCookies,
67 #[serde(rename = "req.headers")]
68 ReqHeaders,
69 #[serde(rename = "req.post")]
70 ReqPost,
71 #[serde(rename = "req.post_filename")]
72 ReqPostFilename,
73 #[serde(rename = "req.qs")]
74 ReqQs,
75 #[serde(rename = "null")]
76 Null,
77}
78
79impl Default for Variable {
80 fn default() -> Variable {
81 Self::ReqCookies
82 }
83}
84