1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
/// <p>The SSL certificate that can be used to encrypt connections between the endpoints and the replication instance.</p>
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
pub struct Certificate {
/// <p>A customer-assigned name for the certificate. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.</p>
pub certificate_identifier: ::std::option::Option<::std::string::String>,
/// <p>The date that the certificate was created.</p>
pub certificate_creation_date: ::std::option::Option<::aws_smithy_types::DateTime>,
/// <p>The contents of a <code>.pem</code> file, which contains an X.509 certificate.</p>
pub certificate_pem: ::std::option::Option<::std::string::String>,
/// <p>The location of an imported Oracle Wallet certificate for use with SSL. Example: <code>filebase64("${path.root}/rds-ca-2019-root.sso")</code></p>
pub certificate_wallet: ::std::option::Option<::aws_smithy_types::Blob>,
/// <p>The Amazon Resource Name (ARN) for the certificate.</p>
pub certificate_arn: ::std::option::Option<::std::string::String>,
/// <p>The owner of the certificate.</p>
pub certificate_owner: ::std::option::Option<::std::string::String>,
/// <p>The beginning date that the certificate is valid.</p>
pub valid_from_date: ::std::option::Option<::aws_smithy_types::DateTime>,
/// <p>The final date that the certificate is valid.</p>
pub valid_to_date: ::std::option::Option<::aws_smithy_types::DateTime>,
/// <p>The signing algorithm for the certificate.</p>
pub signing_algorithm: ::std::option::Option<::std::string::String>,
/// <p>The key length of the cryptographic algorithm being used.</p>
pub key_length: ::std::option::Option<i32>,
/// <p>An KMS key identifier that is used to encrypt the certificate.</p>
/// <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p>
/// <p>KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.</p>
pub kms_key_id: ::std::option::Option<::std::string::String>,
}
impl Certificate {
/// <p>A customer-assigned name for the certificate. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.</p>
pub fn certificate_identifier(&self) -> ::std::option::Option<&str> {
self.certificate_identifier.as_deref()
}
/// <p>The date that the certificate was created.</p>
pub fn certificate_creation_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.certificate_creation_date.as_ref()
}
/// <p>The contents of a <code>.pem</code> file, which contains an X.509 certificate.</p>
pub fn certificate_pem(&self) -> ::std::option::Option<&str> {
self.certificate_pem.as_deref()
}
/// <p>The location of an imported Oracle Wallet certificate for use with SSL. Example: <code>filebase64("${path.root}/rds-ca-2019-root.sso")</code></p>
pub fn certificate_wallet(&self) -> ::std::option::Option<&::aws_smithy_types::Blob> {
self.certificate_wallet.as_ref()
}
/// <p>The Amazon Resource Name (ARN) for the certificate.</p>
pub fn certificate_arn(&self) -> ::std::option::Option<&str> {
self.certificate_arn.as_deref()
}
/// <p>The owner of the certificate.</p>
pub fn certificate_owner(&self) -> ::std::option::Option<&str> {
self.certificate_owner.as_deref()
}
/// <p>The beginning date that the certificate is valid.</p>
pub fn valid_from_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.valid_from_date.as_ref()
}
/// <p>The final date that the certificate is valid.</p>
pub fn valid_to_date(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
self.valid_to_date.as_ref()
}
/// <p>The signing algorithm for the certificate.</p>
pub fn signing_algorithm(&self) -> ::std::option::Option<&str> {
self.signing_algorithm.as_deref()
}
/// <p>The key length of the cryptographic algorithm being used.</p>
pub fn key_length(&self) -> ::std::option::Option<i32> {
self.key_length
}
/// <p>An KMS key identifier that is used to encrypt the certificate.</p>
/// <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p>
/// <p>KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.</p>
pub fn kms_key_id(&self) -> ::std::option::Option<&str> {
self.kms_key_id.as_deref()
}
}
impl Certificate {
/// Creates a new builder-style object to manufacture [`Certificate`](crate::types::Certificate).
pub fn builder() -> crate::types::builders::CertificateBuilder {
crate::types::builders::CertificateBuilder::default()
}
}
/// A builder for [`Certificate`](crate::types::Certificate).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
#[non_exhaustive]
pub struct CertificateBuilder {
pub(crate) certificate_identifier: ::std::option::Option<::std::string::String>,
pub(crate) certificate_creation_date: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) certificate_pem: ::std::option::Option<::std::string::String>,
pub(crate) certificate_wallet: ::std::option::Option<::aws_smithy_types::Blob>,
pub(crate) certificate_arn: ::std::option::Option<::std::string::String>,
pub(crate) certificate_owner: ::std::option::Option<::std::string::String>,
pub(crate) valid_from_date: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) valid_to_date: ::std::option::Option<::aws_smithy_types::DateTime>,
pub(crate) signing_algorithm: ::std::option::Option<::std::string::String>,
pub(crate) key_length: ::std::option::Option<i32>,
pub(crate) kms_key_id: ::std::option::Option<::std::string::String>,
}
impl CertificateBuilder {
/// <p>A customer-assigned name for the certificate. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.</p>
pub fn certificate_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.certificate_identifier = ::std::option::Option::Some(input.into());
self
}
/// <p>A customer-assigned name for the certificate. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.</p>
pub fn set_certificate_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.certificate_identifier = input;
self
}
/// <p>A customer-assigned name for the certificate. Identifiers must begin with a letter and must contain only ASCII letters, digits, and hyphens. They can't end with a hyphen or contain two consecutive hyphens.</p>
pub fn get_certificate_identifier(&self) -> &::std::option::Option<::std::string::String> {
&self.certificate_identifier
}
/// <p>The date that the certificate was created.</p>
pub fn certificate_creation_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.certificate_creation_date = ::std::option::Option::Some(input);
self
}
/// <p>The date that the certificate was created.</p>
pub fn set_certificate_creation_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.certificate_creation_date = input;
self
}
/// <p>The date that the certificate was created.</p>
pub fn get_certificate_creation_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.certificate_creation_date
}
/// <p>The contents of a <code>.pem</code> file, which contains an X.509 certificate.</p>
pub fn certificate_pem(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.certificate_pem = ::std::option::Option::Some(input.into());
self
}
/// <p>The contents of a <code>.pem</code> file, which contains an X.509 certificate.</p>
pub fn set_certificate_pem(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.certificate_pem = input;
self
}
/// <p>The contents of a <code>.pem</code> file, which contains an X.509 certificate.</p>
pub fn get_certificate_pem(&self) -> &::std::option::Option<::std::string::String> {
&self.certificate_pem
}
/// <p>The location of an imported Oracle Wallet certificate for use with SSL. Example: <code>filebase64("${path.root}/rds-ca-2019-root.sso")</code></p>
pub fn certificate_wallet(mut self, input: ::aws_smithy_types::Blob) -> Self {
self.certificate_wallet = ::std::option::Option::Some(input);
self
}
/// <p>The location of an imported Oracle Wallet certificate for use with SSL. Example: <code>filebase64("${path.root}/rds-ca-2019-root.sso")</code></p>
pub fn set_certificate_wallet(mut self, input: ::std::option::Option<::aws_smithy_types::Blob>) -> Self {
self.certificate_wallet = input;
self
}
/// <p>The location of an imported Oracle Wallet certificate for use with SSL. Example: <code>filebase64("${path.root}/rds-ca-2019-root.sso")</code></p>
pub fn get_certificate_wallet(&self) -> &::std::option::Option<::aws_smithy_types::Blob> {
&self.certificate_wallet
}
/// <p>The Amazon Resource Name (ARN) for the certificate.</p>
pub fn certificate_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.certificate_arn = ::std::option::Option::Some(input.into());
self
}
/// <p>The Amazon Resource Name (ARN) for the certificate.</p>
pub fn set_certificate_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.certificate_arn = input;
self
}
/// <p>The Amazon Resource Name (ARN) for the certificate.</p>
pub fn get_certificate_arn(&self) -> &::std::option::Option<::std::string::String> {
&self.certificate_arn
}
/// <p>The owner of the certificate.</p>
pub fn certificate_owner(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.certificate_owner = ::std::option::Option::Some(input.into());
self
}
/// <p>The owner of the certificate.</p>
pub fn set_certificate_owner(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.certificate_owner = input;
self
}
/// <p>The owner of the certificate.</p>
pub fn get_certificate_owner(&self) -> &::std::option::Option<::std::string::String> {
&self.certificate_owner
}
/// <p>The beginning date that the certificate is valid.</p>
pub fn valid_from_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.valid_from_date = ::std::option::Option::Some(input);
self
}
/// <p>The beginning date that the certificate is valid.</p>
pub fn set_valid_from_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.valid_from_date = input;
self
}
/// <p>The beginning date that the certificate is valid.</p>
pub fn get_valid_from_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.valid_from_date
}
/// <p>The final date that the certificate is valid.</p>
pub fn valid_to_date(mut self, input: ::aws_smithy_types::DateTime) -> Self {
self.valid_to_date = ::std::option::Option::Some(input);
self
}
/// <p>The final date that the certificate is valid.</p>
pub fn set_valid_to_date(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
self.valid_to_date = input;
self
}
/// <p>The final date that the certificate is valid.</p>
pub fn get_valid_to_date(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
&self.valid_to_date
}
/// <p>The signing algorithm for the certificate.</p>
pub fn signing_algorithm(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.signing_algorithm = ::std::option::Option::Some(input.into());
self
}
/// <p>The signing algorithm for the certificate.</p>
pub fn set_signing_algorithm(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.signing_algorithm = input;
self
}
/// <p>The signing algorithm for the certificate.</p>
pub fn get_signing_algorithm(&self) -> &::std::option::Option<::std::string::String> {
&self.signing_algorithm
}
/// <p>The key length of the cryptographic algorithm being used.</p>
pub fn key_length(mut self, input: i32) -> Self {
self.key_length = ::std::option::Option::Some(input);
self
}
/// <p>The key length of the cryptographic algorithm being used.</p>
pub fn set_key_length(mut self, input: ::std::option::Option<i32>) -> Self {
self.key_length = input;
self
}
/// <p>The key length of the cryptographic algorithm being used.</p>
pub fn get_key_length(&self) -> &::std::option::Option<i32> {
&self.key_length
}
/// <p>An KMS key identifier that is used to encrypt the certificate.</p>
/// <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p>
/// <p>KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.</p>
pub fn kms_key_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
self.kms_key_id = ::std::option::Option::Some(input.into());
self
}
/// <p>An KMS key identifier that is used to encrypt the certificate.</p>
/// <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p>
/// <p>KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.</p>
pub fn set_kms_key_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
self.kms_key_id = input;
self
}
/// <p>An KMS key identifier that is used to encrypt the certificate.</p>
/// <p>If you don't specify a value for the <code>KmsKeyId</code> parameter, then DMS uses your default encryption key.</p>
/// <p>KMS creates the default encryption key for your Amazon Web Services account. Your Amazon Web Services account has a different default encryption key for each Amazon Web Services Region.</p>
pub fn get_kms_key_id(&self) -> &::std::option::Option<::std::string::String> {
&self.kms_key_id
}
/// Consumes the builder and constructs a [`Certificate`](crate::types::Certificate).
pub fn build(self) -> crate::types::Certificate {
crate::types::Certificate {
certificate_identifier: self.certificate_identifier,
certificate_creation_date: self.certificate_creation_date,
certificate_pem: self.certificate_pem,
certificate_wallet: self.certificate_wallet,
certificate_arn: self.certificate_arn,
certificate_owner: self.certificate_owner,
valid_from_date: self.valid_from_date,
valid_to_date: self.valid_to_date,
signing_algorithm: self.signing_algorithm,
key_length: self.key_length,
kms_key_id: self.kms_key_id,
}
}
}