aws_sdk_redshift/operation/delete_integration/
_delete_integration_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, ::std::fmt::Debug)]
5pub struct DeleteIntegrationOutput {
6    /// <p>The Amazon Resource Name (ARN) of the integration.</p>
7    pub integration_arn: ::std::option::Option<::std::string::String>,
8    /// <p>The name of the integration.</p>
9    pub integration_name: ::std::option::Option<::std::string::String>,
10    /// <p>The Amazon Resource Name (ARN) of the database used as the source for replication.</p>
11    pub source_arn: ::std::option::Option<::std::string::String>,
12    /// <p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p>
13    pub target_arn: ::std::option::Option<::std::string::String>,
14    /// <p>The current status of the integration.</p>
15    pub status: ::std::option::Option<crate::types::ZeroEtlIntegrationStatus>,
16    /// <p>Any errors associated with the integration.</p>
17    pub errors: ::std::option::Option<::std::vec::Vec<crate::types::IntegrationError>>,
18    /// <p>The time (UTC) when the integration was created.</p>
19    pub create_time: ::std::option::Option<::aws_smithy_types::DateTime>,
20    /// <p>The description of the integration.</p>
21    pub description: ::std::option::Option<::std::string::String>,
22    /// <p>The Key Management Service (KMS) key identifier for the key used to encrypt the integration.</p>
23    pub kms_key_id: ::std::option::Option<::std::string::String>,
24    /// <p>The encryption context for the integration. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption context</a> in the <i>Amazon Web Services Key Management Service Developer Guide</i>.</p>
25    pub additional_encryption_context: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
26    /// <p>The list of tags associated with the integration.</p>
27    pub tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
28    _request_id: Option<String>,
29}
30impl DeleteIntegrationOutput {
31    /// <p>The Amazon Resource Name (ARN) of the integration.</p>
32    pub fn integration_arn(&self) -> ::std::option::Option<&str> {
33        self.integration_arn.as_deref()
34    }
35    /// <p>The name of the integration.</p>
36    pub fn integration_name(&self) -> ::std::option::Option<&str> {
37        self.integration_name.as_deref()
38    }
39    /// <p>The Amazon Resource Name (ARN) of the database used as the source for replication.</p>
40    pub fn source_arn(&self) -> ::std::option::Option<&str> {
41        self.source_arn.as_deref()
42    }
43    /// <p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p>
44    pub fn target_arn(&self) -> ::std::option::Option<&str> {
45        self.target_arn.as_deref()
46    }
47    /// <p>The current status of the integration.</p>
48    pub fn status(&self) -> ::std::option::Option<&crate::types::ZeroEtlIntegrationStatus> {
49        self.status.as_ref()
50    }
51    /// <p>Any errors associated with the integration.</p>
52    ///
53    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.errors.is_none()`.
54    pub fn errors(&self) -> &[crate::types::IntegrationError] {
55        self.errors.as_deref().unwrap_or_default()
56    }
57    /// <p>The time (UTC) when the integration was created.</p>
58    pub fn create_time(&self) -> ::std::option::Option<&::aws_smithy_types::DateTime> {
59        self.create_time.as_ref()
60    }
61    /// <p>The description of the integration.</p>
62    pub fn description(&self) -> ::std::option::Option<&str> {
63        self.description.as_deref()
64    }
65    /// <p>The Key Management Service (KMS) key identifier for the key used to encrypt the integration.</p>
66    pub fn kms_key_id(&self) -> ::std::option::Option<&str> {
67        self.kms_key_id.as_deref()
68    }
69    /// <p>The encryption context for the integration. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption context</a> in the <i>Amazon Web Services Key Management Service Developer Guide</i>.</p>
70    pub fn additional_encryption_context(&self) -> ::std::option::Option<&::std::collections::HashMap<::std::string::String, ::std::string::String>> {
71        self.additional_encryption_context.as_ref()
72    }
73    /// <p>The list of tags associated with the integration.</p>
74    ///
75    /// If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use `.tags.is_none()`.
76    pub fn tags(&self) -> &[crate::types::Tag] {
77        self.tags.as_deref().unwrap_or_default()
78    }
79}
80impl ::aws_types::request_id::RequestId for DeleteIntegrationOutput {
81    fn request_id(&self) -> Option<&str> {
82        self._request_id.as_deref()
83    }
84}
85impl DeleteIntegrationOutput {
86    /// Creates a new builder-style object to manufacture [`DeleteIntegrationOutput`](crate::operation::delete_integration::DeleteIntegrationOutput).
87    pub fn builder() -> crate::operation::delete_integration::builders::DeleteIntegrationOutputBuilder {
88        crate::operation::delete_integration::builders::DeleteIntegrationOutputBuilder::default()
89    }
90}
91
92/// A builder for [`DeleteIntegrationOutput`](crate::operation::delete_integration::DeleteIntegrationOutput).
93#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default, ::std::fmt::Debug)]
94#[non_exhaustive]
95pub struct DeleteIntegrationOutputBuilder {
96    pub(crate) integration_arn: ::std::option::Option<::std::string::String>,
97    pub(crate) integration_name: ::std::option::Option<::std::string::String>,
98    pub(crate) source_arn: ::std::option::Option<::std::string::String>,
99    pub(crate) target_arn: ::std::option::Option<::std::string::String>,
100    pub(crate) status: ::std::option::Option<crate::types::ZeroEtlIntegrationStatus>,
101    pub(crate) errors: ::std::option::Option<::std::vec::Vec<crate::types::IntegrationError>>,
102    pub(crate) create_time: ::std::option::Option<::aws_smithy_types::DateTime>,
103    pub(crate) description: ::std::option::Option<::std::string::String>,
104    pub(crate) kms_key_id: ::std::option::Option<::std::string::String>,
105    pub(crate) additional_encryption_context: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
106    pub(crate) tags: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>,
107    _request_id: Option<String>,
108}
109impl DeleteIntegrationOutputBuilder {
110    /// <p>The Amazon Resource Name (ARN) of the integration.</p>
111    pub fn integration_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
112        self.integration_arn = ::std::option::Option::Some(input.into());
113        self
114    }
115    /// <p>The Amazon Resource Name (ARN) of the integration.</p>
116    pub fn set_integration_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
117        self.integration_arn = input;
118        self
119    }
120    /// <p>The Amazon Resource Name (ARN) of the integration.</p>
121    pub fn get_integration_arn(&self) -> &::std::option::Option<::std::string::String> {
122        &self.integration_arn
123    }
124    /// <p>The name of the integration.</p>
125    pub fn integration_name(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
126        self.integration_name = ::std::option::Option::Some(input.into());
127        self
128    }
129    /// <p>The name of the integration.</p>
130    pub fn set_integration_name(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
131        self.integration_name = input;
132        self
133    }
134    /// <p>The name of the integration.</p>
135    pub fn get_integration_name(&self) -> &::std::option::Option<::std::string::String> {
136        &self.integration_name
137    }
138    /// <p>The Amazon Resource Name (ARN) of the database used as the source for replication.</p>
139    pub fn source_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
140        self.source_arn = ::std::option::Option::Some(input.into());
141        self
142    }
143    /// <p>The Amazon Resource Name (ARN) of the database used as the source for replication.</p>
144    pub fn set_source_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
145        self.source_arn = input;
146        self
147    }
148    /// <p>The Amazon Resource Name (ARN) of the database used as the source for replication.</p>
149    pub fn get_source_arn(&self) -> &::std::option::Option<::std::string::String> {
150        &self.source_arn
151    }
152    /// <p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p>
153    pub fn target_arn(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
154        self.target_arn = ::std::option::Option::Some(input.into());
155        self
156    }
157    /// <p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p>
158    pub fn set_target_arn(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
159        self.target_arn = input;
160        self
161    }
162    /// <p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p>
163    pub fn get_target_arn(&self) -> &::std::option::Option<::std::string::String> {
164        &self.target_arn
165    }
166    /// <p>The current status of the integration.</p>
167    pub fn status(mut self, input: crate::types::ZeroEtlIntegrationStatus) -> Self {
168        self.status = ::std::option::Option::Some(input);
169        self
170    }
171    /// <p>The current status of the integration.</p>
172    pub fn set_status(mut self, input: ::std::option::Option<crate::types::ZeroEtlIntegrationStatus>) -> Self {
173        self.status = input;
174        self
175    }
176    /// <p>The current status of the integration.</p>
177    pub fn get_status(&self) -> &::std::option::Option<crate::types::ZeroEtlIntegrationStatus> {
178        &self.status
179    }
180    /// Appends an item to `errors`.
181    ///
182    /// To override the contents of this collection use [`set_errors`](Self::set_errors).
183    ///
184    /// <p>Any errors associated with the integration.</p>
185    pub fn errors(mut self, input: crate::types::IntegrationError) -> Self {
186        let mut v = self.errors.unwrap_or_default();
187        v.push(input);
188        self.errors = ::std::option::Option::Some(v);
189        self
190    }
191    /// <p>Any errors associated with the integration.</p>
192    pub fn set_errors(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::IntegrationError>>) -> Self {
193        self.errors = input;
194        self
195    }
196    /// <p>Any errors associated with the integration.</p>
197    pub fn get_errors(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::IntegrationError>> {
198        &self.errors
199    }
200    /// <p>The time (UTC) when the integration was created.</p>
201    pub fn create_time(mut self, input: ::aws_smithy_types::DateTime) -> Self {
202        self.create_time = ::std::option::Option::Some(input);
203        self
204    }
205    /// <p>The time (UTC) when the integration was created.</p>
206    pub fn set_create_time(mut self, input: ::std::option::Option<::aws_smithy_types::DateTime>) -> Self {
207        self.create_time = input;
208        self
209    }
210    /// <p>The time (UTC) when the integration was created.</p>
211    pub fn get_create_time(&self) -> &::std::option::Option<::aws_smithy_types::DateTime> {
212        &self.create_time
213    }
214    /// <p>The description of the integration.</p>
215    pub fn description(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
216        self.description = ::std::option::Option::Some(input.into());
217        self
218    }
219    /// <p>The description of the integration.</p>
220    pub fn set_description(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
221        self.description = input;
222        self
223    }
224    /// <p>The description of the integration.</p>
225    pub fn get_description(&self) -> &::std::option::Option<::std::string::String> {
226        &self.description
227    }
228    /// <p>The Key Management Service (KMS) key identifier for the key used to encrypt the integration.</p>
229    pub fn kms_key_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
230        self.kms_key_id = ::std::option::Option::Some(input.into());
231        self
232    }
233    /// <p>The Key Management Service (KMS) key identifier for the key used to encrypt the integration.</p>
234    pub fn set_kms_key_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
235        self.kms_key_id = input;
236        self
237    }
238    /// <p>The Key Management Service (KMS) key identifier for the key used to encrypt the integration.</p>
239    pub fn get_kms_key_id(&self) -> &::std::option::Option<::std::string::String> {
240        &self.kms_key_id
241    }
242    /// Adds a key-value pair to `additional_encryption_context`.
243    ///
244    /// To override the contents of this collection use [`set_additional_encryption_context`](Self::set_additional_encryption_context).
245    ///
246    /// <p>The encryption context for the integration. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption context</a> in the <i>Amazon Web Services Key Management Service Developer Guide</i>.</p>
247    pub fn additional_encryption_context(
248        mut self,
249        k: impl ::std::convert::Into<::std::string::String>,
250        v: impl ::std::convert::Into<::std::string::String>,
251    ) -> Self {
252        let mut hash_map = self.additional_encryption_context.unwrap_or_default();
253        hash_map.insert(k.into(), v.into());
254        self.additional_encryption_context = ::std::option::Option::Some(hash_map);
255        self
256    }
257    /// <p>The encryption context for the integration. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption context</a> in the <i>Amazon Web Services Key Management Service Developer Guide</i>.</p>
258    pub fn set_additional_encryption_context(
259        mut self,
260        input: ::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>>,
261    ) -> Self {
262        self.additional_encryption_context = input;
263        self
264    }
265    /// <p>The encryption context for the integration. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context">Encryption context</a> in the <i>Amazon Web Services Key Management Service Developer Guide</i>.</p>
266    pub fn get_additional_encryption_context(
267        &self,
268    ) -> &::std::option::Option<::std::collections::HashMap<::std::string::String, ::std::string::String>> {
269        &self.additional_encryption_context
270    }
271    /// Appends an item to `tags`.
272    ///
273    /// To override the contents of this collection use [`set_tags`](Self::set_tags).
274    ///
275    /// <p>The list of tags associated with the integration.</p>
276    pub fn tags(mut self, input: crate::types::Tag) -> Self {
277        let mut v = self.tags.unwrap_or_default();
278        v.push(input);
279        self.tags = ::std::option::Option::Some(v);
280        self
281    }
282    /// <p>The list of tags associated with the integration.</p>
283    pub fn set_tags(mut self, input: ::std::option::Option<::std::vec::Vec<crate::types::Tag>>) -> Self {
284        self.tags = input;
285        self
286    }
287    /// <p>The list of tags associated with the integration.</p>
288    pub fn get_tags(&self) -> &::std::option::Option<::std::vec::Vec<crate::types::Tag>> {
289        &self.tags
290    }
291    pub(crate) fn _request_id(mut self, request_id: impl Into<String>) -> Self {
292        self._request_id = Some(request_id.into());
293        self
294    }
295
296    pub(crate) fn _set_request_id(&mut self, request_id: Option<String>) -> &mut Self {
297        self._request_id = request_id;
298        self
299    }
300    /// Consumes the builder and constructs a [`DeleteIntegrationOutput`](crate::operation::delete_integration::DeleteIntegrationOutput).
301    pub fn build(self) -> crate::operation::delete_integration::DeleteIntegrationOutput {
302        crate::operation::delete_integration::DeleteIntegrationOutput {
303            integration_arn: self.integration_arn,
304            integration_name: self.integration_name,
305            source_arn: self.source_arn,
306            target_arn: self.target_arn,
307            status: self.status,
308            errors: self.errors,
309            create_time: self.create_time,
310            description: self.description,
311            kms_key_id: self.kms_key_id,
312            additional_encryption_context: self.additional_encryption_context,
313            tags: self.tags,
314            _request_id: self._request_id,
315        }
316    }
317}