aws_sdk_securityhub/types/_aws_rds_db_cluster_details.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Information about an Amazon RDS DB cluster.</p>
4#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct AwsRdsDbClusterDetails {
7 /// <p>For all database engines except Aurora, specifies the allocated storage size in gibibytes (GiB).</p>
8 pub allocated_storage: ::std::option::Option<i32>,
9 /// <p>A list of Availability Zones (AZs) where instances in the DB cluster can be created.</p>
10 pub availability_zones: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
11 /// <p>The number of days for which automated backups are retained.</p>
12 pub backup_retention_period: ::std::option::Option<i32>,
13 /// <p>The name of the database.</p>
14 pub database_name: ::std::option::Option<::std::string::String>,
15 /// <p>The current status of this DB cluster.</p>
16 pub status: ::std::option::Option<::std::string::String>,
17 /// <p>The connection endpoint for the primary instance of the DB cluster.</p>
18 pub endpoint: ::std::option::Option<::std::string::String>,
19 /// <p>The reader endpoint for the DB cluster.</p>
20 pub reader_endpoint: ::std::option::Option<::std::string::String>,
21 /// <p>A list of custom endpoints for the DB cluster.</p>
22 pub custom_endpoints: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
23 /// <p>Whether the DB cluster has instances in multiple Availability Zones.</p>
24 pub multi_az: ::std::option::Option<bool>,
25 /// <p>The name of the database engine to use for this DB cluster. Valid values are as follows:</p>
26 /// <ul>
27 /// <li>
28 /// <p><code>aurora</code></p></li>
29 /// <li>
30 /// <p><code>aurora-mysql</code></p></li>
31 /// <li>
32 /// <p><code>aurora-postgresql</code></p></li>
33 /// </ul>
34 pub engine: ::std::option::Option<::std::string::String>,
35 /// <p>The version number of the database engine to use.</p>
36 pub engine_version: ::std::option::Option<::std::string::String>,
37 /// <p>The port number on which the DB instances in the DB cluster accept connections.</p>
38 pub port: ::std::option::Option<i32>,
39 /// <p>The name of the master user for the DB cluster.</p>
40 pub master_username: ::std::option::Option<::std::string::String>,
41 /// <p>The range of time each day when automated backups are created, if automated backups are enabled.</p>
42 /// <p>Uses the format <code>HH:MM-HH:MM</code>. For example, <code>04:52-05:22</code>.</p>
43 pub preferred_backup_window: ::std::option::Option<::std::string::String>,
44 /// <p>The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).</p>
45 /// <p>Uses the format <code><day>
46 /// :HH:MM-
47 /// <day>
48 /// :HH:MM
49 /// </day>
50 /// </day></code>.</p>
51 /// <p>For the day values, use <code>mon</code>|<code>tue</code>|<code>wed</code>|<code>thu</code>|<code>fri</code>|<code>sat</code>|<code>sun</code>.</p>
52 /// <p>For example, <code>sun:09:32-sun:10:02</code>.</p>
53 pub preferred_maintenance_window: ::std::option::Option<::std::string::String>,
54 /// <p>The identifiers of the read replicas that are associated with this DB cluster.</p>
55 pub read_replica_identifiers: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
56 /// <p>A list of VPC security groups that the DB cluster belongs to.</p>
57 pub vpc_security_groups: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbInstanceVpcSecurityGroup>>,
58 /// <p>Specifies the identifier that Amazon Route 53 assigns when you create a hosted zone.</p>
59 pub hosted_zone_id: ::std::option::Option<::std::string::String>,
60 /// <p>Whether the DB cluster is encrypted.</p>
61 pub storage_encrypted: ::std::option::Option<bool>,
62 /// <p>The ARN of the KMS master key that is used to encrypt the database instances in the DB cluster.</p>
63 pub kms_key_id: ::std::option::Option<::std::string::String>,
64 /// <p>The identifier of the DB cluster. The identifier must be unique within each Amazon Web Services Region and is immutable.</p>
65 pub db_cluster_resource_id: ::std::option::Option<::std::string::String>,
66 /// <p>A list of the IAM roles that are associated with the DB cluster.</p>
67 pub associated_roles: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterAssociatedRole>>,
68 /// <p>Indicates when the DB cluster was created, in Universal Coordinated Time (UTC).</p>
69 /// <p>For more information about the validation and formatting of timestamp fields in Security Hub, see <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps">Timestamps</a>.</p>
70 pub cluster_create_time: ::std::option::Option<::std::string::String>,
71 /// <p>A list of log types that this DB cluster is configured to export to CloudWatch Logs.</p>
72 pub enabled_cloud_watch_logs_exports: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
73 /// <p>The database engine mode of the DB cluster.Valid values are as follows:</p>
74 /// <ul>
75 /// <li>
76 /// <p><code>global</code></p></li>
77 /// <li>
78 /// <p><code>multimaster</code></p></li>
79 /// <li>
80 /// <p><code>parallelquery</code></p></li>
81 /// <li>
82 /// <p><code>provisioned</code></p></li>
83 /// <li>
84 /// <p><code>serverless</code></p></li>
85 /// </ul>
86 pub engine_mode: ::std::option::Option<::std::string::String>,
87 /// <p>Whether the DB cluster has deletion protection enabled.</p>
88 pub deletion_protection: ::std::option::Option<bool>,
89 /// <p>Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled.</p>
90 pub http_endpoint_enabled: ::std::option::Option<bool>,
91 /// <p>The status of the database activity stream. Valid values are as follows:</p>
92 /// <ul>
93 /// <li>
94 /// <p><code>started</code></p></li>
95 /// <li>
96 /// <p><code>starting</code></p></li>
97 /// <li>
98 /// <p><code>stopped</code></p></li>
99 /// <li>
100 /// <p><code>stopping</code></p></li>
101 /// </ul>
102 pub activity_stream_status: ::std::option::Option<::std::string::String>,
103 /// <p>Whether tags are copied from the DB cluster to snapshots of the DB cluster.</p>
104 pub copy_tags_to_snapshot: ::std::option::Option<bool>,
105 /// <p>Whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.</p>
106 pub cross_account_clone: ::std::option::Option<bool>,
107 /// <p>The Active Directory domain membership records that are associated with the DB cluster.</p>
108 pub domain_memberships: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbDomainMembership>>,
109 /// <p>The name of the DB cluster parameter group for the DB cluster.</p>
110 pub db_cluster_parameter_group: ::std::option::Option<::std::string::String>,
111 /// <p>The subnet group that is associated with the DB cluster, including the name, description, and subnets in the subnet group.</p>
112 pub db_subnet_group: ::std::option::Option<::std::string::String>,
113 /// <p>The list of option group memberships for this DB cluster.</p>
114 pub db_cluster_option_group_memberships: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterOptionGroupMembership>>,
115 /// <p>The DB cluster identifier that the user assigned to the cluster. This identifier is the unique key that identifies a DB cluster.</p>
116 pub db_cluster_identifier: ::std::option::Option<::std::string::String>,
117 /// <p>The list of instances that make up the DB cluster.</p>
118 pub db_cluster_members: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterMember>>,
119 /// <p>Whether the mapping of IAM accounts to database accounts is enabled.</p>
120 pub iam_database_authentication_enabled: ::std::option::Option<bool>,
121 /// <p>Indicates if minor version upgrades are automatically applied to the cluster.</p>
122 pub auto_minor_version_upgrade: ::std::option::Option<bool>,
123}
124impl AwsRdsDbClusterDetails {
125 /// <p>For all database engines except Aurora, specifies the allocated storage size in gibibytes (GiB).</p>
126 pub fn allocated_storage(&self) -> ::std::option::Option<i32> {
127 self.allocated_storage
128 }
129 /// <p>A list of Availability Zones (AZs) where instances in the DB cluster can be created.</p>
130 ///
131 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.availability_zones.is_none()`.
132 pub fn availability_zones(&self) -> &[::std::string::String] {
133 self.availability_zones.as_deref().unwrap_or_default()
134 }
135 /// <p>The number of days for which automated backups are retained.</p>
136 pub fn backup_retention_period(&self) -> ::std::option::Option<i32> {
137 self.backup_retention_period
138 }
139 /// <p>The name of the database.</p>
140 pub fn database_name(&self) -> ::std::option::Option<&str> {
141 self.database_name.as_deref()
142 }
143 /// <p>The current status of this DB cluster.</p>
144 pub fn status(&self) -> ::std::option::Option<&str> {
145 self.status.as_deref()
146 }
147 /// <p>The connection endpoint for the primary instance of the DB cluster.</p>
148 pub fn endpoint(&self) -> ::std::option::Option<&str> {
149 self.endpoint.as_deref()
150 }
151 /// <p>The reader endpoint for the DB cluster.</p>
152 pub fn reader_endpoint(&self) -> ::std::option::Option<&str> {
153 self.reader_endpoint.as_deref()
154 }
155 /// <p>A list of custom endpoints for the DB cluster.</p>
156 ///
157 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.custom_endpoints.is_none()`.
158 pub fn custom_endpoints(&self) -> &[::std::string::String] {
159 self.custom_endpoints.as_deref().unwrap_or_default()
160 }
161 /// <p>Whether the DB cluster has instances in multiple Availability Zones.</p>
162 pub fn multi_az(&self) -> ::std::option::Option<bool> {
163 self.multi_az
164 }
165 /// <p>The name of the database engine to use for this DB cluster. Valid values are as follows:</p>
166 /// <ul>
167 /// <li>
168 /// <p><code>aurora</code></p></li>
169 /// <li>
170 /// <p><code>aurora-mysql</code></p></li>
171 /// <li>
172 /// <p><code>aurora-postgresql</code></p></li>
173 /// </ul>
174 pub fn engine(&self) -> ::std::option::Option<&str> {
175 self.engine.as_deref()
176 }
177 /// <p>The version number of the database engine to use.</p>
178 pub fn engine_version(&self) -> ::std::option::Option<&str> {
179 self.engine_version.as_deref()
180 }
181 /// <p>The port number on which the DB instances in the DB cluster accept connections.</p>
182 pub fn port(&self) -> ::std::option::Option<i32> {
183 self.port
184 }
185 /// <p>The name of the master user for the DB cluster.</p>
186 pub fn master_username(&self) -> ::std::option::Option<&str> {
187 self.master_username.as_deref()
188 }
189 /// <p>The range of time each day when automated backups are created, if automated backups are enabled.</p>
190 /// <p>Uses the format <code>HH:MM-HH:MM</code>. For example, <code>04:52-05:22</code>.</p>
191 pub fn preferred_backup_window(&self) -> ::std::option::Option<&str> {
192 self.preferred_backup_window.as_deref()
193 }
194 /// <p>The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).</p>
195 /// <p>Uses the format <code><day>
196 /// :HH:MM-
197 /// <day>
198 /// :HH:MM
199 /// </day>
200 /// </day></code>.</p>
201 /// <p>For the day values, use <code>mon</code>|<code>tue</code>|<code>wed</code>|<code>thu</code>|<code>fri</code>|<code>sat</code>|<code>sun</code>.</p>
202 /// <p>For example, <code>sun:09:32-sun:10:02</code>.</p>
203 pub fn preferred_maintenance_window(&self) -> ::std::option::Option<&str> {
204 self.preferred_maintenance_window.as_deref()
205 }
206 /// <p>The identifiers of the read replicas that are associated with this DB cluster.</p>
207 ///
208 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.read_replica_identifiers.is_none()`.
209 pub fn read_replica_identifiers(&self) -> &[::std::string::String] {
210 self.read_replica_identifiers.as_deref().unwrap_or_default()
211 }
212 /// <p>A list of VPC security groups that the DB cluster belongs to.</p>
213 ///
214 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.vpc_security_groups.is_none()`.
215 pub fn vpc_security_groups(&self) -> &[crate::types::AwsRdsDbInstanceVpcSecurityGroup] {
216 self.vpc_security_groups.as_deref().unwrap_or_default()
217 }
218 /// <p>Specifies the identifier that Amazon Route 53 assigns when you create a hosted zone.</p>
219 pub fn hosted_zone_id(&self) -> ::std::option::Option<&str> {
220 self.hosted_zone_id.as_deref()
221 }
222 /// <p>Whether the DB cluster is encrypted.</p>
223 pub fn storage_encrypted(&self) -> ::std::option::Option<bool> {
224 self.storage_encrypted
225 }
226 /// <p>The ARN of the KMS master key that is used to encrypt the database instances in the DB cluster.</p>
227 pub fn kms_key_id(&self) -> ::std::option::Option<&str> {
228 self.kms_key_id.as_deref()
229 }
230 /// <p>The identifier of the DB cluster. The identifier must be unique within each Amazon Web Services Region and is immutable.</p>
231 pub fn db_cluster_resource_id(&self) -> ::std::option::Option<&str> {
232 self.db_cluster_resource_id.as_deref()
233 }
234 /// <p>A list of the IAM roles that are associated with the DB cluster.</p>
235 ///
236 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.associated_roles.is_none()`.
237 pub fn associated_roles(&self) -> &[crate::types::AwsRdsDbClusterAssociatedRole] {
238 self.associated_roles.as_deref().unwrap_or_default()
239 }
240 /// <p>Indicates when the DB cluster was created, in Universal Coordinated Time (UTC).</p>
241 /// <p>For more information about the validation and formatting of timestamp fields in Security Hub, see <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps">Timestamps</a>.</p>
242 pub fn cluster_create_time(&self) -> ::std::option::Option<&str> {
243 self.cluster_create_time.as_deref()
244 }
245 /// <p>A list of log types that this DB cluster is configured to export to CloudWatch Logs.</p>
246 ///
247 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.enabled_cloud_watch_logs_exports.is_none()`.
248 pub fn enabled_cloud_watch_logs_exports(&self) -> &[::std::string::String] {
249 self.enabled_cloud_watch_logs_exports.as_deref().unwrap_or_default()
250 }
251 /// <p>The database engine mode of the DB cluster.Valid values are as follows:</p>
252 /// <ul>
253 /// <li>
254 /// <p><code>global</code></p></li>
255 /// <li>
256 /// <p><code>multimaster</code></p></li>
257 /// <li>
258 /// <p><code>parallelquery</code></p></li>
259 /// <li>
260 /// <p><code>provisioned</code></p></li>
261 /// <li>
262 /// <p><code>serverless</code></p></li>
263 /// </ul>
264 pub fn engine_mode(&self) -> ::std::option::Option<&str> {
265 self.engine_mode.as_deref()
266 }
267 /// <p>Whether the DB cluster has deletion protection enabled.</p>
268 pub fn deletion_protection(&self) -> ::std::option::Option<bool> {
269 self.deletion_protection
270 }
271 /// <p>Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled.</p>
272 pub fn http_endpoint_enabled(&self) -> ::std::option::Option<bool> {
273 self.http_endpoint_enabled
274 }
275 /// <p>The status of the database activity stream. Valid values are as follows:</p>
276 /// <ul>
277 /// <li>
278 /// <p><code>started</code></p></li>
279 /// <li>
280 /// <p><code>starting</code></p></li>
281 /// <li>
282 /// <p><code>stopped</code></p></li>
283 /// <li>
284 /// <p><code>stopping</code></p></li>
285 /// </ul>
286 pub fn activity_stream_status(&self) -> ::std::option::Option<&str> {
287 self.activity_stream_status.as_deref()
288 }
289 /// <p>Whether tags are copied from the DB cluster to snapshots of the DB cluster.</p>
290 pub fn copy_tags_to_snapshot(&self) -> ::std::option::Option<bool> {
291 self.copy_tags_to_snapshot
292 }
293 /// <p>Whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.</p>
294 pub fn cross_account_clone(&self) -> ::std::option::Option<bool> {
295 self.cross_account_clone
296 }
297 /// <p>The Active Directory domain membership records that are associated with the DB cluster.</p>
298 ///
299 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.domain_memberships.is_none()`.
300 pub fn domain_memberships(&self) -> &[crate::types::AwsRdsDbDomainMembership] {
301 self.domain_memberships.as_deref().unwrap_or_default()
302 }
303 /// <p>The name of the DB cluster parameter group for the DB cluster.</p>
304 pub fn db_cluster_parameter_group(&self) -> ::std::option::Option<&str> {
305 self.db_cluster_parameter_group.as_deref()
306 }
307 /// <p>The subnet group that is associated with the DB cluster, including the name, description, and subnets in the subnet group.</p>
308 pub fn db_subnet_group(&self) -> ::std::option::Option<&str> {
309 self.db_subnet_group.as_deref()
310 }
311 /// <p>The list of option group memberships for this DB cluster.</p>
312 ///
313 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.db_cluster_option_group_memberships.is_none()`.
314 pub fn db_cluster_option_group_memberships(&self) -> &[crate::types::AwsRdsDbClusterOptionGroupMembership] {
315 self.db_cluster_option_group_memberships.as_deref().unwrap_or_default()
316 }
317 /// <p>The DB cluster identifier that the user assigned to the cluster. This identifier is the unique key that identifies a DB cluster.</p>
318 pub fn db_cluster_identifier(&self) -> ::std::option::Option<&str> {
319 self.db_cluster_identifier.as_deref()
320 }
321 /// <p>The list of instances that make up the DB cluster.</p>
322 ///
323 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.db_cluster_members.is_none()`.
324 pub fn db_cluster_members(&self) -> &[crate::types::AwsRdsDbClusterMember] {
325 self.db_cluster_members.as_deref().unwrap_or_default()
326 }
327 /// <p>Whether the mapping of IAM accounts to database accounts is enabled.</p>
328 pub fn iam_database_authentication_enabled(&self) -> ::std::option::Option<bool> {
329 self.iam_database_authentication_enabled
330 }
331 /// <p>Indicates if minor version upgrades are automatically applied to the cluster.</p>
332 pub fn auto_minor_version_upgrade(&self) -> ::std::option::Option<bool> {
333 self.auto_minor_version_upgrade
334 }
335}
336impl AwsRdsDbClusterDetails {
337 /// Creates a new builder-style object to manufacture [`AwsRdsDbClusterDetails`](crate::types::AwsRdsDbClusterDetails).
338 pub fn builder() -> crate::types::builders::AwsRdsDbClusterDetailsBuilder {
339 crate::types::builders::AwsRdsDbClusterDetailsBuilder::default()
340 }
341}
342
343/// A builder for [`AwsRdsDbClusterDetails`](crate::types::AwsRdsDbClusterDetails).
344#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
345#[non_exhaustive]
346pub struct AwsRdsDbClusterDetailsBuilder {
347 pub(crate) allocated_storage: ::std::option::Option<i32>,
348 pub(crate) availability_zones: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
349 pub(crate) backup_retention_period: ::std::option::Option<i32>,
350 pub(crate) database_name: ::std::option::Option<::std::string::String>,
351 pub(crate) status: ::std::option::Option<::std::string::String>,
352 pub(crate) endpoint: ::std::option::Option<::std::string::String>,
353 pub(crate) reader_endpoint: ::std::option::Option<::std::string::String>,
354 pub(crate) custom_endpoints: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
355 pub(crate) multi_az: ::std::option::Option<bool>,
356 pub(crate) engine: ::std::option::Option<::std::string::String>,
357 pub(crate) engine_version: ::std::option::Option<::std::string::String>,
358 pub(crate) port: ::std::option::Option<i32>,
359 pub(crate) master_username: ::std::option::Option<::std::string::String>,
360 pub(crate) preferred_backup_window: ::std::option::Option<::std::string::String>,
361 pub(crate) preferred_maintenance_window: ::std::option::Option<::std::string::String>,
362 pub(crate) read_replica_identifiers: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
363 pub(crate) vpc_security_groups: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbInstanceVpcSecurityGroup>>,
364 pub(crate) hosted_zone_id: ::std::option::Option<::std::string::String>,
365 pub(crate) storage_encrypted: ::std::option::Option<bool>,
366 pub(crate) kms_key_id: ::std::option::Option<::std::string::String>,
367 pub(crate) db_cluster_resource_id: ::std::option::Option<::std::string::String>,
368 pub(crate) associated_roles: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterAssociatedRole>>,
369 pub(crate) cluster_create_time: ::std::option::Option<::std::string::String>,
370 pub(crate) enabled_cloud_watch_logs_exports: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
371 pub(crate) engine_mode: ::std::option::Option<::std::string::String>,
372 pub(crate) deletion_protection: ::std::option::Option<bool>,
373 pub(crate) http_endpoint_enabled: ::std::option::Option<bool>,
374 pub(crate) activity_stream_status: ::std::option::Option<::std::string::String>,
375 pub(crate) copy_tags_to_snapshot: ::std::option::Option<bool>,
376 pub(crate) cross_account_clone: ::std::option::Option<bool>,
377 pub(crate) domain_memberships: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbDomainMembership>>,
378 pub(crate) db_cluster_parameter_group: ::std::option::Option<::std::string::String>,
379 pub(crate) db_subnet_group: ::std::option::Option<::std::string::String>,
380 pub(crate) db_cluster_option_group_memberships: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterOptionGroupMembership>>,
381 pub(crate) db_cluster_identifier: ::std::option::Option<::std::string::String>,
382 pub(crate) db_cluster_members: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterMember>>,
383 pub(crate) iam_database_authentication_enabled: ::std::option::Option<bool>,
384 pub(crate) auto_minor_version_upgrade: ::std::option::Option<bool>,
385}
386impl AwsRdsDbClusterDetailsBuilder {
387 /// <p>For all database engines except Aurora, specifies the allocated storage size in gibibytes (GiB).</p>
388 pub fn allocated_storage(mut self, input: i32) -> Self {
389 self.allocated_storage = ::std::option::Option::Some(input);
390 self
391 }
392 /// <p>For all database engines except Aurora, specifies the allocated storage size in gibibytes (GiB).</p>
393 pub fn set_allocated_storage(mut self, input: ::std::option::Option<i32>) -> Self {
394 self.allocated_storage = input;
395 self
396 }
397 /// <p>For all database engines except Aurora, specifies the allocated storage size in gibibytes (GiB).</p>
398 pub fn get_allocated_storage(&self) -> &::std::option::Option<i32> {
399 &self.allocated_storage
400 }
401 /// Appends an item to `availability_zones`.
402 ///
403 /// To override the contents of this collection use [`set_availability_zones`](Self::set_availability_zones).
404 ///
405 /// <p>A list of Availability Zones (AZs) where instances in the DB cluster can be created.</p>
406 pub fn availability_zones(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
407 let mut v = self.availability_zones.unwrap_or_default();
408 v.push(input.into());
409 self.availability_zones = ::std::option::Option::Some(v);
410 self
411 }
412 /// <p>A list of Availability Zones (AZs) where instances in the DB cluster can be created.</p>
413 pub fn set_availability_zones(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
414 self.availability_zones = input;
415 self
416 }
417 /// <p>A list of Availability Zones (AZs) where instances in the DB cluster can be created.</p>
418 pub fn get_availability_zones(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
419 &self.availability_zones
420 }
421 /// <p>The number of days for which automated backups are retained.</p>
422 pub fn backup_retention_period(mut self, input: i32) -> Self {
423 self.backup_retention_period = ::std::option::Option::Some(input);
424 self
425 }
426 /// <p>The number of days for which automated backups are retained.</p>
427 pub fn set_backup_retention_period(mut self, input: ::std::option::Option<i32>) -> Self {
428 self.backup_retention_period = input;
429 self
430 }
431 /// <p>The number of days for which automated backups are retained.</p>
432 pub fn get_backup_retention_period(&self) -> &::std::option::Option<i32> {
433 &self.backup_retention_period
434 }
435 /// <p>The name of the database.</p>
436 pub fn database_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
437 self.database_name = ::std::option::Option::Some(input.into());
438 self
439 }
440 /// <p>The name of the database.</p>
441 pub fn set_database_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
442 self.database_name = input;
443 self
444 }
445 /// <p>The name of the database.</p>
446 pub fn get_database_name(&self) -> &::std::option::Option<::std::string::String> {
447 &self.database_name
448 }
449 /// <p>The current status of this DB cluster.</p>
450 pub fn status(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
451 self.status = ::std::option::Option::Some(input.into());
452 self
453 }
454 /// <p>The current status of this DB cluster.</p>
455 pub fn set_status(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
456 self.status = input;
457 self
458 }
459 /// <p>The current status of this DB cluster.</p>
460 pub fn get_status(&self) -> &::std::option::Option<::std::string::String> {
461 &self.status
462 }
463 /// <p>The connection endpoint for the primary instance of the DB cluster.</p>
464 pub fn endpoint(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
465 self.endpoint = ::std::option::Option::Some(input.into());
466 self
467 }
468 /// <p>The connection endpoint for the primary instance of the DB cluster.</p>
469 pub fn set_endpoint(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
470 self.endpoint = input;
471 self
472 }
473 /// <p>The connection endpoint for the primary instance of the DB cluster.</p>
474 pub fn get_endpoint(&self) -> &::std::option::Option<::std::string::String> {
475 &self.endpoint
476 }
477 /// <p>The reader endpoint for the DB cluster.</p>
478 pub fn reader_endpoint(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
479 self.reader_endpoint = ::std::option::Option::Some(input.into());
480 self
481 }
482 /// <p>The reader endpoint for the DB cluster.</p>
483 pub fn set_reader_endpoint(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
484 self.reader_endpoint = input;
485 self
486 }
487 /// <p>The reader endpoint for the DB cluster.</p>
488 pub fn get_reader_endpoint(&self) -> &::std::option::Option<::std::string::String> {
489 &self.reader_endpoint
490 }
491 /// Appends an item to `custom_endpoints`.
492 ///
493 /// To override the contents of this collection use [`set_custom_endpoints`](Self::set_custom_endpoints).
494 ///
495 /// <p>A list of custom endpoints for the DB cluster.</p>
496 pub fn custom_endpoints(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
497 let mut v = self.custom_endpoints.unwrap_or_default();
498 v.push(input.into());
499 self.custom_endpoints = ::std::option::Option::Some(v);
500 self
501 }
502 /// <p>A list of custom endpoints for the DB cluster.</p>
503 pub fn set_custom_endpoints(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
504 self.custom_endpoints = input;
505 self
506 }
507 /// <p>A list of custom endpoints for the DB cluster.</p>
508 pub fn get_custom_endpoints(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
509 &self.custom_endpoints
510 }
511 /// <p>Whether the DB cluster has instances in multiple Availability Zones.</p>
512 pub fn multi_az(mut self, input: bool) -> Self {
513 self.multi_az = ::std::option::Option::Some(input);
514 self
515 }
516 /// <p>Whether the DB cluster has instances in multiple Availability Zones.</p>
517 pub fn set_multi_az(mut self, input: ::std::option::Option<bool>) -> Self {
518 self.multi_az = input;
519 self
520 }
521 /// <p>Whether the DB cluster has instances in multiple Availability Zones.</p>
522 pub fn get_multi_az(&self) -> &::std::option::Option<bool> {
523 &self.multi_az
524 }
525 /// <p>The name of the database engine to use for this DB cluster. Valid values are as follows:</p>
526 /// <ul>
527 /// <li>
528 /// <p><code>aurora</code></p></li>
529 /// <li>
530 /// <p><code>aurora-mysql</code></p></li>
531 /// <li>
532 /// <p><code>aurora-postgresql</code></p></li>
533 /// </ul>
534 pub fn engine(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
535 self.engine = ::std::option::Option::Some(input.into());
536 self
537 }
538 /// <p>The name of the database engine to use for this DB cluster. Valid values are as follows:</p>
539 /// <ul>
540 /// <li>
541 /// <p><code>aurora</code></p></li>
542 /// <li>
543 /// <p><code>aurora-mysql</code></p></li>
544 /// <li>
545 /// <p><code>aurora-postgresql</code></p></li>
546 /// </ul>
547 pub fn set_engine(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
548 self.engine = input;
549 self
550 }
551 /// <p>The name of the database engine to use for this DB cluster. Valid values are as follows:</p>
552 /// <ul>
553 /// <li>
554 /// <p><code>aurora</code></p></li>
555 /// <li>
556 /// <p><code>aurora-mysql</code></p></li>
557 /// <li>
558 /// <p><code>aurora-postgresql</code></p></li>
559 /// </ul>
560 pub fn get_engine(&self) -> &::std::option::Option<::std::string::String> {
561 &self.engine
562 }
563 /// <p>The version number of the database engine to use.</p>
564 pub fn engine_version(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
565 self.engine_version = ::std::option::Option::Some(input.into());
566 self
567 }
568 /// <p>The version number of the database engine to use.</p>
569 pub fn set_engine_version(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
570 self.engine_version = input;
571 self
572 }
573 /// <p>The version number of the database engine to use.</p>
574 pub fn get_engine_version(&self) -> &::std::option::Option<::std::string::String> {
575 &self.engine_version
576 }
577 /// <p>The port number on which the DB instances in the DB cluster accept connections.</p>
578 pub fn port(mut self, input: i32) -> Self {
579 self.port = ::std::option::Option::Some(input);
580 self
581 }
582 /// <p>The port number on which the DB instances in the DB cluster accept connections.</p>
583 pub fn set_port(mut self, input: ::std::option::Option<i32>) -> Self {
584 self.port = input;
585 self
586 }
587 /// <p>The port number on which the DB instances in the DB cluster accept connections.</p>
588 pub fn get_port(&self) -> &::std::option::Option<i32> {
589 &self.port
590 }
591 /// <p>The name of the master user for the DB cluster.</p>
592 pub fn master_username(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
593 self.master_username = ::std::option::Option::Some(input.into());
594 self
595 }
596 /// <p>The name of the master user for the DB cluster.</p>
597 pub fn set_master_username(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
598 self.master_username = input;
599 self
600 }
601 /// <p>The name of the master user for the DB cluster.</p>
602 pub fn get_master_username(&self) -> &::std::option::Option<::std::string::String> {
603 &self.master_username
604 }
605 /// <p>The range of time each day when automated backups are created, if automated backups are enabled.</p>
606 /// <p>Uses the format <code>HH:MM-HH:MM</code>. For example, <code>04:52-05:22</code>.</p>
607 pub fn preferred_backup_window(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
608 self.preferred_backup_window = ::std::option::Option::Some(input.into());
609 self
610 }
611 /// <p>The range of time each day when automated backups are created, if automated backups are enabled.</p>
612 /// <p>Uses the format <code>HH:MM-HH:MM</code>. For example, <code>04:52-05:22</code>.</p>
613 pub fn set_preferred_backup_window(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
614 self.preferred_backup_window = input;
615 self
616 }
617 /// <p>The range of time each day when automated backups are created, if automated backups are enabled.</p>
618 /// <p>Uses the format <code>HH:MM-HH:MM</code>. For example, <code>04:52-05:22</code>.</p>
619 pub fn get_preferred_backup_window(&self) -> &::std::option::Option<::std::string::String> {
620 &self.preferred_backup_window
621 }
622 /// <p>The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).</p>
623 /// <p>Uses the format <code><day>
624 /// :HH:MM-
625 /// <day>
626 /// :HH:MM
627 /// </day>
628 /// </day></code>.</p>
629 /// <p>For the day values, use <code>mon</code>|<code>tue</code>|<code>wed</code>|<code>thu</code>|<code>fri</code>|<code>sat</code>|<code>sun</code>.</p>
630 /// <p>For example, <code>sun:09:32-sun:10:02</code>.</p>
631 pub fn preferred_maintenance_window(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
632 self.preferred_maintenance_window = ::std::option::Option::Some(input.into());
633 self
634 }
635 /// <p>The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).</p>
636 /// <p>Uses the format <code><day>
637 /// :HH:MM-
638 /// <day>
639 /// :HH:MM
640 /// </day>
641 /// </day></code>.</p>
642 /// <p>For the day values, use <code>mon</code>|<code>tue</code>|<code>wed</code>|<code>thu</code>|<code>fri</code>|<code>sat</code>|<code>sun</code>.</p>
643 /// <p>For example, <code>sun:09:32-sun:10:02</code>.</p>
644 pub fn set_preferred_maintenance_window(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
645 self.preferred_maintenance_window = input;
646 self
647 }
648 /// <p>The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).</p>
649 /// <p>Uses the format <code><day>
650 /// :HH:MM-
651 /// <day>
652 /// :HH:MM
653 /// </day>
654 /// </day></code>.</p>
655 /// <p>For the day values, use <code>mon</code>|<code>tue</code>|<code>wed</code>|<code>thu</code>|<code>fri</code>|<code>sat</code>|<code>sun</code>.</p>
656 /// <p>For example, <code>sun:09:32-sun:10:02</code>.</p>
657 pub fn get_preferred_maintenance_window(&self) -> &::std::option::Option<::std::string::String> {
658 &self.preferred_maintenance_window
659 }
660 /// Appends an item to `read_replica_identifiers`.
661 ///
662 /// To override the contents of this collection use [`set_read_replica_identifiers`](Self::set_read_replica_identifiers).
663 ///
664 /// <p>The identifiers of the read replicas that are associated with this DB cluster.</p>
665 pub fn read_replica_identifiers(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
666 let mut v = self.read_replica_identifiers.unwrap_or_default();
667 v.push(input.into());
668 self.read_replica_identifiers = ::std::option::Option::Some(v);
669 self
670 }
671 /// <p>The identifiers of the read replicas that are associated with this DB cluster.</p>
672 pub fn set_read_replica_identifiers(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
673 self.read_replica_identifiers = input;
674 self
675 }
676 /// <p>The identifiers of the read replicas that are associated with this DB cluster.</p>
677 pub fn get_read_replica_identifiers(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
678 &self.read_replica_identifiers
679 }
680 /// Appends an item to `vpc_security_groups`.
681 ///
682 /// To override the contents of this collection use [`set_vpc_security_groups`](Self::set_vpc_security_groups).
683 ///
684 /// <p>A list of VPC security groups that the DB cluster belongs to.</p>
685 pub fn vpc_security_groups(mut self, input: crate::types::AwsRdsDbInstanceVpcSecurityGroup) -> Self {
686 let mut v = self.vpc_security_groups.unwrap_or_default();
687 v.push(input);
688 self.vpc_security_groups = ::std::option::Option::Some(v);
689 self
690 }
691 /// <p>A list of VPC security groups that the DB cluster belongs to.</p>
692 pub fn set_vpc_security_groups(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbInstanceVpcSecurityGroup>>) -> Self {
693 self.vpc_security_groups = input;
694 self
695 }
696 /// <p>A list of VPC security groups that the DB cluster belongs to.</p>
697 pub fn get_vpc_security_groups(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbInstanceVpcSecurityGroup>> {
698 &self.vpc_security_groups
699 }
700 /// <p>Specifies the identifier that Amazon Route 53 assigns when you create a hosted zone.</p>
701 pub fn hosted_zone_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
702 self.hosted_zone_id = ::std::option::Option::Some(input.into());
703 self
704 }
705 /// <p>Specifies the identifier that Amazon Route 53 assigns when you create a hosted zone.</p>
706 pub fn set_hosted_zone_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
707 self.hosted_zone_id = input;
708 self
709 }
710 /// <p>Specifies the identifier that Amazon Route 53 assigns when you create a hosted zone.</p>
711 pub fn get_hosted_zone_id(&self) -> &::std::option::Option<::std::string::String> {
712 &self.hosted_zone_id
713 }
714 /// <p>Whether the DB cluster is encrypted.</p>
715 pub fn storage_encrypted(mut self, input: bool) -> Self {
716 self.storage_encrypted = ::std::option::Option::Some(input);
717 self
718 }
719 /// <p>Whether the DB cluster is encrypted.</p>
720 pub fn set_storage_encrypted(mut self, input: ::std::option::Option<bool>) -> Self {
721 self.storage_encrypted = input;
722 self
723 }
724 /// <p>Whether the DB cluster is encrypted.</p>
725 pub fn get_storage_encrypted(&self) -> &::std::option::Option<bool> {
726 &self.storage_encrypted
727 }
728 /// <p>The ARN of the KMS master key that is used to encrypt the database instances in the DB cluster.</p>
729 pub fn kms_key_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
730 self.kms_key_id = ::std::option::Option::Some(input.into());
731 self
732 }
733 /// <p>The ARN of the KMS master key that is used to encrypt the database instances in the DB cluster.</p>
734 pub fn set_kms_key_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
735 self.kms_key_id = input;
736 self
737 }
738 /// <p>The ARN of the KMS master key that is used to encrypt the database instances in the DB cluster.</p>
739 pub fn get_kms_key_id(&self) -> &::std::option::Option<::std::string::String> {
740 &self.kms_key_id
741 }
742 /// <p>The identifier of the DB cluster. The identifier must be unique within each Amazon Web Services Region and is immutable.</p>
743 pub fn db_cluster_resource_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
744 self.db_cluster_resource_id = ::std::option::Option::Some(input.into());
745 self
746 }
747 /// <p>The identifier of the DB cluster. The identifier must be unique within each Amazon Web Services Region and is immutable.</p>
748 pub fn set_db_cluster_resource_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
749 self.db_cluster_resource_id = input;
750 self
751 }
752 /// <p>The identifier of the DB cluster. The identifier must be unique within each Amazon Web Services Region and is immutable.</p>
753 pub fn get_db_cluster_resource_id(&self) -> &::std::option::Option<::std::string::String> {
754 &self.db_cluster_resource_id
755 }
756 /// Appends an item to `associated_roles`.
757 ///
758 /// To override the contents of this collection use [`set_associated_roles`](Self::set_associated_roles).
759 ///
760 /// <p>A list of the IAM roles that are associated with the DB cluster.</p>
761 pub fn associated_roles(mut self, input: crate::types::AwsRdsDbClusterAssociatedRole) -> Self {
762 let mut v = self.associated_roles.unwrap_or_default();
763 v.push(input);
764 self.associated_roles = ::std::option::Option::Some(v);
765 self
766 }
767 /// <p>A list of the IAM roles that are associated with the DB cluster.</p>
768 pub fn set_associated_roles(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterAssociatedRole>>) -> Self {
769 self.associated_roles = input;
770 self
771 }
772 /// <p>A list of the IAM roles that are associated with the DB cluster.</p>
773 pub fn get_associated_roles(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterAssociatedRole>> {
774 &self.associated_roles
775 }
776 /// <p>Indicates when the DB cluster was created, in Universal Coordinated Time (UTC).</p>
777 /// <p>For more information about the validation and formatting of timestamp fields in Security Hub, see <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps">Timestamps</a>.</p>
778 pub fn cluster_create_time(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
779 self.cluster_create_time = ::std::option::Option::Some(input.into());
780 self
781 }
782 /// <p>Indicates when the DB cluster was created, in Universal Coordinated Time (UTC).</p>
783 /// <p>For more information about the validation and formatting of timestamp fields in Security Hub, see <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps">Timestamps</a>.</p>
784 pub fn set_cluster_create_time(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
785 self.cluster_create_time = input;
786 self
787 }
788 /// <p>Indicates when the DB cluster was created, in Universal Coordinated Time (UTC).</p>
789 /// <p>For more information about the validation and formatting of timestamp fields in Security Hub, see <a href="https://docs.aws.amazon.com/securityhub/1.0/APIReference/Welcome.html#timestamps">Timestamps</a>.</p>
790 pub fn get_cluster_create_time(&self) -> &::std::option::Option<::std::string::String> {
791 &self.cluster_create_time
792 }
793 /// Appends an item to `enabled_cloud_watch_logs_exports`.
794 ///
795 /// To override the contents of this collection use [`set_enabled_cloud_watch_logs_exports`](Self::set_enabled_cloud_watch_logs_exports).
796 ///
797 /// <p>A list of log types that this DB cluster is configured to export to CloudWatch Logs.</p>
798 pub fn enabled_cloud_watch_logs_exports(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
799 let mut v = self.enabled_cloud_watch_logs_exports.unwrap_or_default();
800 v.push(input.into());
801 self.enabled_cloud_watch_logs_exports = ::std::option::Option::Some(v);
802 self
803 }
804 /// <p>A list of log types that this DB cluster is configured to export to CloudWatch Logs.</p>
805 pub fn set_enabled_cloud_watch_logs_exports(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
806 self.enabled_cloud_watch_logs_exports = input;
807 self
808 }
809 /// <p>A list of log types that this DB cluster is configured to export to CloudWatch Logs.</p>
810 pub fn get_enabled_cloud_watch_logs_exports(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
811 &self.enabled_cloud_watch_logs_exports
812 }
813 /// <p>The database engine mode of the DB cluster.Valid values are as follows:</p>
814 /// <ul>
815 /// <li>
816 /// <p><code>global</code></p></li>
817 /// <li>
818 /// <p><code>multimaster</code></p></li>
819 /// <li>
820 /// <p><code>parallelquery</code></p></li>
821 /// <li>
822 /// <p><code>provisioned</code></p></li>
823 /// <li>
824 /// <p><code>serverless</code></p></li>
825 /// </ul>
826 pub fn engine_mode(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
827 self.engine_mode = ::std::option::Option::Some(input.into());
828 self
829 }
830 /// <p>The database engine mode of the DB cluster.Valid values are as follows:</p>
831 /// <ul>
832 /// <li>
833 /// <p><code>global</code></p></li>
834 /// <li>
835 /// <p><code>multimaster</code></p></li>
836 /// <li>
837 /// <p><code>parallelquery</code></p></li>
838 /// <li>
839 /// <p><code>provisioned</code></p></li>
840 /// <li>
841 /// <p><code>serverless</code></p></li>
842 /// </ul>
843 pub fn set_engine_mode(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
844 self.engine_mode = input;
845 self
846 }
847 /// <p>The database engine mode of the DB cluster.Valid values are as follows:</p>
848 /// <ul>
849 /// <li>
850 /// <p><code>global</code></p></li>
851 /// <li>
852 /// <p><code>multimaster</code></p></li>
853 /// <li>
854 /// <p><code>parallelquery</code></p></li>
855 /// <li>
856 /// <p><code>provisioned</code></p></li>
857 /// <li>
858 /// <p><code>serverless</code></p></li>
859 /// </ul>
860 pub fn get_engine_mode(&self) -> &::std::option::Option<::std::string::String> {
861 &self.engine_mode
862 }
863 /// <p>Whether the DB cluster has deletion protection enabled.</p>
864 pub fn deletion_protection(mut self, input: bool) -> Self {
865 self.deletion_protection = ::std::option::Option::Some(input);
866 self
867 }
868 /// <p>Whether the DB cluster has deletion protection enabled.</p>
869 pub fn set_deletion_protection(mut self, input: ::std::option::Option<bool>) -> Self {
870 self.deletion_protection = input;
871 self
872 }
873 /// <p>Whether the DB cluster has deletion protection enabled.</p>
874 pub fn get_deletion_protection(&self) -> &::std::option::Option<bool> {
875 &self.deletion_protection
876 }
877 /// <p>Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled.</p>
878 pub fn http_endpoint_enabled(mut self, input: bool) -> Self {
879 self.http_endpoint_enabled = ::std::option::Option::Some(input);
880 self
881 }
882 /// <p>Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled.</p>
883 pub fn set_http_endpoint_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
884 self.http_endpoint_enabled = input;
885 self
886 }
887 /// <p>Whether the HTTP endpoint for an Aurora Serverless DB cluster is enabled.</p>
888 pub fn get_http_endpoint_enabled(&self) -> &::std::option::Option<bool> {
889 &self.http_endpoint_enabled
890 }
891 /// <p>The status of the database activity stream. Valid values are as follows:</p>
892 /// <ul>
893 /// <li>
894 /// <p><code>started</code></p></li>
895 /// <li>
896 /// <p><code>starting</code></p></li>
897 /// <li>
898 /// <p><code>stopped</code></p></li>
899 /// <li>
900 /// <p><code>stopping</code></p></li>
901 /// </ul>
902 pub fn activity_stream_status(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
903 self.activity_stream_status = ::std::option::Option::Some(input.into());
904 self
905 }
906 /// <p>The status of the database activity stream. Valid values are as follows:</p>
907 /// <ul>
908 /// <li>
909 /// <p><code>started</code></p></li>
910 /// <li>
911 /// <p><code>starting</code></p></li>
912 /// <li>
913 /// <p><code>stopped</code></p></li>
914 /// <li>
915 /// <p><code>stopping</code></p></li>
916 /// </ul>
917 pub fn set_activity_stream_status(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
918 self.activity_stream_status = input;
919 self
920 }
921 /// <p>The status of the database activity stream. Valid values are as follows:</p>
922 /// <ul>
923 /// <li>
924 /// <p><code>started</code></p></li>
925 /// <li>
926 /// <p><code>starting</code></p></li>
927 /// <li>
928 /// <p><code>stopped</code></p></li>
929 /// <li>
930 /// <p><code>stopping</code></p></li>
931 /// </ul>
932 pub fn get_activity_stream_status(&self) -> &::std::option::Option<::std::string::String> {
933 &self.activity_stream_status
934 }
935 /// <p>Whether tags are copied from the DB cluster to snapshots of the DB cluster.</p>
936 pub fn copy_tags_to_snapshot(mut self, input: bool) -> Self {
937 self.copy_tags_to_snapshot = ::std::option::Option::Some(input);
938 self
939 }
940 /// <p>Whether tags are copied from the DB cluster to snapshots of the DB cluster.</p>
941 pub fn set_copy_tags_to_snapshot(mut self, input: ::std::option::Option<bool>) -> Self {
942 self.copy_tags_to_snapshot = input;
943 self
944 }
945 /// <p>Whether tags are copied from the DB cluster to snapshots of the DB cluster.</p>
946 pub fn get_copy_tags_to_snapshot(&self) -> &::std::option::Option<bool> {
947 &self.copy_tags_to_snapshot
948 }
949 /// <p>Whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.</p>
950 pub fn cross_account_clone(mut self, input: bool) -> Self {
951 self.cross_account_clone = ::std::option::Option::Some(input);
952 self
953 }
954 /// <p>Whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.</p>
955 pub fn set_cross_account_clone(mut self, input: ::std::option::Option<bool>) -> Self {
956 self.cross_account_clone = input;
957 self
958 }
959 /// <p>Whether the DB cluster is a clone of a DB cluster owned by a different Amazon Web Services account.</p>
960 pub fn get_cross_account_clone(&self) -> &::std::option::Option<bool> {
961 &self.cross_account_clone
962 }
963 /// Appends an item to `domain_memberships`.
964 ///
965 /// To override the contents of this collection use [`set_domain_memberships`](Self::set_domain_memberships).
966 ///
967 /// <p>The Active Directory domain membership records that are associated with the DB cluster.</p>
968 pub fn domain_memberships(mut self, input: crate::types::AwsRdsDbDomainMembership) -> Self {
969 let mut v = self.domain_memberships.unwrap_or_default();
970 v.push(input);
971 self.domain_memberships = ::std::option::Option::Some(v);
972 self
973 }
974 /// <p>The Active Directory domain membership records that are associated with the DB cluster.</p>
975 pub fn set_domain_memberships(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbDomainMembership>>) -> Self {
976 self.domain_memberships = input;
977 self
978 }
979 /// <p>The Active Directory domain membership records that are associated with the DB cluster.</p>
980 pub fn get_domain_memberships(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbDomainMembership>> {
981 &self.domain_memberships
982 }
983 /// <p>The name of the DB cluster parameter group for the DB cluster.</p>
984 pub fn db_cluster_parameter_group(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
985 self.db_cluster_parameter_group = ::std::option::Option::Some(input.into());
986 self
987 }
988 /// <p>The name of the DB cluster parameter group for the DB cluster.</p>
989 pub fn set_db_cluster_parameter_group(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
990 self.db_cluster_parameter_group = input;
991 self
992 }
993 /// <p>The name of the DB cluster parameter group for the DB cluster.</p>
994 pub fn get_db_cluster_parameter_group(&self) -> &::std::option::Option<::std::string::String> {
995 &self.db_cluster_parameter_group
996 }
997 /// <p>The subnet group that is associated with the DB cluster, including the name, description, and subnets in the subnet group.</p>
998 pub fn db_subnet_group(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
999 self.db_subnet_group = ::std::option::Option::Some(input.into());
1000 self
1001 }
1002 /// <p>The subnet group that is associated with the DB cluster, including the name, description, and subnets in the subnet group.</p>
1003 pub fn set_db_subnet_group(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
1004 self.db_subnet_group = input;
1005 self
1006 }
1007 /// <p>The subnet group that is associated with the DB cluster, including the name, description, and subnets in the subnet group.</p>
1008 pub fn get_db_subnet_group(&self) -> &::std::option::Option<::std::string::String> {
1009 &self.db_subnet_group
1010 }
1011 /// Appends an item to `db_cluster_option_group_memberships`.
1012 ///
1013 /// To override the contents of this collection use [`set_db_cluster_option_group_memberships`](Self::set_db_cluster_option_group_memberships).
1014 ///
1015 /// <p>The list of option group memberships for this DB cluster.</p>
1016 pub fn db_cluster_option_group_memberships(mut self, input: crate::types::AwsRdsDbClusterOptionGroupMembership) -> Self {
1017 let mut v = self.db_cluster_option_group_memberships.unwrap_or_default();
1018 v.push(input);
1019 self.db_cluster_option_group_memberships = ::std::option::Option::Some(v);
1020 self
1021 }
1022 /// <p>The list of option group memberships for this DB cluster.</p>
1023 pub fn set_db_cluster_option_group_memberships(
1024 mut self,
1025 input: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterOptionGroupMembership>>,
1026 ) -> Self {
1027 self.db_cluster_option_group_memberships = input;
1028 self
1029 }
1030 /// <p>The list of option group memberships for this DB cluster.</p>
1031 pub fn get_db_cluster_option_group_memberships(
1032 &self,
1033 ) -> &::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterOptionGroupMembership>> {
1034 &self.db_cluster_option_group_memberships
1035 }
1036 /// <p>The DB cluster identifier that the user assigned to the cluster. This identifier is the unique key that identifies a DB cluster.</p>
1037 pub fn db_cluster_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
1038 self.db_cluster_identifier = ::std::option::Option::Some(input.into());
1039 self
1040 }
1041 /// <p>The DB cluster identifier that the user assigned to the cluster. This identifier is the unique key that identifies a DB cluster.</p>
1042 pub fn set_db_cluster_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
1043 self.db_cluster_identifier = input;
1044 self
1045 }
1046 /// <p>The DB cluster identifier that the user assigned to the cluster. This identifier is the unique key that identifies a DB cluster.</p>
1047 pub fn get_db_cluster_identifier(&self) -> &::std::option::Option<::std::string::String> {
1048 &self.db_cluster_identifier
1049 }
1050 /// Appends an item to `db_cluster_members`.
1051 ///
1052 /// To override the contents of this collection use [`set_db_cluster_members`](Self::set_db_cluster_members).
1053 ///
1054 /// <p>The list of instances that make up the DB cluster.</p>
1055 pub fn db_cluster_members(mut self, input: crate::types::AwsRdsDbClusterMember) -> Self {
1056 let mut v = self.db_cluster_members.unwrap_or_default();
1057 v.push(input);
1058 self.db_cluster_members = ::std::option::Option::Some(v);
1059 self
1060 }
1061 /// <p>The list of instances that make up the DB cluster.</p>
1062 pub fn set_db_cluster_members(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterMember>>) -> Self {
1063 self.db_cluster_members = input;
1064 self
1065 }
1066 /// <p>The list of instances that make up the DB cluster.</p>
1067 pub fn get_db_cluster_members(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::AwsRdsDbClusterMember>> {
1068 &self.db_cluster_members
1069 }
1070 /// <p>Whether the mapping of IAM accounts to database accounts is enabled.</p>
1071 pub fn iam_database_authentication_enabled(mut self, input: bool) -> Self {
1072 self.iam_database_authentication_enabled = ::std::option::Option::Some(input);
1073 self
1074 }
1075 /// <p>Whether the mapping of IAM accounts to database accounts is enabled.</p>
1076 pub fn set_iam_database_authentication_enabled(mut self, input: ::std::option::Option<bool>) -> Self {
1077 self.iam_database_authentication_enabled = input;
1078 self
1079 }
1080 /// <p>Whether the mapping of IAM accounts to database accounts is enabled.</p>
1081 pub fn get_iam_database_authentication_enabled(&self) -> &::std::option::Option<bool> {
1082 &self.iam_database_authentication_enabled
1083 }
1084 /// <p>Indicates if minor version upgrades are automatically applied to the cluster.</p>
1085 pub fn auto_minor_version_upgrade(mut self, input: bool) -> Self {
1086 self.auto_minor_version_upgrade = ::std::option::Option::Some(input);
1087 self
1088 }
1089 /// <p>Indicates if minor version upgrades are automatically applied to the cluster.</p>
1090 pub fn set_auto_minor_version_upgrade(mut self, input: ::std::option::Option<bool>) -> Self {
1091 self.auto_minor_version_upgrade = input;
1092 self
1093 }
1094 /// <p>Indicates if minor version upgrades are automatically applied to the cluster.</p>
1095 pub fn get_auto_minor_version_upgrade(&self) -> &::std::option::Option<bool> {
1096 &self.auto_minor_version_upgrade
1097 }
1098 /// Consumes the builder and constructs a [`AwsRdsDbClusterDetails`](crate::types::AwsRdsDbClusterDetails).
1099 pub fn build(self) -> crate::types::AwsRdsDbClusterDetails {
1100 crate::types::AwsRdsDbClusterDetails {
1101 allocated_storage: self.allocated_storage,
1102 availability_zones: self.availability_zones,
1103 backup_retention_period: self.backup_retention_period,
1104 database_name: self.database_name,
1105 status: self.status,
1106 endpoint: self.endpoint,
1107 reader_endpoint: self.reader_endpoint,
1108 custom_endpoints: self.custom_endpoints,
1109 multi_az: self.multi_az,
1110 engine: self.engine,
1111 engine_version: self.engine_version,
1112 port: self.port,
1113 master_username: self.master_username,
1114 preferred_backup_window: self.preferred_backup_window,
1115 preferred_maintenance_window: self.preferred_maintenance_window,
1116 read_replica_identifiers: self.read_replica_identifiers,
1117 vpc_security_groups: self.vpc_security_groups,
1118 hosted_zone_id: self.hosted_zone_id,
1119 storage_encrypted: self.storage_encrypted,
1120 kms_key_id: self.kms_key_id,
1121 db_cluster_resource_id: self.db_cluster_resource_id,
1122 associated_roles: self.associated_roles,
1123 cluster_create_time: self.cluster_create_time,
1124 enabled_cloud_watch_logs_exports: self.enabled_cloud_watch_logs_exports,
1125 engine_mode: self.engine_mode,
1126 deletion_protection: self.deletion_protection,
1127 http_endpoint_enabled: self.http_endpoint_enabled,
1128 activity_stream_status: self.activity_stream_status,
1129 copy_tags_to_snapshot: self.copy_tags_to_snapshot,
1130 cross_account_clone: self.cross_account_clone,
1131 domain_memberships: self.domain_memberships,
1132 db_cluster_parameter_group: self.db_cluster_parameter_group,
1133 db_subnet_group: self.db_subnet_group,
1134 db_cluster_option_group_memberships: self.db_cluster_option_group_memberships,
1135 db_cluster_identifier: self.db_cluster_identifier,
1136 db_cluster_members: self.db_cluster_members,
1137 iam_database_authentication_enabled: self.iam_database_authentication_enabled,
1138 auto_minor_version_upgrade: self.auto_minor_version_upgrade,
1139 }
1140 }
1141}