aws_sdk_rds/types/
_rds_custom_cluster_configuration.rs1#[non_exhaustive]
5#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
6pub struct RdsCustomClusterConfiguration {
7 pub interconnect_subnet_id: ::std::option::Option<::std::string::String>,
9 pub transit_gateway_multicast_domain_id: ::std::option::Option<::std::string::String>,
11 pub replica_mode: ::std::option::Option<crate::types::ReplicaMode>,
13}
14impl RdsCustomClusterConfiguration {
15 pub fn interconnect_subnet_id(&self) -> ::std::option::Option<&str> {
17 self.interconnect_subnet_id.as_deref()
18 }
19 pub fn transit_gateway_multicast_domain_id(&self) -> ::std::option::Option<&str> {
21 self.transit_gateway_multicast_domain_id.as_deref()
22 }
23 pub fn replica_mode(&self) -> ::std::option::Option<&crate::types::ReplicaMode> {
25 self.replica_mode.as_ref()
26 }
27}
28impl RdsCustomClusterConfiguration {
29 pub fn builder() -> crate::types::builders::RdsCustomClusterConfigurationBuilder {
31 crate::types::builders::RdsCustomClusterConfigurationBuilder::default()
32 }
33}
34
35#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
37#[non_exhaustive]
38pub struct RdsCustomClusterConfigurationBuilder {
39 pub(crate) interconnect_subnet_id: ::std::option::Option<::std::string::String>,
40 pub(crate) transit_gateway_multicast_domain_id: ::std::option::Option<::std::string::String>,
41 pub(crate) replica_mode: ::std::option::Option<crate::types::ReplicaMode>,
42}
43impl RdsCustomClusterConfigurationBuilder {
44 pub fn interconnect_subnet_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
46 self.interconnect_subnet_id = ::std::option::Option::Some(input.into());
47 self
48 }
49 pub fn set_interconnect_subnet_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
51 self.interconnect_subnet_id = input;
52 self
53 }
54 pub fn get_interconnect_subnet_id(&self) -> &::std::option::Option<::std::string::String> {
56 &self.interconnect_subnet_id
57 }
58 pub fn transit_gateway_multicast_domain_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
60 self.transit_gateway_multicast_domain_id = ::std::option::Option::Some(input.into());
61 self
62 }
63 pub fn set_transit_gateway_multicast_domain_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
65 self.transit_gateway_multicast_domain_id = input;
66 self
67 }
68 pub fn get_transit_gateway_multicast_domain_id(&self) -> &::std::option::Option<::std::string::String> {
70 &self.transit_gateway_multicast_domain_id
71 }
72 pub fn replica_mode(mut self, input: crate::types::ReplicaMode) -> Self {
74 self.replica_mode = ::std::option::Option::Some(input);
75 self
76 }
77 pub fn set_replica_mode(mut self, input: ::std::option::Option<crate::types::ReplicaMode>) -> Self {
79 self.replica_mode = input;
80 self
81 }
82 pub fn get_replica_mode(&self) -> &::std::option::Option<crate::types::ReplicaMode> {
84 &self.replica_mode
85 }
86 pub fn build(self) -> crate::types::RdsCustomClusterConfiguration {
88 crate::types::RdsCustomClusterConfiguration {
89 interconnect_subnet_id: self.interconnect_subnet_id,
90 transit_gateway_multicast_domain_id: self.transit_gateway_multicast_domain_id,
91 replica_mode: self.replica_mode,
92 }
93 }
94}