aws_sdk_drs/client/create_replication_configuration_template.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 [`CreateReplicationConfigurationTemplate`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`staging_area_subnet_id(impl Into<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::staging_area_subnet_id) / [`set_staging_area_subnet_id(Option<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_staging_area_subnet_id):<br>required: **true**<br><p>The subnet to be used by the replication staging area.</p><br>
7 /// - [`associate_default_security_group(bool)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::associate_default_security_group) / [`set_associate_default_security_group(Option<bool>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_associate_default_security_group):<br>required: **true**<br><p>Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.</p><br>
8 /// - [`replication_servers_security_groups_ids(impl Into<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::replication_servers_security_groups_ids) / [`set_replication_servers_security_groups_ids(Option<Vec::<String>>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_replication_servers_security_groups_ids):<br>required: **true**<br><p>The security group IDs that will be used by the replication server.</p><br>
9 /// - [`replication_server_instance_type(impl Into<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::replication_server_instance_type) / [`set_replication_server_instance_type(Option<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_replication_server_instance_type):<br>required: **true**<br><p>The instance type to be used for the replication server.</p><br>
10 /// - [`use_dedicated_replication_server(bool)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::use_dedicated_replication_server) / [`set_use_dedicated_replication_server(Option<bool>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_use_dedicated_replication_server):<br>required: **true**<br><p>Whether to use a dedicated Replication Server in the replication staging area.</p><br>
11 /// - [`default_large_staging_disk_type(ReplicationConfigurationDefaultLargeStagingDiskType)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::default_large_staging_disk_type) / [`set_default_large_staging_disk_type(Option<ReplicationConfigurationDefaultLargeStagingDiskType>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_default_large_staging_disk_type):<br>required: **true**<br><p>The Staging Disk EBS volume type to be used during replication.</p><br>
12 /// - [`ebs_encryption(ReplicationConfigurationEbsEncryption)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::ebs_encryption) / [`set_ebs_encryption(Option<ReplicationConfigurationEbsEncryption>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_ebs_encryption):<br>required: **true**<br><p>The type of EBS encryption to be used during replication.</p><br>
13 /// - [`ebs_encryption_key_arn(impl Into<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::ebs_encryption_key_arn) / [`set_ebs_encryption_key_arn(Option<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_ebs_encryption_key_arn):<br>required: **false**<br><p>The ARN of the EBS encryption key to be used during replication.</p><br>
14 /// - [`bandwidth_throttling(i64)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::bandwidth_throttling) / [`set_bandwidth_throttling(Option<i64>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_bandwidth_throttling):<br>required: **true**<br><p>Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.</p><br>
15 /// - [`data_plane_routing(ReplicationConfigurationDataPlaneRouting)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::data_plane_routing) / [`set_data_plane_routing(Option<ReplicationConfigurationDataPlaneRouting>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_data_plane_routing):<br>required: **true**<br><p>The data plane routing mechanism that will be used for replication.</p><br>
16 /// - [`create_public_ip(bool)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::create_public_ip) / [`set_create_public_ip(Option<bool>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_create_public_ip):<br>required: **true**<br><p>Whether to create a Public IP for the Recovery Instance by default.</p><br>
17 /// - [`staging_area_tags(impl Into<String>, impl Into<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::staging_area_tags) / [`set_staging_area_tags(Option<HashMap::<String, String>>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_staging_area_tags):<br>required: **true**<br><p>A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.</p><br>
18 /// - [`pit_policy(PitPolicyRule)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::pit_policy) / [`set_pit_policy(Option<Vec::<PitPolicyRule>>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_pit_policy):<br>required: **true**<br><p>The Point in time (PIT) policy to manage snapshots taken during replication.</p><br>
19 /// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_tags):<br>required: **false**<br><p>A set of tags to be associated with the Replication Configuration Template resource.</p><br>
20 /// - [`auto_replicate_new_disks(bool)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::auto_replicate_new_disks) / [`set_auto_replicate_new_disks(Option<bool>)`](crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::set_auto_replicate_new_disks):<br>required: **false**<br><p>Whether to allow the AWS replication agent to automatically replicate newly added disks.</p><br>
21 /// - On success, responds with [`CreateReplicationConfigurationTemplateOutput`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput) with field(s):
22 /// - [`replication_configuration_template_id(String)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::replication_configuration_template_id): <p>The Replication Configuration Template ID.</p>
23 /// - [`arn(Option<String>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::arn): <p>The Replication Configuration Template ARN.</p>
24 /// - [`staging_area_subnet_id(Option<String>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::staging_area_subnet_id): <p>The subnet to be used by the replication staging area.</p>
25 /// - [`associate_default_security_group(Option<bool>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::associate_default_security_group): <p>Whether to associate the default Elastic Disaster Recovery Security group with the Replication Configuration Template.</p>
26 /// - [`replication_servers_security_groups_ids(Option<Vec::<String>>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::replication_servers_security_groups_ids): <p>The security group IDs that will be used by the replication server.</p>
27 /// - [`replication_server_instance_type(Option<String>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::replication_server_instance_type): <p>The instance type to be used for the replication server.</p>
28 /// - [`use_dedicated_replication_server(Option<bool>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::use_dedicated_replication_server): <p>Whether to use a dedicated Replication Server in the replication staging area.</p>
29 /// - [`default_large_staging_disk_type(Option<ReplicationConfigurationDefaultLargeStagingDiskType>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::default_large_staging_disk_type): <p>The Staging Disk EBS volume type to be used during replication.</p>
30 /// - [`ebs_encryption(Option<ReplicationConfigurationEbsEncryption>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::ebs_encryption): <p>The type of EBS encryption to be used during replication.</p>
31 /// - [`ebs_encryption_key_arn(Option<String>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::ebs_encryption_key_arn): <p>The ARN of the EBS encryption key to be used during replication.</p>
32 /// - [`bandwidth_throttling(i64)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::bandwidth_throttling): <p>Configure bandwidth throttling for the outbound data transfer rate of the Source Server in Mbps.</p>
33 /// - [`data_plane_routing(Option<ReplicationConfigurationDataPlaneRouting>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::data_plane_routing): <p>The data plane routing mechanism that will be used for replication.</p>
34 /// - [`create_public_ip(Option<bool>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::create_public_ip): <p>Whether to create a Public IP for the Recovery Instance by default.</p>
35 /// - [`staging_area_tags(Option<HashMap::<String, String>>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::staging_area_tags): <p>A set of tags to be associated with all resources created in the replication staging area: EC2 replication server, EBS volumes, EBS snapshots, etc.</p>
36 /// - [`tags(Option<HashMap::<String, String>>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::tags): <p>A set of tags to be associated with the Replication Configuration Template resource.</p>
37 /// - [`pit_policy(Option<Vec::<PitPolicyRule>>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::pit_policy): <p>The Point in time (PIT) policy to manage snapshots taken during replication.</p>
38 /// - [`auto_replicate_new_disks(Option<bool>)`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateOutput::auto_replicate_new_disks): <p>Whether to allow the AWS replication agent to automatically replicate newly added disks.</p>
39 /// - On failure, responds with [`SdkError<CreateReplicationConfigurationTemplateError>`](crate::operation::create_replication_configuration_template::CreateReplicationConfigurationTemplateError)
40 pub fn create_replication_configuration_template(
41 &self,
42 ) -> crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder {
43 crate::operation::create_replication_configuration_template::builders::CreateReplicationConfigurationTemplateFluentBuilder::new(
44 self.handle.clone(),
45 )
46 }
47}