authentik_client/models/
event_matcher_policy_request.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct EventMatcherPolicyRequest {
17 #[serde(rename = "name")]
18 pub name: String,
19 #[serde(rename = "execution_logging", skip_serializing_if = "Option::is_none")]
21 pub execution_logging: Option<bool>,
22 #[serde(
24 rename = "action",
25 default,
26 with = "::serde_with::rust::double_option",
27 skip_serializing_if = "Option::is_none"
28 )]
29 pub action: Option<Option<models::EventActions>>,
30 #[serde(
32 rename = "client_ip",
33 default,
34 with = "::serde_with::rust::double_option",
35 skip_serializing_if = "Option::is_none"
36 )]
37 pub client_ip: Option<Option<String>>,
38 #[serde(
40 rename = "app",
41 default,
42 with = "::serde_with::rust::double_option",
43 skip_serializing_if = "Option::is_none"
44 )]
45 pub app: Option<Option<models::AppEnum>>,
46 #[serde(
48 rename = "model",
49 default,
50 with = "::serde_with::rust::double_option",
51 skip_serializing_if = "Option::is_none"
52 )]
53 pub model: Option<Option<models::ModelEnum>>,
54}
55
56impl EventMatcherPolicyRequest {
57 pub fn new(name: String) -> EventMatcherPolicyRequest {
59 EventMatcherPolicyRequest {
60 name,
61 execution_logging: None,
62 action: None,
63 client_ip: None,
64 app: None,
65 model: None,
66 }
67 }
68}