Skip to main content

aws_sdk_datazone/operation/delete_data_source/
_delete_data_source_output.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2#[allow(missing_docs)] // documentation missing in model
3#[non_exhaustive]
4#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
5pub struct DeleteDataSourceOutput {
6    /// <p>The ID of the data source that is deleted.</p>
7    pub id: ::std::string::String,
8    /// <p>The status of this data source.</p>
9    pub status: ::std::option::Option<crate::types::DataSourceStatus>,
10    /// <p>The type of this data source.</p>
11    pub r#type: ::std::option::Option<::std::string::String>,
12    /// <p>The name of the data source that is deleted.</p>
13    pub name: ::std::string::String,
14    /// <p>The description of the data source that is deleted.</p>
15    pub description: ::std::option::Option<::std::string::String>,
16    /// <p>The ID of the Amazon DataZone domain in which the data source is deleted.</p>
17    pub domain_id: ::std::string::String,
18    /// <p>The ID of the project in which this data source exists and from which it's deleted.</p>
19    pub project_id: ::std::string::String,
20    /// <p>The ID of the environemnt associated with this data source.</p>
21    pub environment_id: ::std::option::Option<::std::string::String>,
22    /// <p>The ID of the connection that is deleted.</p>
23    pub connection_id: ::std::option::Option<::std::string::String>,
24    /// <p>The configuration of the data source that is deleted.</p>
25    pub configuration: ::std::option::Option<crate::types::DataSourceConfigurationOutput>,
26    /// <p>The enable setting of the data source that specifies whether the data source is enabled or disabled.</p>
27    pub enable_setting: ::std::option::Option<crate::types::EnableSetting>,
28    /// <p>Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.</p>
29    pub publish_on_import: ::std::option::Option<bool>,
30    /// <p>The asset data forms associated with this data source.</p>
31    pub asset_forms_output: ::std::option::Option<::std::vec::Vec<crate::types::FormOutput>>,
32    /// <p>The schedule of runs for this data source.</p>
33    pub schedule: ::std::option::Option<crate::types::ScheduleConfiguration>,
34    /// <p>The status of the last run of this data source.</p>
35    pub last_run_status: ::std::option::Option<crate::types::DataSourceRunStatus>,
36    /// <p>The timestamp of when the data source was last run.</p>
37    pub last_run_at: ::std::option::Option<::aws_smithy_types::DateTime>,
38    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
39    pub last_run_error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
40    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
41    pub error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
42    /// <p>The timestamp of when this data source was created.</p>
43    pub created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
44    /// <p>The timestamp of when this data source was updated.</p>
45    pub updated_at: ::std::option::Option<::aws_smithy_types::DateTime>,
46    /// <p>Specifies the status of the self-granting functionality.</p>
47    pub self_grant_status: ::std::option::Option<crate::types::SelfGrantStatusOutput>,
48    /// <p>Specifies that the granted permissions are retained in case of a self-subscribe functionality failure for a data source.</p>
49    pub retain_permissions_on_revoke_failure: ::std::option::Option<bool>,
50    _request_id: Option<String>,
51}
52impl DeleteDataSourceOutput {
53    /// <p>The ID of the data source that is deleted.</p>
54    pub fn id(&self) -> &str {
55        use std::ops::Deref;
56        self.id.deref()
57    }
58    /// <p>The status of this data source.</p>
59    pub fn status(&self) -> ::std::option::Option<&crate::types::DataSourceStatus> {
60        self.status.as_ref()
61    }
62    /// <p>The type of this data source.</p>
63    pub fn r#type(&self) -> ::std::option::Option<&str> {
64        self.r#type.as_deref()
65    }
66    /// <p>The name of the data source that is deleted.</p>
67    pub fn name(&self) -> &str {
68        use std::ops::Deref;
69        self.name.deref()
70    }
71    /// <p>The description of the data source that is deleted.</p>
72    pub fn description(&self) -> ::std::option::Option<&str> {
73        self.description.as_deref()
74    }
75    /// <p>The ID of the Amazon DataZone domain in which the data source is deleted.</p>
76    pub fn domain_id(&self) -> &str {
77        use std::ops::Deref;
78        self.domain_id.deref()
79    }
80    /// <p>The ID of the project in which this data source exists and from which it's deleted.</p>
81    pub fn project_id(&self) -> &str {
82        use std::ops::Deref;
83        self.project_id.deref()
84    }
85    /// <p>The ID of the environemnt associated with this data source.</p>
86    pub fn environment_id(&self) -> ::std::option::Option<&str> {
87        self.environment_id.as_deref()
88    }
89    /// <p>The ID of the connection that is deleted.</p>
90    pub fn connection_id(&self) -> ::std::option::Option<&str> {
91        self.connection_id.as_deref()
92    }
93    /// <p>The configuration of the data source that is deleted.</p>
94    pub fn configuration(&self) -> ::std::option::Option<&crate::types::DataSourceConfigurationOutput> {
95        self.configuration.as_ref()
96    }
97    /// <p>The enable setting of the data source that specifies whether the data source is enabled or disabled.</p>
98    pub fn enable_setting(&self) -> ::std::option::Option<&crate::types::EnableSetting> {
99        self.enable_setting.as_ref()
100    }
101    /// <p>Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.</p>
102    pub fn publish_on_import(&self) -> ::std::option::Option<bool> {
103        self.publish_on_import
104    }
105    /// <p>The asset data forms associated with this data source.</p>
106    ///
107    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.asset_forms_output.is_none()`.
108    pub fn asset_forms_output(&self) -> &[crate::types::FormOutput] {
109        self.asset_forms_output.as_deref().unwrap_or_default()
110    }
111    /// <p>The schedule of runs for this data source.</p>
112    pub fn schedule(&self) -> ::std::option::Option<&crate::types::ScheduleConfiguration> {
113        self.schedule.as_ref()
114    }
115    /// <p>The status of the last run of this data source.</p>
116    pub fn last_run_status(&self) -> ::std::option::Option<&crate::types::DataSourceRunStatus> {
117        self.last_run_status.as_ref()
118    }
119    /// <p>The timestamp of when the data source was last run.</p>
120    pub fn last_run_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
121        self.last_run_at.as_ref()
122    }
123    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
124    pub fn last_run_error_message(&self) -> ::std::option::Option<&crate::types::DataSourceErrorMessage> {
125        self.last_run_error_message.as_ref()
126    }
127    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
128    pub fn error_message(&self) -> ::std::option::Option<&crate::types::DataSourceErrorMessage> {
129        self.error_message.as_ref()
130    }
131    /// <p>The timestamp of when this data source was created.</p>
132    pub fn created_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
133        self.created_at.as_ref()
134    }
135    /// <p>The timestamp of when this data source was updated.</p>
136    pub fn updated_at(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
137        self.updated_at.as_ref()
138    }
139    /// <p>Specifies the status of the self-granting functionality.</p>
140    pub fn self_grant_status(&self) -> ::std::option::Option<&crate::types::SelfGrantStatusOutput> {
141        self.self_grant_status.as_ref()
142    }
143    /// <p>Specifies that the granted permissions are retained in case of a self-subscribe functionality failure for a data source.</p>
144    pub fn retain_permissions_on_revoke_failure(&self) -> ::std::option::Option<bool> {
145        self.retain_permissions_on_revoke_failure
146    }
147}
148impl ::std::fmt::Debug for DeleteDataSourceOutput {
149    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
150        let mut formatter = f.debug_struct("DeleteDataSourceOutput");
151        formatter.field("id", &self.id);
152        formatter.field("status", &self.status);
153        formatter.field("r#type", &self.r#type);
154        formatter.field("name", &"*** Sensitive Data Redacted ***");
155        formatter.field("description", &"*** Sensitive Data Redacted ***");
156        formatter.field("domain_id", &self.domain_id);
157        formatter.field("project_id", &self.project_id);
158        formatter.field("environment_id", &self.environment_id);
159        formatter.field("connection_id", &self.connection_id);
160        formatter.field("configuration", &self.configuration);
161        formatter.field("enable_setting", &self.enable_setting);
162        formatter.field("publish_on_import", &self.publish_on_import);
163        formatter.field("asset_forms_output", &self.asset_forms_output);
164        formatter.field("schedule", &"*** Sensitive Data Redacted ***");
165        formatter.field("last_run_status", &self.last_run_status);
166        formatter.field("last_run_at", &self.last_run_at);
167        formatter.field("last_run_error_message", &self.last_run_error_message);
168        formatter.field("error_message", &self.error_message);
169        formatter.field("created_at", &self.created_at);
170        formatter.field("updated_at", &self.updated_at);
171        formatter.field("self_grant_status", &self.self_grant_status);
172        formatter.field("retain_permissions_on_revoke_failure", &self.retain_permissions_on_revoke_failure);
173        formatter.field("_request_id", &self._request_id);
174        formatter.finish()
175    }
176}
177impl ::aws_types::request_id::RequestId for DeleteDataSourceOutput {
178    fn request_id(&self) -> Option<&str> {
179        self._request_id.as_deref()
180    }
181}
182impl DeleteDataSourceOutput {
183    /// Creates a new builder-style object to manufacture [`DeleteDataSourceOutput`](crate::operation::delete_data_source::DeleteDataSourceOutput).
184    pub fn builder() -> crate::operation::delete_data_source::builders::DeleteDataSourceOutputBuilder {
185        crate::operation::delete_data_source::builders::DeleteDataSourceOutputBuilder::default()
186    }
187}
188
189/// A builder for [`DeleteDataSourceOutput`](crate::operation::delete_data_source::DeleteDataSourceOutput).
190#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
191#[non_exhaustive]
192pub struct DeleteDataSourceOutputBuilder {
193    pub(crate) id: ::std::option::Option<::std::string::String>,
194    pub(crate) status: ::std::option::Option<crate::types::DataSourceStatus>,
195    pub(crate) r#type: ::std::option::Option<::std::string::String>,
196    pub(crate) name: ::std::option::Option<::std::string::String>,
197    pub(crate) description: ::std::option::Option<::std::string::String>,
198    pub(crate) domain_id: ::std::option::Option<::std::string::String>,
199    pub(crate) project_id: ::std::option::Option<::std::string::String>,
200    pub(crate) environment_id: ::std::option::Option<::std::string::String>,
201    pub(crate) connection_id: ::std::option::Option<::std::string::String>,
202    pub(crate) configuration: ::std::option::Option<crate::types::DataSourceConfigurationOutput>,
203    pub(crate) enable_setting: ::std::option::Option<crate::types::EnableSetting>,
204    pub(crate) publish_on_import: ::std::option::Option<bool>,
205    pub(crate) asset_forms_output: ::std::option::Option<::std::vec::Vec<crate::types::FormOutput>>,
206    pub(crate) schedule: ::std::option::Option<crate::types::ScheduleConfiguration>,
207    pub(crate) last_run_status: ::std::option::Option<crate::types::DataSourceRunStatus>,
208    pub(crate) last_run_at: ::std::option::Option<::aws_smithy_types::DateTime>,
209    pub(crate) last_run_error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
210    pub(crate) error_message: ::std::option::Option<crate::types::DataSourceErrorMessage>,
211    pub(crate) created_at: ::std::option::Option<::aws_smithy_types::DateTime>,
212    pub(crate) updated_at: ::std::option::Option<::aws_smithy_types::DateTime>,
213    pub(crate) self_grant_status: ::std::option::Option<crate::types::SelfGrantStatusOutput>,
214    pub(crate) retain_permissions_on_revoke_failure: ::std::option::Option<bool>,
215    _request_id: Option<String>,
216}
217impl DeleteDataSourceOutputBuilder {
218    /// <p>The ID of the data source that is deleted.</p>
219    /// This field is required.
220    pub fn id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
221        self.id = ::std::option::Option::Some(input.into());
222        self
223    }
224    /// <p>The ID of the data source that is deleted.</p>
225    pub fn set_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
226        self.id = input;
227        self
228    }
229    /// <p>The ID of the data source that is deleted.</p>
230    pub fn get_id(&self) -> &::std::option::Option<::std::string::String> {
231        &self.id
232    }
233    /// <p>The status of this data source.</p>
234    pub fn status(mut self, input: crate::types::DataSourceStatus) -> Self {
235        self.status = ::std::option::Option::Some(input);
236        self
237    }
238    /// <p>The status of this data source.</p>
239    pub fn set_status(mut self, input: ::std::option::Option<crate::types::DataSourceStatus>) -> Self {
240        self.status = input;
241        self
242    }
243    /// <p>The status of this data source.</p>
244    pub fn get_status(&self) -> &::std::option::Option<crate::types::DataSourceStatus> {
245        &self.status
246    }
247    /// <p>The type of this data source.</p>
248    pub fn r#type(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
249        self.r#type = ::std::option::Option::Some(input.into());
250        self
251    }
252    /// <p>The type of this data source.</p>
253    pub fn set_type(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
254        self.r#type = input;
255        self
256    }
257    /// <p>The type of this data source.</p>
258    pub fn get_type(&self) -> &::std::option::Option<::std::string::String> {
259        &self.r#type
260    }
261    /// <p>The name of the data source that is deleted.</p>
262    /// This field is required.
263    pub fn name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
264        self.name = ::std::option::Option::Some(input.into());
265        self
266    }
267    /// <p>The name of the data source that is deleted.</p>
268    pub fn set_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
269        self.name = input;
270        self
271    }
272    /// <p>The name of the data source that is deleted.</p>
273    pub fn get_name(&self) -> &::std::option::Option<::std::string::String> {
274        &self.name
275    }
276    /// <p>The description of the data source that is deleted.</p>
277    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
278        self.description = ::std::option::Option::Some(input.into());
279        self
280    }
281    /// <p>The description of the data source that is deleted.</p>
282    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
283        self.description = input;
284        self
285    }
286    /// <p>The description of the data source that is deleted.</p>
287    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
288        &self.description
289    }
290    /// <p>The ID of the Amazon DataZone domain in which the data source is deleted.</p>
291    /// This field is required.
292    pub fn domain_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
293        self.domain_id = ::std::option::Option::Some(input.into());
294        self
295    }
296    /// <p>The ID of the Amazon DataZone domain in which the data source is deleted.</p>
297    pub fn set_domain_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
298        self.domain_id = input;
299        self
300    }
301    /// <p>The ID of the Amazon DataZone domain in which the data source is deleted.</p>
302    pub fn get_domain_id(&self) -> &::std::option::Option<::std::string::String> {
303        &self.domain_id
304    }
305    /// <p>The ID of the project in which this data source exists and from which it's deleted.</p>
306    /// This field is required.
307    pub fn project_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
308        self.project_id = ::std::option::Option::Some(input.into());
309        self
310    }
311    /// <p>The ID of the project in which this data source exists and from which it's deleted.</p>
312    pub fn set_project_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
313        self.project_id = input;
314        self
315    }
316    /// <p>The ID of the project in which this data source exists and from which it's deleted.</p>
317    pub fn get_project_id(&self) -> &::std::option::Option<::std::string::String> {
318        &self.project_id
319    }
320    /// <p>The ID of the environemnt associated with this data source.</p>
321    pub fn environment_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
322        self.environment_id = ::std::option::Option::Some(input.into());
323        self
324    }
325    /// <p>The ID of the environemnt associated with this data source.</p>
326    pub fn set_environment_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
327        self.environment_id = input;
328        self
329    }
330    /// <p>The ID of the environemnt associated with this data source.</p>
331    pub fn get_environment_id(&self) -> &::std::option::Option<::std::string::String> {
332        &self.environment_id
333    }
334    /// <p>The ID of the connection that is deleted.</p>
335    pub fn connection_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
336        self.connection_id = ::std::option::Option::Some(input.into());
337        self
338    }
339    /// <p>The ID of the connection that is deleted.</p>
340    pub fn set_connection_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
341        self.connection_id = input;
342        self
343    }
344    /// <p>The ID of the connection that is deleted.</p>
345    pub fn get_connection_id(&self) -> &::std::option::Option<::std::string::String> {
346        &self.connection_id
347    }
348    /// <p>The configuration of the data source that is deleted.</p>
349    pub fn configuration(mut self, input: crate::types::DataSourceConfigurationOutput) -> Self {
350        self.configuration = ::std::option::Option::Some(input);
351        self
352    }
353    /// <p>The configuration of the data source that is deleted.</p>
354    pub fn set_configuration(mut self, input: ::std::option::Option<crate::types::DataSourceConfigurationOutput>) -> Self {
355        self.configuration = input;
356        self
357    }
358    /// <p>The configuration of the data source that is deleted.</p>
359    pub fn get_configuration(&self) -> &::std::option::Option<crate::types::DataSourceConfigurationOutput> {
360        &self.configuration
361    }
362    /// <p>The enable setting of the data source that specifies whether the data source is enabled or disabled.</p>
363    pub fn enable_setting(mut self, input: crate::types::EnableSetting) -> Self {
364        self.enable_setting = ::std::option::Option::Some(input);
365        self
366    }
367    /// <p>The enable setting of the data source that specifies whether the data source is enabled or disabled.</p>
368    pub fn set_enable_setting(mut self, input: ::std::option::Option<crate::types::EnableSetting>) -> Self {
369        self.enable_setting = input;
370        self
371    }
372    /// <p>The enable setting of the data source that specifies whether the data source is enabled or disabled.</p>
373    pub fn get_enable_setting(&self) -> &::std::option::Option<crate::types::EnableSetting> {
374        &self.enable_setting
375    }
376    /// <p>Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.</p>
377    pub fn publish_on_import(mut self, input: bool) -> Self {
378        self.publish_on_import = ::std::option::Option::Some(input);
379        self
380    }
381    /// <p>Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.</p>
382    pub fn set_publish_on_import(mut self, input: ::std::option::Option<bool>) -> Self {
383        self.publish_on_import = input;
384        self
385    }
386    /// <p>Specifies whether the assets that this data source creates in the inventory are to be also automatically published to the catalog.</p>
387    pub fn get_publish_on_import(&self) -> &::std::option::Option<bool> {
388        &self.publish_on_import
389    }
390    /// Appends an item to `asset_forms_output`.
391    ///
392    /// To override the contents of this collection use [`set_asset_forms_output`](Self::set_asset_forms_output).
393    ///
394    /// <p>The asset data forms associated with this data source.</p>
395    pub fn asset_forms_output(mut self, input: crate::types::FormOutput) -> Self {
396        let mut v = self.asset_forms_output.unwrap_or_default();
397        v.push(input);
398        self.asset_forms_output = ::std::option::Option::Some(v);
399        self
400    }
401    /// <p>The asset data forms associated with this data source.</p>
402    pub fn set_asset_forms_output(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::FormOutput>>) -> Self {
403        self.asset_forms_output = input;
404        self
405    }
406    /// <p>The asset data forms associated with this data source.</p>
407    pub fn get_asset_forms_output(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::FormOutput>> {
408        &self.asset_forms_output
409    }
410    /// <p>The schedule of runs for this data source.</p>
411    pub fn schedule(mut self, input: crate::types::ScheduleConfiguration) -> Self {
412        self.schedule = ::std::option::Option::Some(input);
413        self
414    }
415    /// <p>The schedule of runs for this data source.</p>
416    pub fn set_schedule(mut self, input: ::std::option::Option<crate::types::ScheduleConfiguration>) -> Self {
417        self.schedule = input;
418        self
419    }
420    /// <p>The schedule of runs for this data source.</p>
421    pub fn get_schedule(&self) -> &::std::option::Option<crate::types::ScheduleConfiguration> {
422        &self.schedule
423    }
424    /// <p>The status of the last run of this data source.</p>
425    pub fn last_run_status(mut self, input: crate::types::DataSourceRunStatus) -> Self {
426        self.last_run_status = ::std::option::Option::Some(input);
427        self
428    }
429    /// <p>The status of the last run of this data source.</p>
430    pub fn set_last_run_status(mut self, input: ::std::option::Option<crate::types::DataSourceRunStatus>) -> Self {
431        self.last_run_status = input;
432        self
433    }
434    /// <p>The status of the last run of this data source.</p>
435    pub fn get_last_run_status(&self) -> &::std::option::Option<crate::types::DataSourceRunStatus> {
436        &self.last_run_status
437    }
438    /// <p>The timestamp of when the data source was last run.</p>
439    pub fn last_run_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
440        self.last_run_at = ::std::option::Option::Some(input);
441        self
442    }
443    /// <p>The timestamp of when the data source was last run.</p>
444    pub fn set_last_run_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
445        self.last_run_at = input;
446        self
447    }
448    /// <p>The timestamp of when the data source was last run.</p>
449    pub fn get_last_run_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
450        &self.last_run_at
451    }
452    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
453    pub fn last_run_error_message(mut self, input: crate::types::DataSourceErrorMessage) -> Self {
454        self.last_run_error_message = ::std::option::Option::Some(input);
455        self
456    }
457    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
458    pub fn set_last_run_error_message(mut self, input: ::std::option::Option<crate::types::DataSourceErrorMessage>) -> Self {
459        self.last_run_error_message = input;
460        self
461    }
462    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
463    pub fn get_last_run_error_message(&self) -> &::std::option::Option<crate::types::DataSourceErrorMessage> {
464        &self.last_run_error_message
465    }
466    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
467    pub fn error_message(mut self, input: crate::types::DataSourceErrorMessage) -> Self {
468        self.error_message = ::std::option::Option::Some(input);
469        self
470    }
471    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
472    pub fn set_error_message(mut self, input: ::std::option::Option<crate::types::DataSourceErrorMessage>) -> Self {
473        self.error_message = input;
474        self
475    }
476    /// <p>Specifies the error message that is returned if the operation cannot be successfully completed.</p>
477    pub fn get_error_message(&self) -> &::std::option::Option<crate::types::DataSourceErrorMessage> {
478        &self.error_message
479    }
480    /// <p>The timestamp of when this data source was created.</p>
481    pub fn created_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
482        self.created_at = ::std::option::Option::Some(input);
483        self
484    }
485    /// <p>The timestamp of when this data source was created.</p>
486    pub fn set_created_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
487        self.created_at = input;
488        self
489    }
490    /// <p>The timestamp of when this data source was created.</p>
491    pub fn get_created_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
492        &self.created_at
493    }
494    /// <p>The timestamp of when this data source was updated.</p>
495    pub fn updated_at(mut self, input: ::aws_smithy_types::DateTime) -> Self {
496        self.updated_at = ::std::option::Option::Some(input);
497        self
498    }
499    /// <p>The timestamp of when this data source was updated.</p>
500    pub fn set_updated_at(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
501        self.updated_at = input;
502        self
503    }
504    /// <p>The timestamp of when this data source was updated.</p>
505    pub fn get_updated_at(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
506        &self.updated_at
507    }
508    /// <p>Specifies the status of the self-granting functionality.</p>
509    pub fn self_grant_status(mut self, input: crate::types::SelfGrantStatusOutput) -> Self {
510        self.self_grant_status = ::std::option::Option::Some(input);
511        self
512    }
513    /// <p>Specifies the status of the self-granting functionality.</p>
514    pub fn set_self_grant_status(mut self, input: ::std::option::Option<crate::types::SelfGrantStatusOutput>) -> Self {
515        self.self_grant_status = input;
516        self
517    }
518    /// <p>Specifies the status of the self-granting functionality.</p>
519    pub fn get_self_grant_status(&self) -> &::std::option::Option<crate::types::SelfGrantStatusOutput> {
520        &self.self_grant_status
521    }
522    /// <p>Specifies that the granted permissions are retained in case of a self-subscribe functionality failure for a data source.</p>
523    pub fn retain_permissions_on_revoke_failure(mut self, input: bool) -> Self {
524        self.retain_permissions_on_revoke_failure = ::std::option::Option::Some(input);
525        self
526    }
527    /// <p>Specifies that the granted permissions are retained in case of a self-subscribe functionality failure for a data source.</p>
528    pub fn set_retain_permissions_on_revoke_failure(mut self, input: ::std::option::Option<bool>) -> Self {
529        self.retain_permissions_on_revoke_failure = input;
530        self
531    }
532    /// <p>Specifies that the granted permissions are retained in case of a self-subscribe functionality failure for a data source.</p>
533    pub fn get_retain_permissions_on_revoke_failure(&self) -> &::std::option::Option<bool> {
534        &self.retain_permissions_on_revoke_failure
535    }
536    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
537        self._request_id = Some(request_id.into());
538        self
539    }
540
541    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
542        self._request_id = request_id;
543        self
544    }
545    /// Consumes the builder and constructs a [`DeleteDataSourceOutput`](crate::operation::delete_data_source::DeleteDataSourceOutput).
546    /// This method will fail if any of the following fields are not set:
547    /// - [`id`](crate::operation::delete_data_source::builders::DeleteDataSourceOutputBuilder::id)
548    /// - [`name`](crate::operation::delete_data_source::builders::DeleteDataSourceOutputBuilder::name)
549    /// - [`domain_id`](crate::operation::delete_data_source::builders::DeleteDataSourceOutputBuilder::domain_id)
550    /// - [`project_id`](crate::operation::delete_data_source::builders::DeleteDataSourceOutputBuilder::project_id)
551    pub fn build(
552        self,
553    ) -> ::std::result::Result<crate::operation::delete_data_source::DeleteDataSourceOutput, ::aws_smithy_types::error::operation::BuildError> {
554        ::std::result::Result::Ok(crate::operation::delete_data_source::DeleteDataSourceOutput {
555            id: self.id.ok_or_else(|| {
556                ::aws_smithy_types::error::operation::BuildError::missing_field(
557                    "id",
558                    "id was not specified but it is required when building DeleteDataSourceOutput",
559                )
560            })?,
561            status: self.status,
562            r#type: self.r#type,
563            name: self.name.ok_or_else(|| {
564                ::aws_smithy_types::error::operation::BuildError::missing_field(
565                    "name",
566                    "name was not specified but it is required when building DeleteDataSourceOutput",
567                )
568            })?,
569            description: self.description,
570            domain_id: self.domain_id.ok_or_else(|| {
571                ::aws_smithy_types::error::operation::BuildError::missing_field(
572                    "domain_id",
573                    "domain_id was not specified but it is required when building DeleteDataSourceOutput",
574                )
575            })?,
576            project_id: self.project_id.ok_or_else(|| {
577                ::aws_smithy_types::error::operation::BuildError::missing_field(
578                    "project_id",
579                    "project_id was not specified but it is required when building DeleteDataSourceOutput",
580                )
581            })?,
582            environment_id: self.environment_id,
583            connection_id: self.connection_id,
584            configuration: self.configuration,
585            enable_setting: self.enable_setting,
586            publish_on_import: self.publish_on_import,
587            asset_forms_output: self.asset_forms_output,
588            schedule: self.schedule,
589            last_run_status: self.last_run_status,
590            last_run_at: self.last_run_at,
591            last_run_error_message: self.last_run_error_message,
592            error_message: self.error_message,
593            created_at: self.created_at,
594            updated_at: self.updated_at,
595            self_grant_status: self.self_grant_status,
596            retain_permissions_on_revoke_failure: self.retain_permissions_on_revoke_failure,
597            _request_id: self._request_id,
598        })
599    }
600}
601impl ::std::fmt::Debug for DeleteDataSourceOutputBuilder {
602    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
603        let mut formatter = f.debug_struct("DeleteDataSourceOutputBuilder");
604        formatter.field("id", &self.id);
605        formatter.field("status", &self.status);
606        formatter.field("r#type", &self.r#type);
607        formatter.field("name", &"*** Sensitive Data Redacted ***");
608        formatter.field("description", &"*** Sensitive Data Redacted ***");
609        formatter.field("domain_id", &self.domain_id);
610        formatter.field("project_id", &self.project_id);
611        formatter.field("environment_id", &self.environment_id);
612        formatter.field("connection_id", &self.connection_id);
613        formatter.field("configuration", &self.configuration);
614        formatter.field("enable_setting", &self.enable_setting);
615        formatter.field("publish_on_import", &self.publish_on_import);
616        formatter.field("asset_forms_output", &self.asset_forms_output);
617        formatter.field("schedule", &"*** Sensitive Data Redacted ***");
618        formatter.field("last_run_status", &self.last_run_status);
619        formatter.field("last_run_at", &self.last_run_at);
620        formatter.field("last_run_error_message", &self.last_run_error_message);
621        formatter.field("error_message", &self.error_message);
622        formatter.field("created_at", &self.created_at);
623        formatter.field("updated_at", &self.updated_at);
624        formatter.field("self_grant_status", &self.self_grant_status);
625        formatter.field("retain_permissions_on_revoke_failure", &self.retain_permissions_on_revoke_failure);
626        formatter.field("_request_id", &self._request_id);
627        formatter.finish()
628    }
629}