authentik_client/models/
radius_provider.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct RadiusProvider {
17 #[serde(rename = "pk")]
18 pub pk: i32,
19 #[serde(rename = "name")]
20 pub name: String,
21 #[serde(
23 rename = "authentication_flow",
24 default,
25 with = "::serde_with::rust::double_option",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub authentication_flow: Option<Option<uuid::Uuid>>,
29 #[serde(rename = "authorization_flow")]
31 pub authorization_flow: uuid::Uuid,
32 #[serde(rename = "invalidation_flow")]
34 pub invalidation_flow: uuid::Uuid,
35 #[serde(rename = "property_mappings", skip_serializing_if = "Option::is_none")]
36 pub property_mappings: Option<Vec<uuid::Uuid>>,
37 #[serde(rename = "component")]
39 pub component: String,
40 #[serde(rename = "assigned_application_slug")]
42 pub assigned_application_slug: String,
43 #[serde(rename = "assigned_application_name")]
45 pub assigned_application_name: String,
46 #[serde(rename = "assigned_backchannel_application_slug")]
48 pub assigned_backchannel_application_slug: String,
49 #[serde(rename = "assigned_backchannel_application_name")]
51 pub assigned_backchannel_application_name: String,
52 #[serde(rename = "verbose_name")]
54 pub verbose_name: String,
55 #[serde(rename = "verbose_name_plural")]
57 pub verbose_name_plural: String,
58 #[serde(rename = "meta_model_name")]
60 pub meta_model_name: String,
61 #[serde(rename = "client_networks", skip_serializing_if = "Option::is_none")]
63 pub client_networks: Option<String>,
64 #[serde(rename = "shared_secret", skip_serializing_if = "Option::is_none")]
66 pub shared_secret: Option<String>,
67 #[serde(rename = "outpost_set")]
68 pub outpost_set: Vec<String>,
69 #[serde(rename = "mfa_support", skip_serializing_if = "Option::is_none")]
71 pub mfa_support: Option<bool>,
72 #[serde(
73 rename = "certificate",
74 default,
75 with = "::serde_with::rust::double_option",
76 skip_serializing_if = "Option::is_none"
77 )]
78 pub certificate: Option<Option<uuid::Uuid>>,
79}
80
81impl RadiusProvider {
82 pub fn new(
84 pk: i32,
85 name: String,
86 authorization_flow: uuid::Uuid,
87 invalidation_flow: uuid::Uuid,
88 component: String,
89 assigned_application_slug: String,
90 assigned_application_name: String,
91 assigned_backchannel_application_slug: String,
92 assigned_backchannel_application_name: String,
93 verbose_name: String,
94 verbose_name_plural: String,
95 meta_model_name: String,
96 outpost_set: Vec<String>,
97 ) -> RadiusProvider {
98 RadiusProvider {
99 pk,
100 name,
101 authentication_flow: None,
102 authorization_flow,
103 invalidation_flow,
104 property_mappings: None,
105 component,
106 assigned_application_slug,
107 assigned_application_name,
108 assigned_backchannel_application_slug,
109 assigned_backchannel_application_name,
110 verbose_name,
111 verbose_name_plural,
112 meta_model_name,
113 client_networks: None,
114 shared_secret: None,
115 outpost_set,
116 mfa_support: None,
117 certificate: None,
118 }
119 }
120}