aws_sdk_rds/operation/start_export_task/_start_export_task_output.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2
3/// <p>Contains the details of a snapshot or cluster export to Amazon S3.</p>
4/// <p>This data type is used as a response element in the <code>DescribeExportTasks</code> operation.</p>
5#[non_exhaustive]
6#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::fmt::Debug)]
7pub struct StartExportTaskOutput {
8 /// <p>A unique identifier for the snapshot or cluster export task. This ID isn't an identifier for the Amazon S3 bucket where the data is exported.</p>
9 pub export_task_identifier: ::std::option::Option<::std::string::String>,
10 /// <p>The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.</p>
11 pub source_arn: ::std::option::Option<::std::string::String>,
12 /// <p>The data exported from the snapshot or cluster.</p>
13 /// <p>Valid Values:</p>
14 /// <ul>
15 /// <li>
16 /// <p><code>database</code> - Export all the data from a specified database.</p></li>
17 /// <li>
18 /// <p><code>database.table</code> <i>table-name</i> - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.</p></li>
19 /// <li>
20 /// <p><code>database.schema</code> <i>schema-name</i> - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
21 /// <li>
22 /// <p><code>database.schema.table</code> <i>table-name</i> - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
23 /// </ul>
24 pub export_only: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
25 /// <p>The time when the snapshot was created.</p>
26 pub snapshot_time: ::std::option::Option<::aws_smithy_types::DateTime>,
27 /// <p>The time when the snapshot or cluster export task started.</p>
28 pub task_start_time: ::std::option::Option<::aws_smithy_types::DateTime>,
29 /// <p>The time when the snapshot or cluster export task ended.</p>
30 pub task_end_time: ::std::option::Option<::aws_smithy_types::DateTime>,
31 /// <p>The Amazon S3 bucket where the snapshot or cluster is exported to.</p>
32 pub s3_bucket: ::std::option::Option<::std::string::String>,
33 /// <p>The Amazon S3 bucket prefix that is the file name and path of the exported data.</p>
34 pub s3_prefix: ::std::option::Option<::std::string::String>,
35 /// <p>The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot or cluster.</p>
36 pub iam_role_arn: ::std::option::Option<::std::string::String>,
37 /// <p>The key identifier of the Amazon Web Services KMS key that is used to encrypt the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, key ID, alias ARN, or alias name. The IAM role used for the export must have encryption and decryption permissions to use this KMS key.</p>
38 pub kms_key_id: ::std::option::Option<::std::string::String>,
39 /// <p>The progress status of the export task. The status can be one of the following:</p>
40 /// <ul>
41 /// <li>
42 /// <p><code>CANCELED</code></p></li>
43 /// <li>
44 /// <p><code>CANCELING</code></p></li>
45 /// <li>
46 /// <p><code>COMPLETE</code></p></li>
47 /// <li>
48 /// <p><code>FAILED</code></p></li>
49 /// <li>
50 /// <p><code>IN_PROGRESS</code></p></li>
51 /// <li>
52 /// <p><code>STARTING</code></p></li>
53 /// </ul>
54 pub status: ::std::option::Option<::std::string::String>,
55 /// <p>The progress of the snapshot or cluster export task as a percentage.</p>
56 pub percent_progress: ::std::option::Option<i32>,
57 /// <p>The total amount of data exported, in gigabytes.</p>
58 pub total_extracted_data_in_gb: ::std::option::Option<i32>,
59 /// <p>The reason the export failed, if it failed.</p>
60 pub failure_cause: ::std::option::Option<::std::string::String>,
61 /// <p>A warning about the snapshot or cluster export task.</p>
62 pub warning_message: ::std::option::Option<::std::string::String>,
63 /// <p>The type of source for the export.</p>
64 pub source_type: ::std::option::Option<crate::types::ExportSourceType>,
65 _request_id: Option<String>,
66}
67impl StartExportTaskOutput {
68 /// <p>A unique identifier for the snapshot or cluster export task. This ID isn't an identifier for the Amazon S3 bucket where the data is exported.</p>
69 pub fn export_task_identifier(&self) -> ::std::option::Option<&str> {
70 self.export_task_identifier.as_deref()
71 }
72 /// <p>The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.</p>
73 pub fn source_arn(&self) -> ::std::option::Option<&str> {
74 self.source_arn.as_deref()
75 }
76 /// <p>The data exported from the snapshot or cluster.</p>
77 /// <p>Valid Values:</p>
78 /// <ul>
79 /// <li>
80 /// <p><code>database</code> - Export all the data from a specified database.</p></li>
81 /// <li>
82 /// <p><code>database.table</code> <i>table-name</i> - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.</p></li>
83 /// <li>
84 /// <p><code>database.schema</code> <i>schema-name</i> - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
85 /// <li>
86 /// <p><code>database.schema.table</code> <i>table-name</i> - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
87 /// </ul>
88 ///
89 /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.export_only.is_none()`.
90 pub fn export_only(&self) -> &[::std::string::String] {
91 self.export_only.as_deref().unwrap_or_default()
92 }
93 /// <p>The time when the snapshot was created.</p>
94 pub fn snapshot_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
95 self.snapshot_time.as_ref()
96 }
97 /// <p>The time when the snapshot or cluster export task started.</p>
98 pub fn task_start_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
99 self.task_start_time.as_ref()
100 }
101 /// <p>The time when the snapshot or cluster export task ended.</p>
102 pub fn task_end_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
103 self.task_end_time.as_ref()
104 }
105 /// <p>The Amazon S3 bucket where the snapshot or cluster is exported to.</p>
106 pub fn s3_bucket(&self) -> ::std::option::Option<&str> {
107 self.s3_bucket.as_deref()
108 }
109 /// <p>The Amazon S3 bucket prefix that is the file name and path of the exported data.</p>
110 pub fn s3_prefix(&self) -> ::std::option::Option<&str> {
111 self.s3_prefix.as_deref()
112 }
113 /// <p>The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot or cluster.</p>
114 pub fn iam_role_arn(&self) -> ::std::option::Option<&str> {
115 self.iam_role_arn.as_deref()
116 }
117 /// <p>The key identifier of the Amazon Web Services KMS key that is used to encrypt the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, key ID, alias ARN, or alias name. The IAM role used for the export must have encryption and decryption permissions to use this KMS key.</p>
118 pub fn kms_key_id(&self) -> ::std::option::Option<&str> {
119 self.kms_key_id.as_deref()
120 }
121 /// <p>The progress status of the export task. The status can be one of the following:</p>
122 /// <ul>
123 /// <li>
124 /// <p><code>CANCELED</code></p></li>
125 /// <li>
126 /// <p><code>CANCELING</code></p></li>
127 /// <li>
128 /// <p><code>COMPLETE</code></p></li>
129 /// <li>
130 /// <p><code>FAILED</code></p></li>
131 /// <li>
132 /// <p><code>IN_PROGRESS</code></p></li>
133 /// <li>
134 /// <p><code>STARTING</code></p></li>
135 /// </ul>
136 pub fn status(&self) -> ::std::option::Option<&str> {
137 self.status.as_deref()
138 }
139 /// <p>The progress of the snapshot or cluster export task as a percentage.</p>
140 pub fn percent_progress(&self) -> ::std::option::Option<i32> {
141 self.percent_progress
142 }
143 /// <p>The total amount of data exported, in gigabytes.</p>
144 pub fn total_extracted_data_in_gb(&self) -> ::std::option::Option<i32> {
145 self.total_extracted_data_in_gb
146 }
147 /// <p>The reason the export failed, if it failed.</p>
148 pub fn failure_cause(&self) -> ::std::option::Option<&str> {
149 self.failure_cause.as_deref()
150 }
151 /// <p>A warning about the snapshot or cluster export task.</p>
152 pub fn warning_message(&self) -> ::std::option::Option<&str> {
153 self.warning_message.as_deref()
154 }
155 /// <p>The type of source for the export.</p>
156 pub fn source_type(&self) -> ::std::option::Option<&crate::types::ExportSourceType> {
157 self.source_type.as_ref()
158 }
159}
160impl ::aws_types::request_id::RequestId for StartExportTaskOutput {
161 fn request_id(&self) -> Option<&str> {
162 self._request_id.as_deref()
163 }
164}
165impl StartExportTaskOutput {
166 /// Creates a new builder-style object to manufacture [`StartExportTaskOutput`](crate::operation::start_export_task::StartExportTaskOutput).
167 pub fn builder() -> crate::operation::start_export_task::builders::StartExportTaskOutputBuilder {
168 crate::operation::start_export_task::builders::StartExportTaskOutputBuilder::default()
169 }
170}
171
172/// A builder for [`StartExportTaskOutput`](crate::operation::start_export_task::StartExportTaskOutput).
173#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
174#[non_exhaustive]
175pub struct StartExportTaskOutputBuilder {
176 pub(crate) export_task_identifier: ::std::option::Option<::std::string::String>,
177 pub(crate) source_arn: ::std::option::Option<::std::string::String>,
178 pub(crate) export_only: ::std::option::Option<::std::vec::Vec<::std::string::String>>,
179 pub(crate) snapshot_time: ::std::option::Option<::aws_smithy_types::DateTime>,
180 pub(crate) task_start_time: ::std::option::Option<::aws_smithy_types::DateTime>,
181 pub(crate) task_end_time: ::std::option::Option<::aws_smithy_types::DateTime>,
182 pub(crate) s3_bucket: ::std::option::Option<::std::string::String>,
183 pub(crate) s3_prefix: ::std::option::Option<::std::string::String>,
184 pub(crate) iam_role_arn: ::std::option::Option<::std::string::String>,
185 pub(crate) kms_key_id: ::std::option::Option<::std::string::String>,
186 pub(crate) status: ::std::option::Option<::std::string::String>,
187 pub(crate) percent_progress: ::std::option::Option<i32>,
188 pub(crate) total_extracted_data_in_gb: ::std::option::Option<i32>,
189 pub(crate) failure_cause: ::std::option::Option<::std::string::String>,
190 pub(crate) warning_message: ::std::option::Option<::std::string::String>,
191 pub(crate) source_type: ::std::option::Option<crate::types::ExportSourceType>,
192 _request_id: Option<String>,
193}
194impl StartExportTaskOutputBuilder {
195 /// <p>A unique identifier for the snapshot or cluster export task. This ID isn't an identifier for the Amazon S3 bucket where the data is exported.</p>
196 pub fn export_task_identifier(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
197 self.export_task_identifier = ::std::option::Option::Some(input.into());
198 self
199 }
200 /// <p>A unique identifier for the snapshot or cluster export task. This ID isn't an identifier for the Amazon S3 bucket where the data is exported.</p>
201 pub fn set_export_task_identifier(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
202 self.export_task_identifier = input;
203 self
204 }
205 /// <p>A unique identifier for the snapshot or cluster export task. This ID isn't an identifier for the Amazon S3 bucket where the data is exported.</p>
206 pub fn get_export_task_identifier(&self) -> &::std::option::Option<::std::string::String> {
207 &self.export_task_identifier
208 }
209 /// <p>The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.</p>
210 pub fn source_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
211 self.source_arn = ::std::option::Option::Some(input.into());
212 self
213 }
214 /// <p>The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.</p>
215 pub fn set_source_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
216 self.source_arn = input;
217 self
218 }
219 /// <p>The Amazon Resource Name (ARN) of the snapshot or cluster exported to Amazon S3.</p>
220 pub fn get_source_arn(&self) -> &::std::option::Option<::std::string::String> {
221 &self.source_arn
222 }
223 /// Appends an item to `export_only`.
224 ///
225 /// To override the contents of this collection use [`set_export_only`](Self::set_export_only).
226 ///
227 /// <p>The data exported from the snapshot or cluster.</p>
228 /// <p>Valid Values:</p>
229 /// <ul>
230 /// <li>
231 /// <p><code>database</code> - Export all the data from a specified database.</p></li>
232 /// <li>
233 /// <p><code>database.table</code> <i>table-name</i> - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.</p></li>
234 /// <li>
235 /// <p><code>database.schema</code> <i>schema-name</i> - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
236 /// <li>
237 /// <p><code>database.schema.table</code> <i>table-name</i> - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
238 /// </ul>
239 pub fn export_only(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
240 let mut v = self.export_only.unwrap_or_default();
241 v.push(input.into());
242 self.export_only = ::std::option::Option::Some(v);
243 self
244 }
245 /// <p>The data exported from the snapshot or cluster.</p>
246 /// <p>Valid Values:</p>
247 /// <ul>
248 /// <li>
249 /// <p><code>database</code> - Export all the data from a specified database.</p></li>
250 /// <li>
251 /// <p><code>database.table</code> <i>table-name</i> - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.</p></li>
252 /// <li>
253 /// <p><code>database.schema</code> <i>schema-name</i> - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
254 /// <li>
255 /// <p><code>database.schema.table</code> <i>table-name</i> - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
256 /// </ul>
257 pub fn set_export_only(mut self, input: ::std::option::Option<::std::vec::Vec<::std::string::String>>) -> Self {
258 self.export_only = input;
259 self
260 }
261 /// <p>The data exported from the snapshot or cluster.</p>
262 /// <p>Valid Values:</p>
263 /// <ul>
264 /// <li>
265 /// <p><code>database</code> - Export all the data from a specified database.</p></li>
266 /// <li>
267 /// <p><code>database.table</code> <i>table-name</i> - Export a table of the snapshot or cluster. This format is valid only for RDS for MySQL, RDS for MariaDB, and Aurora MySQL.</p></li>
268 /// <li>
269 /// <p><code>database.schema</code> <i>schema-name</i> - Export a database schema of the snapshot or cluster. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
270 /// <li>
271 /// <p><code>database.schema.table</code> <i>table-name</i> - Export a table of the database schema. This format is valid only for RDS for PostgreSQL and Aurora PostgreSQL.</p></li>
272 /// </ul>
273 pub fn get_export_only(&self) -> &::std::option::Option<::std::vec::Vec<::std::string::String>> {
274 &self.export_only
275 }
276 /// <p>The time when the snapshot was created.</p>
277 pub fn snapshot_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
278 self.snapshot_time = ::std::option::Option::Some(input);
279 self
280 }
281 /// <p>The time when the snapshot was created.</p>
282 pub fn set_snapshot_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
283 self.snapshot_time = input;
284 self
285 }
286 /// <p>The time when the snapshot was created.</p>
287 pub fn get_snapshot_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
288 &self.snapshot_time
289 }
290 /// <p>The time when the snapshot or cluster export task started.</p>
291 pub fn task_start_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
292 self.task_start_time = ::std::option::Option::Some(input);
293 self
294 }
295 /// <p>The time when the snapshot or cluster export task started.</p>
296 pub fn set_task_start_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
297 self.task_start_time = input;
298 self
299 }
300 /// <p>The time when the snapshot or cluster export task started.</p>
301 pub fn get_task_start_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
302 &self.task_start_time
303 }
304 /// <p>The time when the snapshot or cluster export task ended.</p>
305 pub fn task_end_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
306 self.task_end_time = ::std::option::Option::Some(input);
307 self
308 }
309 /// <p>The time when the snapshot or cluster export task ended.</p>
310 pub fn set_task_end_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
311 self.task_end_time = input;
312 self
313 }
314 /// <p>The time when the snapshot or cluster export task ended.</p>
315 pub fn get_task_end_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
316 &self.task_end_time
317 }
318 /// <p>The Amazon S3 bucket where the snapshot or cluster is exported to.</p>
319 pub fn s3_bucket(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
320 self.s3_bucket = ::std::option::Option::Some(input.into());
321 self
322 }
323 /// <p>The Amazon S3 bucket where the snapshot or cluster is exported to.</p>
324 pub fn set_s3_bucket(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
325 self.s3_bucket = input;
326 self
327 }
328 /// <p>The Amazon S3 bucket where the snapshot or cluster is exported to.</p>
329 pub fn get_s3_bucket(&self) -> &::std::option::Option<::std::string::String> {
330 &self.s3_bucket
331 }
332 /// <p>The Amazon S3 bucket prefix that is the file name and path of the exported data.</p>
333 pub fn s3_prefix(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
334 self.s3_prefix = ::std::option::Option::Some(input.into());
335 self
336 }
337 /// <p>The Amazon S3 bucket prefix that is the file name and path of the exported data.</p>
338 pub fn set_s3_prefix(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
339 self.s3_prefix = input;
340 self
341 }
342 /// <p>The Amazon S3 bucket prefix that is the file name and path of the exported data.</p>
343 pub fn get_s3_prefix(&self) -> &::std::option::Option<::std::string::String> {
344 &self.s3_prefix
345 }
346 /// <p>The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot or cluster.</p>
347 pub fn iam_role_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
348 self.iam_role_arn = ::std::option::Option::Some(input.into());
349 self
350 }
351 /// <p>The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot or cluster.</p>
352 pub fn set_iam_role_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
353 self.iam_role_arn = input;
354 self
355 }
356 /// <p>The name of the IAM role that is used to write to Amazon S3 when exporting a snapshot or cluster.</p>
357 pub fn get_iam_role_arn(&self) -> &::std::option::Option<::std::string::String> {
358 &self.iam_role_arn
359 }
360 /// <p>The key identifier of the Amazon Web Services KMS key that is used to encrypt the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, key ID, alias ARN, or alias name. The IAM role used for the export must have encryption and decryption permissions to use this KMS key.</p>
361 pub fn kms_key_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
362 self.kms_key_id = ::std::option::Option::Some(input.into());
363 self
364 }
365 /// <p>The key identifier of the Amazon Web Services KMS key that is used to encrypt the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, key ID, alias ARN, or alias name. The IAM role used for the export must have encryption and decryption permissions to use this KMS key.</p>
366 pub fn set_kms_key_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
367 self.kms_key_id = input;
368 self
369 }
370 /// <p>The key identifier of the Amazon Web Services KMS key that is used to encrypt the data when it's exported to Amazon S3. The KMS key identifier is its key ARN, key ID, alias ARN, or alias name. The IAM role used for the export must have encryption and decryption permissions to use this KMS key.</p>
371 pub fn get_kms_key_id(&self) -> &::std::option::Option<::std::string::String> {
372 &self.kms_key_id
373 }
374 /// <p>The progress status of the export task. The status can be one of the following:</p>
375 /// <ul>
376 /// <li>
377 /// <p><code>CANCELED</code></p></li>
378 /// <li>
379 /// <p><code>CANCELING</code></p></li>
380 /// <li>
381 /// <p><code>COMPLETE</code></p></li>
382 /// <li>
383 /// <p><code>FAILED</code></p></li>
384 /// <li>
385 /// <p><code>IN_PROGRESS</code></p></li>
386 /// <li>
387 /// <p><code>STARTING</code></p></li>
388 /// </ul>
389 pub fn status(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
390 self.status = ::std::option::Option::Some(input.into());
391 self
392 }
393 /// <p>The progress status of the export task. The status can be one of the following:</p>
394 /// <ul>
395 /// <li>
396 /// <p><code>CANCELED</code></p></li>
397 /// <li>
398 /// <p><code>CANCELING</code></p></li>
399 /// <li>
400 /// <p><code>COMPLETE</code></p></li>
401 /// <li>
402 /// <p><code>FAILED</code></p></li>
403 /// <li>
404 /// <p><code>IN_PROGRESS</code></p></li>
405 /// <li>
406 /// <p><code>STARTING</code></p></li>
407 /// </ul>
408 pub fn set_status(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
409 self.status = input;
410 self
411 }
412 /// <p>The progress status of the export task. The status can be one of the following:</p>
413 /// <ul>
414 /// <li>
415 /// <p><code>CANCELED</code></p></li>
416 /// <li>
417 /// <p><code>CANCELING</code></p></li>
418 /// <li>
419 /// <p><code>COMPLETE</code></p></li>
420 /// <li>
421 /// <p><code>FAILED</code></p></li>
422 /// <li>
423 /// <p><code>IN_PROGRESS</code></p></li>
424 /// <li>
425 /// <p><code>STARTING</code></p></li>
426 /// </ul>
427 pub fn get_status(&self) -> &::std::option::Option<::std::string::String> {
428 &self.status
429 }
430 /// <p>The progress of the snapshot or cluster export task as a percentage.</p>
431 pub fn percent_progress(mut self, input: i32) -> Self {
432 self.percent_progress = ::std::option::Option::Some(input);
433 self
434 }
435 /// <p>The progress of the snapshot or cluster export task as a percentage.</p>
436 pub fn set_percent_progress(mut self, input: ::std::option::Option<i32>) -> Self {
437 self.percent_progress = input;
438 self
439 }
440 /// <p>The progress of the snapshot or cluster export task as a percentage.</p>
441 pub fn get_percent_progress(&self) -> &::std::option::Option<i32> {
442 &self.percent_progress
443 }
444 /// <p>The total amount of data exported, in gigabytes.</p>
445 pub fn total_extracted_data_in_gb(mut self, input: i32) -> Self {
446 self.total_extracted_data_in_gb = ::std::option::Option::Some(input);
447 self
448 }
449 /// <p>The total amount of data exported, in gigabytes.</p>
450 pub fn set_total_extracted_data_in_gb(mut self, input: ::std::option::Option<i32>) -> Self {
451 self.total_extracted_data_in_gb = input;
452 self
453 }
454 /// <p>The total amount of data exported, in gigabytes.</p>
455 pub fn get_total_extracted_data_in_gb(&self) -> &::std::option::Option<i32> {
456 &self.total_extracted_data_in_gb
457 }
458 /// <p>The reason the export failed, if it failed.</p>
459 pub fn failure_cause(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
460 self.failure_cause = ::std::option::Option::Some(input.into());
461 self
462 }
463 /// <p>The reason the export failed, if it failed.</p>
464 pub fn set_failure_cause(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
465 self.failure_cause = input;
466 self
467 }
468 /// <p>The reason the export failed, if it failed.</p>
469 pub fn get_failure_cause(&self) -> &::std::option::Option<::std::string::String> {
470 &self.failure_cause
471 }
472 /// <p>A warning about the snapshot or cluster export task.</p>
473 pub fn warning_message(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
474 self.warning_message = ::std::option::Option::Some(input.into());
475 self
476 }
477 /// <p>A warning about the snapshot or cluster export task.</p>
478 pub fn set_warning_message(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
479 self.warning_message = input;
480 self
481 }
482 /// <p>A warning about the snapshot or cluster export task.</p>
483 pub fn get_warning_message(&self) -> &::std::option::Option<::std::string::String> {
484 &self.warning_message
485 }
486 /// <p>The type of source for the export.</p>
487 pub fn source_type(mut self, input: crate::types::ExportSourceType) -> Self {
488 self.source_type = ::std::option::Option::Some(input);
489 self
490 }
491 /// <p>The type of source for the export.</p>
492 pub fn set_source_type(mut self, input: ::std::option::Option<crate::types::ExportSourceType>) -> Self {
493 self.source_type = input;
494 self
495 }
496 /// <p>The type of source for the export.</p>
497 pub fn get_source_type(&self) -> &::std::option::Option<crate::types::ExportSourceType> {
498 &self.source_type
499 }
500 pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
501 self._request_id = Some(request_id.into());
502 self
503 }
504
505 pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
506 self._request_id = request_id;
507 self
508 }
509 /// Consumes the builder and constructs a [`StartExportTaskOutput`](crate::operation::start_export_task::StartExportTaskOutput).
510 pub fn build(self) -> crate::operation::start_export_task::StartExportTaskOutput {
511 crate::operation::start_export_task::StartExportTaskOutput {
512 export_task_identifier: self.export_task_identifier,
513 source_arn: self.source_arn,
514 export_only: self.export_only,
515 snapshot_time: self.snapshot_time,
516 task_start_time: self.task_start_time,
517 task_end_time: self.task_end_time,
518 s3_bucket: self.s3_bucket,
519 s3_prefix: self.s3_prefix,
520 iam_role_arn: self.iam_role_arn,
521 kms_key_id: self.kms_key_id,
522 status: self.status,
523 percent_progress: self.percent_progress,
524 total_extracted_data_in_gb: self.total_extracted_data_in_gb,
525 failure_cause: self.failure_cause,
526 warning_message: self.warning_message,
527 source_type: self.source_type,
528 _request_id: self._request_id,
529 }
530 }
531}