aws_sdk_redshift/client/
create_integration.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`CreateIntegration`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`source_arn(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::source_arn) / [`set_source_arn(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_source_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the database to use as the source for replication.</p><br>
7    ///   - [`target_arn(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::target_arn) / [`set_target_arn(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_target_arn):<br>required: **true**<br><p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p><br>
8    ///   - [`integration_name(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::integration_name) / [`set_integration_name(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_integration_name):<br>required: **true**<br><p>The name of the integration.</p><br>
9    ///   - [`kms_key_id(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::kms_key_id) / [`set_kms_key_id(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_kms_key_id):<br>required: **false**<br><p>An Key Management Service (KMS) key identifier for the key to use to encrypt the integration. If you don't specify an encryption key, the default Amazon Web Services owned key is used.</p><br>
10    ///   - [`tag_list(Tag)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::tag_list) / [`set_tag_list(Option<Vec::<Tag>>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_tag_list):<br>required: **false**<br><p>A list of tags.</p><br>
11    ///   - [`additional_encryption_context(impl Into<String>, impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::additional_encryption_context) / [`set_additional_encryption_context(Option<HashMap::<String, String>>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_additional_encryption_context):<br>required: **false**<br><p>An optional set of non-secret key–value pairs that contains additional contextual information about the data. 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> <p>You can only include this parameter if you specify the <code>KMSKeyId</code> parameter.</p><br>
12    ///   - [`description(impl Into<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::set_description):<br>required: **false**<br><p>A description of the integration.</p><br>
13    /// - On success, responds with [`CreateIntegrationOutput`](crate::operation::create_integration::CreateIntegrationOutput) with field(s):
14    ///   - [`integration_arn(Option<String>)`](crate::operation::create_integration::CreateIntegrationOutput::integration_arn): <p>The Amazon Resource Name (ARN) of the integration.</p>
15    ///   - [`integration_name(Option<String>)`](crate::operation::create_integration::CreateIntegrationOutput::integration_name): <p>The name of the integration.</p>
16    ///   - [`source_arn(Option<String>)`](crate::operation::create_integration::CreateIntegrationOutput::source_arn): <p>The Amazon Resource Name (ARN) of the database used as the source for replication.</p>
17    ///   - [`target_arn(Option<String>)`](crate::operation::create_integration::CreateIntegrationOutput::target_arn): <p>The Amazon Resource Name (ARN) of the Amazon Redshift data warehouse to use as the target for replication.</p>
18    ///   - [`status(Option<ZeroEtlIntegrationStatus>)`](crate::operation::create_integration::CreateIntegrationOutput::status): <p>The current status of the integration.</p>
19    ///   - [`errors(Option<Vec::<IntegrationError>>)`](crate::operation::create_integration::CreateIntegrationOutput::errors): <p>Any errors associated with the integration.</p>
20    ///   - [`create_time(Option<DateTime>)`](crate::operation::create_integration::CreateIntegrationOutput::create_time): <p>The time (UTC) when the integration was created.</p>
21    ///   - [`description(Option<String>)`](crate::operation::create_integration::CreateIntegrationOutput::description): <p>The description of the integration.</p>
22    ///   - [`kms_key_id(Option<String>)`](crate::operation::create_integration::CreateIntegrationOutput::kms_key_id): <p>The Key Management Service (KMS) key identifier for the key used to encrypt the integration.</p>
23    ///   - [`additional_encryption_context(Option<HashMap::<String, String>>)`](crate::operation::create_integration::CreateIntegrationOutput::additional_encryption_context): <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>
24    ///   - [`tags(Option<Vec::<Tag>>)`](crate::operation::create_integration::CreateIntegrationOutput::tags): <p>The list of tags associated with the integration.</p>
25    /// - On failure, responds with [`SdkError<CreateIntegrationError>`](crate::operation::create_integration::CreateIntegrationError)
26    pub fn create_integration(&self) -> crate::operation::create_integration::builders::CreateIntegrationFluentBuilder {
27        crate::operation::create_integration::builders::CreateIntegrationFluentBuilder::new(self.handle.clone())
28    }
29}