/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Configuration parameters for provisioning an DMS Serverless
* replication.See Also:
AWS
* API Reference
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
The Availability Zone where the DMS Serverless replication using this
* configuration will run. The default value is a random, system-chosen
* Availability Zone in the configuration's Amazon Web Services Region, for
* example, "us-west-2"
. You can't set this parameter if the
* MultiAZ
parameter is set to true
.
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
A list of custom DNS name servers supported for the DMS Serverless
* replication to access your source or target database. This list overrides the
* default name servers supported by the DMS Serverless replication. You can
* specify a comma-separated list of internet addresses for up to four DNS name
* servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"
An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline ComputeConfig& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline ComputeConfig& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *An Key Management Service (KMS) key Amazon Resource Name (ARN) that is used * to encrypt the data during DMS Serverless replication.
If you don't
* specify a value for the KmsKeyId
parameter, DMS uses your default
* encryption key.
KMS creates the default encryption key for your Amazon * Web Services account. Your Amazon Web Services account has a different default * encryption key for each Amazon Web Services Region.
*/ inline ComputeConfig& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *Specifies the maximum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value that you can
* specify for DMS Serverless is 384. The MaxCapacityUnits
parameter
* is the only DCU parameter you are required to specify.
Specifies the maximum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value that you can
* specify for DMS Serverless is 384. The MaxCapacityUnits
parameter
* is the only DCU parameter you are required to specify.
Specifies the maximum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value that you can
* specify for DMS Serverless is 384. The MaxCapacityUnits
parameter
* is the only DCU parameter you are required to specify.
Specifies the maximum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the maximum value that you can
* specify for DMS Serverless is 384. The MaxCapacityUnits
parameter
* is the only DCU parameter you are required to specify.
Specifies the minimum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU value that you
* can specify for DMS Serverless is 2. You don't have to specify a value for the
* MinCapacityUnits
parameter. If you don't set this value, DMS scans
* the current activity of available source tables to identify an optimum setting
* for this parameter. If there is no current source activity or DMS can't
* otherwise identify a more appropriate value, it sets this parameter to the
* minimum DCU value allowed, 2.
Specifies the minimum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU value that you
* can specify for DMS Serverless is 2. You don't have to specify a value for the
* MinCapacityUnits
parameter. If you don't set this value, DMS scans
* the current activity of available source tables to identify an optimum setting
* for this parameter. If there is no current source activity or DMS can't
* otherwise identify a more appropriate value, it sets this parameter to the
* minimum DCU value allowed, 2.
Specifies the minimum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU value that you
* can specify for DMS Serverless is 2. You don't have to specify a value for the
* MinCapacityUnits
parameter. If you don't set this value, DMS scans
* the current activity of available source tables to identify an optimum setting
* for this parameter. If there is no current source activity or DMS can't
* otherwise identify a more appropriate value, it sets this parameter to the
* minimum DCU value allowed, 2.
Specifies the minimum value of the DMS capacity units (DCUs) for which a
* given DMS Serverless replication can be provisioned. A single DCU is 2GB of RAM,
* with 2 DCUs as the minimum value allowed. The list of valid DCU values includes
* 2, 4, 8, 16, 32, 64, 128, 192, 256, and 384. So, the minimum DCU value that you
* can specify for DMS Serverless is 2. You don't have to specify a value for the
* MinCapacityUnits
parameter. If you don't set this value, DMS scans
* the current activity of available source tables to identify an optimum setting
* for this parameter. If there is no current source activity or DMS can't
* otherwise identify a more appropriate value, it sets this parameter to the
* minimum DCU value allowed, 2.
Specifies whether the DMS Serverless replication is a Multi-AZ deployment.
* You can't set the AvailabilityZone
parameter if the
* MultiAZ
parameter is set to true
.
Specifies whether the DMS Serverless replication is a Multi-AZ deployment.
* You can't set the AvailabilityZone
parameter if the
* MultiAZ
parameter is set to true
.
Specifies whether the DMS Serverless replication is a Multi-AZ deployment.
* You can't set the AvailabilityZone
parameter if the
* MultiAZ
parameter is set to true
.
Specifies whether the DMS Serverless replication is a Multi-AZ deployment.
* You can't set the AvailabilityZone
parameter if the
* MultiAZ
parameter is set to true
.
The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline const Aws::String& GetPreferredMaintenanceWindow() const{ return m_preferredMaintenanceWindow; } /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; } /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline void SetPreferredMaintenanceWindow(const Aws::String& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = value; } /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline void SetPreferredMaintenanceWindow(Aws::String&& value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow = std::move(value); } /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline void SetPreferredMaintenanceWindow(const char* value) { m_preferredMaintenanceWindowHasBeenSet = true; m_preferredMaintenanceWindow.assign(value); } /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline ComputeConfig& WithPreferredMaintenanceWindow(const Aws::String& value) { SetPreferredMaintenanceWindow(value); return *this;} /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline ComputeConfig& WithPreferredMaintenanceWindow(Aws::String&& value) { SetPreferredMaintenanceWindow(std::move(value)); return *this;} /** *The weekly time range during which system maintenance can occur for the DMS
* Serverless replication, in Universal Coordinated Time (UTC). The format is
* ddd:hh24:mi-ddd:hh24:mi
.
The default is a 30-minute window
* selected at random from an 8-hour block of time per Amazon Web Services Region.
* This maintenance occurs on a random day of the week. Valid values for days of
* the week include Mon
, Tue
, Wed
,
* Thu
, Fri
, Sat
, and Sun
.
Constraints include a minimum 30-minute window.
*/ inline ComputeConfig& WithPreferredMaintenanceWindow(const char* value) { SetPreferredMaintenanceWindow(value); return *this;} /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline const Aws::String& GetReplicationSubnetGroupId() const{ return m_replicationSubnetGroupId; } /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline bool ReplicationSubnetGroupIdHasBeenSet() const { return m_replicationSubnetGroupIdHasBeenSet; } /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline void SetReplicationSubnetGroupId(const Aws::String& value) { m_replicationSubnetGroupIdHasBeenSet = true; m_replicationSubnetGroupId = value; } /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline void SetReplicationSubnetGroupId(Aws::String&& value) { m_replicationSubnetGroupIdHasBeenSet = true; m_replicationSubnetGroupId = std::move(value); } /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline void SetReplicationSubnetGroupId(const char* value) { m_replicationSubnetGroupIdHasBeenSet = true; m_replicationSubnetGroupId.assign(value); } /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline ComputeConfig& WithReplicationSubnetGroupId(const Aws::String& value) { SetReplicationSubnetGroupId(value); return *this;} /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline ComputeConfig& WithReplicationSubnetGroupId(Aws::String&& value) { SetReplicationSubnetGroupId(std::move(value)); return *this;} /** *Specifies a subnet group identifier to associate with the DMS Serverless * replication.
*/ inline ComputeConfig& WithReplicationSubnetGroupId(const char* value) { SetReplicationSubnetGroupId(value); return *this;} /** *Specifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline const Aws::VectorSpecifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline bool VpcSecurityGroupIdsHasBeenSet() const { return m_vpcSecurityGroupIdsHasBeenSet; } /** *Specifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline void SetVpcSecurityGroupIds(const Aws::VectorSpecifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline void SetVpcSecurityGroupIds(Aws::VectorSpecifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline ComputeConfig& WithVpcSecurityGroupIds(const Aws::VectorSpecifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline ComputeConfig& WithVpcSecurityGroupIds(Aws::VectorSpecifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline ComputeConfig& AddVpcSecurityGroupIds(const Aws::String& value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds.push_back(value); return *this; } /** *Specifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline ComputeConfig& AddVpcSecurityGroupIds(Aws::String&& value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds.push_back(std::move(value)); return *this; } /** *Specifies the virtual private cloud (VPC) security group to use with the DMS * Serverless replication. The VPC security group must work with the VPC containing * the replication.
*/ inline ComputeConfig& AddVpcSecurityGroupIds(const char* value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds.push_back(value); return *this; } private: Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet = false; Aws::String m_dnsNameServers; bool m_dnsNameServersHasBeenSet = false; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet = false; int m_maxCapacityUnits; bool m_maxCapacityUnitsHasBeenSet = false; int m_minCapacityUnits; bool m_minCapacityUnitsHasBeenSet = false; bool m_multiAZ; bool m_multiAZHasBeenSet = false; Aws::String m_preferredMaintenanceWindow; bool m_preferredMaintenanceWindowHasBeenSet = false; Aws::String m_replicationSubnetGroupId; bool m_replicationSubnetGroupIdHasBeenSet = false; Aws::Vector