fastly_api/models/
waf_rule_attributes.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
12pub struct WafRuleAttributes {
13 #[serde(rename = "modsec_rule_id", skip_serializing_if = "Option::is_none")]
15 pub modsec_rule_id: Option<i32>,
16 #[serde(rename = "publisher", skip_serializing_if = "Option::is_none")]
18 pub publisher: Option<Publisher>,
19 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
21 pub _type: Option<Type>,
22}
23
24impl WafRuleAttributes {
25 pub fn new() -> WafRuleAttributes {
26 WafRuleAttributes {
27 modsec_rule_id: None,
28 publisher: None,
29 _type: None,
30 }
31 }
32}
33
34#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
36pub enum Publisher {
37 #[serde(rename = "fastly")]
38 Fastly,
39 #[serde(rename = "trustwave")]
40 Trustwave,
41 #[serde(rename = "owasp")]
42 Owasp,
43}
44
45impl Default for Publisher {
46 fn default() -> Publisher {
47 Self::Fastly
48 }
49}
50#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
52pub enum Type {
53 #[serde(rename = "strict")]
54 Strict,
55 #[serde(rename = "score")]
56 Score,
57 #[serde(rename = "threshold")]
58 Threshold,
59}
60
61impl Default for Type {
62 fn default() -> Type {
63 Self::Strict
64 }
65}
66