1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct DynamicSecretUpdateMongoDb {
17 #[serde(rename = "custom-username-template", skip_serializing_if = "Option::is_none")]
19 pub custom_username_template: Option<String>,
20 #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
22 pub delete_protection: Option<String>,
23 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
25 pub description: Option<String>,
26 #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
28 pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
29 #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
31 pub json: Option<bool>,
32 #[serde(rename = "mongodb-atlas-api-private-key", skip_serializing_if = "Option::is_none")]
34 pub mongodb_atlas_api_private_key: Option<String>,
35 #[serde(rename = "mongodb-atlas-api-public-key", skip_serializing_if = "Option::is_none")]
37 pub mongodb_atlas_api_public_key: Option<String>,
38 #[serde(rename = "mongodb-atlas-project-id", skip_serializing_if = "Option::is_none")]
40 pub mongodb_atlas_project_id: Option<String>,
41 #[serde(rename = "mongodb-custom-data", skip_serializing_if = "Option::is_none")]
43 pub mongodb_custom_data: Option<String>,
44 #[serde(rename = "mongodb-default-auth-db", skip_serializing_if = "Option::is_none")]
46 pub mongodb_default_auth_db: Option<String>,
47 #[serde(rename = "mongodb-host-port", skip_serializing_if = "Option::is_none")]
49 pub mongodb_host_port: Option<String>,
50 #[serde(rename = "mongodb-name", skip_serializing_if = "Option::is_none")]
52 pub mongodb_name: Option<String>,
53 #[serde(rename = "mongodb-password", skip_serializing_if = "Option::is_none")]
55 pub mongodb_password: Option<String>,
56 #[serde(rename = "mongodb-roles", skip_serializing_if = "Option::is_none")]
58 pub mongodb_roles: Option<String>,
59 #[serde(rename = "mongodb-scopes", skip_serializing_if = "Option::is_none")]
61 pub mongodb_scopes: Option<String>,
62 #[serde(rename = "mongodb-server-uri", skip_serializing_if = "Option::is_none")]
64 pub mongodb_server_uri: Option<String>,
65 #[serde(rename = "mongodb-uri-options", skip_serializing_if = "Option::is_none")]
67 pub mongodb_uri_options: Option<String>,
68 #[serde(rename = "mongodb-username", skip_serializing_if = "Option::is_none")]
70 pub mongodb_username: Option<String>,
71 #[serde(rename = "name")]
73 pub name: String,
74 #[serde(rename = "new-name", skip_serializing_if = "Option::is_none")]
76 pub new_name: Option<String>,
77 #[serde(rename = "password-length", skip_serializing_if = "Option::is_none")]
79 pub password_length: Option<String>,
80 #[serde(rename = "producer-encryption-key-name", skip_serializing_if = "Option::is_none")]
82 pub producer_encryption_key_name: Option<String>,
83 #[serde(rename = "secure-access-bastion-issuer", skip_serializing_if = "Option::is_none")]
85 pub secure_access_bastion_issuer: Option<String>,
86 #[serde(rename = "secure-access-certificate-issuer", skip_serializing_if = "Option::is_none")]
88 pub secure_access_certificate_issuer: Option<String>,
89 #[serde(rename = "secure-access-db-name", skip_serializing_if = "Option::is_none")]
91 pub secure_access_db_name: Option<String>,
92 #[serde(rename = "secure-access-delay", skip_serializing_if = "Option::is_none")]
94 pub secure_access_delay: Option<i64>,
95 #[serde(rename = "secure-access-enable", skip_serializing_if = "Option::is_none")]
97 pub secure_access_enable: Option<String>,
98 #[serde(rename = "secure-access-host", skip_serializing_if = "Option::is_none")]
100 pub secure_access_host: Option<Vec<String>>,
101 #[serde(rename = "secure-access-web", skip_serializing_if = "Option::is_none")]
103 pub secure_access_web: Option<bool>,
104 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
106 pub tags: Option<Vec<String>>,
107 #[serde(rename = "target-name", skip_serializing_if = "Option::is_none")]
109 pub target_name: Option<String>,
110 #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
112 pub token: Option<String>,
113 #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
115 pub uid_token: Option<String>,
116 #[serde(rename = "user-ttl", skip_serializing_if = "Option::is_none")]
118 pub user_ttl: Option<String>,
119}
120
121impl DynamicSecretUpdateMongoDb {
122 pub fn new(name: String) -> DynamicSecretUpdateMongoDb {
124 DynamicSecretUpdateMongoDb {
125 custom_username_template: None,
126 delete_protection: None,
127 description: None,
128 item_custom_fields: None,
129 json: None,
130 mongodb_atlas_api_private_key: None,
131 mongodb_atlas_api_public_key: None,
132 mongodb_atlas_project_id: None,
133 mongodb_custom_data: None,
134 mongodb_default_auth_db: None,
135 mongodb_host_port: None,
136 mongodb_name: None,
137 mongodb_password: None,
138 mongodb_roles: None,
139 mongodb_scopes: None,
140 mongodb_server_uri: None,
141 mongodb_uri_options: None,
142 mongodb_username: None,
143 name,
144 new_name: None,
145 password_length: None,
146 producer_encryption_key_name: None,
147 secure_access_bastion_issuer: None,
148 secure_access_certificate_issuer: None,
149 secure_access_db_name: None,
150 secure_access_delay: None,
151 secure_access_enable: None,
152 secure_access_host: None,
153 secure_access_web: None,
154 tags: None,
155 target_name: None,
156 token: None,
157 uid_token: None,
158 user_ttl: None,
159 }
160 }
161}
162