/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include #include namespace Aws { namespace DatabaseMigrationService { namespace Model { /** *

See Also:

AWS * API Reference

*/ class AWS_DATABASEMIGRATIONSERVICE_API CreateReplicationInstanceRequest : public DatabaseMigrationServiceRequest { public: CreateReplicationInstanceRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "CreateReplicationInstance"; } Aws::String SerializePayload() const override; Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline const Aws::String& GetReplicationInstanceIdentifier() const{ return m_replicationInstanceIdentifier; } /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline bool ReplicationInstanceIdentifierHasBeenSet() const { return m_replicationInstanceIdentifierHasBeenSet; } /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline void SetReplicationInstanceIdentifier(const Aws::String& value) { m_replicationInstanceIdentifierHasBeenSet = true; m_replicationInstanceIdentifier = value; } /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline void SetReplicationInstanceIdentifier(Aws::String&& value) { m_replicationInstanceIdentifierHasBeenSet = true; m_replicationInstanceIdentifier = std::move(value); } /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline void SetReplicationInstanceIdentifier(const char* value) { m_replicationInstanceIdentifierHasBeenSet = true; m_replicationInstanceIdentifier.assign(value); } /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline CreateReplicationInstanceRequest& WithReplicationInstanceIdentifier(const Aws::String& value) { SetReplicationInstanceIdentifier(value); return *this;} /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline CreateReplicationInstanceRequest& WithReplicationInstanceIdentifier(Aws::String&& value) { SetReplicationInstanceIdentifier(std::move(value)); return *this;} /** *

The replication instance identifier. This parameter is stored as a lowercase * string.

Constraints:

  • Must contain 1-63 alphanumeric * characters or hyphens.

  • First character must be a letter.

    *
  • Can't end with a hyphen or contain two consecutive hyphens.

    *

Example: myrepinstance

*/ inline CreateReplicationInstanceRequest& WithReplicationInstanceIdentifier(const char* value) { SetReplicationInstanceIdentifier(value); return *this;} /** *

The amount of storage (in gigabytes) to be initially allocated for the * replication instance.

*/ inline int GetAllocatedStorage() const{ return m_allocatedStorage; } /** *

The amount of storage (in gigabytes) to be initially allocated for the * replication instance.

*/ inline bool AllocatedStorageHasBeenSet() const { return m_allocatedStorageHasBeenSet; } /** *

The amount of storage (in gigabytes) to be initially allocated for the * replication instance.

*/ inline void SetAllocatedStorage(int value) { m_allocatedStorageHasBeenSet = true; m_allocatedStorage = value; } /** *

The amount of storage (in gigabytes) to be initially allocated for the * replication instance.

*/ inline CreateReplicationInstanceRequest& WithAllocatedStorage(int value) { SetAllocatedStorage(value); return *this;} /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline const Aws::String& GetReplicationInstanceClass() const{ return m_replicationInstanceClass; } /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline bool ReplicationInstanceClassHasBeenSet() const { return m_replicationInstanceClassHasBeenSet; } /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline void SetReplicationInstanceClass(const Aws::String& value) { m_replicationInstanceClassHasBeenSet = true; m_replicationInstanceClass = value; } /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline void SetReplicationInstanceClass(Aws::String&& value) { m_replicationInstanceClassHasBeenSet = true; m_replicationInstanceClass = std::move(value); } /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline void SetReplicationInstanceClass(const char* value) { m_replicationInstanceClassHasBeenSet = true; m_replicationInstanceClass.assign(value); } /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline CreateReplicationInstanceRequest& WithReplicationInstanceClass(const Aws::String& value) { SetReplicationInstanceClass(value); return *this;} /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline CreateReplicationInstanceRequest& WithReplicationInstanceClass(Aws::String&& value) { SetReplicationInstanceClass(std::move(value)); return *this;} /** *

The compute and memory capacity of the replication instance as defined for * the specified replication instance class. For example to specify the instance * class dms.c4.large, set this parameter to "dms.c4.large".

*

For more information on the settings and capacities for the available * replication instance classes, see * Selecting the right AWS DMS replication instance for your migration.

*/ inline CreateReplicationInstanceRequest& WithReplicationInstanceClass(const char* value) { SetReplicationInstanceClass(value); return *this;} /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline const Aws::Vector& GetVpcSecurityGroupIds() const{ return m_vpcSecurityGroupIds; } /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline bool VpcSecurityGroupIdsHasBeenSet() const { return m_vpcSecurityGroupIdsHasBeenSet; } /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline void SetVpcSecurityGroupIds(const Aws::Vector& value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds = value; } /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline void SetVpcSecurityGroupIds(Aws::Vector&& value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds = std::move(value); } /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline CreateReplicationInstanceRequest& WithVpcSecurityGroupIds(const Aws::Vector& value) { SetVpcSecurityGroupIds(value); return *this;} /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline CreateReplicationInstanceRequest& WithVpcSecurityGroupIds(Aws::Vector&& value) { SetVpcSecurityGroupIds(std::move(value)); return *this;} /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline CreateReplicationInstanceRequest& AddVpcSecurityGroupIds(const Aws::String& value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds.push_back(value); return *this; } /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline CreateReplicationInstanceRequest& AddVpcSecurityGroupIds(Aws::String&& value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds.push_back(std::move(value)); return *this; } /** *

Specifies the VPC security group to be used with the replication instance. * The VPC security group must work with the VPC containing the replication * instance.

*/ inline CreateReplicationInstanceRequest& AddVpcSecurityGroupIds(const char* value) { m_vpcSecurityGroupIdsHasBeenSet = true; m_vpcSecurityGroupIds.push_back(value); return *this; } /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline const Aws::String& GetAvailabilityZone() const{ return m_availabilityZone; } /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline bool AvailabilityZoneHasBeenSet() const { return m_availabilityZoneHasBeenSet; } /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline void SetAvailabilityZone(const Aws::String& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = value; } /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline void SetAvailabilityZone(Aws::String&& value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone = std::move(value); } /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline void SetAvailabilityZone(const char* value) { m_availabilityZoneHasBeenSet = true; m_availabilityZone.assign(value); } /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline CreateReplicationInstanceRequest& WithAvailabilityZone(const Aws::String& value) { SetAvailabilityZone(value); return *this;} /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline CreateReplicationInstanceRequest& WithAvailabilityZone(Aws::String&& value) { SetAvailabilityZone(std::move(value)); return *this;} /** *

The Availability Zone where the replication instance will be created. The * default value is a random, system-chosen Availability Zone in the endpoint's AWS * Region, for example: us-east-1d

*/ inline CreateReplicationInstanceRequest& WithAvailabilityZone(const char* value) { SetAvailabilityZone(value); return *this;} /** *

A subnet group to associate with the replication instance.

*/ inline const Aws::String& GetReplicationSubnetGroupIdentifier() const{ return m_replicationSubnetGroupIdentifier; } /** *

A subnet group to associate with the replication instance.

*/ inline bool ReplicationSubnetGroupIdentifierHasBeenSet() const { return m_replicationSubnetGroupIdentifierHasBeenSet; } /** *

A subnet group to associate with the replication instance.

*/ inline void SetReplicationSubnetGroupIdentifier(const Aws::String& value) { m_replicationSubnetGroupIdentifierHasBeenSet = true; m_replicationSubnetGroupIdentifier = value; } /** *

A subnet group to associate with the replication instance.

*/ inline void SetReplicationSubnetGroupIdentifier(Aws::String&& value) { m_replicationSubnetGroupIdentifierHasBeenSet = true; m_replicationSubnetGroupIdentifier = std::move(value); } /** *

A subnet group to associate with the replication instance.

*/ inline void SetReplicationSubnetGroupIdentifier(const char* value) { m_replicationSubnetGroupIdentifierHasBeenSet = true; m_replicationSubnetGroupIdentifier.assign(value); } /** *

A subnet group to associate with the replication instance.

*/ inline CreateReplicationInstanceRequest& WithReplicationSubnetGroupIdentifier(const Aws::String& value) { SetReplicationSubnetGroupIdentifier(value); return *this;} /** *

A subnet group to associate with the replication instance.

*/ inline CreateReplicationInstanceRequest& WithReplicationSubnetGroupIdentifier(Aws::String&& value) { SetReplicationSubnetGroupIdentifier(std::move(value)); return *this;} /** *

A subnet group to associate with the replication instance.

*/ inline CreateReplicationInstanceRequest& WithReplicationSubnetGroupIdentifier(const char* value) { SetReplicationSubnetGroupIdentifier(value); return *this;} /** *

The weekly time range during which system maintenance can occur, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute * window.

*/ inline const Aws::String& GetPreferredMaintenanceWindow() const{ return m_preferredMaintenanceWindow; } /** *

The weekly time range during which system maintenance can occur, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute * window.

*/ inline bool PreferredMaintenanceWindowHasBeenSet() const { return m_preferredMaintenanceWindowHasBeenSet; } /** *

The weekly time range during which system maintenance can occur, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: 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, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: 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, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: 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, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute * window.

*/ inline CreateReplicationInstanceRequest& WithPreferredMaintenanceWindow(const Aws::String& value) { SetPreferredMaintenanceWindow(value); return *this;} /** *

The weekly time range during which system maintenance can occur, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute * window.

*/ inline CreateReplicationInstanceRequest& WithPreferredMaintenanceWindow(Aws::String&& value) { SetPreferredMaintenanceWindow(std::move(value)); return *this;} /** *

The weekly time range during which system maintenance can occur, in Universal * Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi *

Default: A 30-minute window selected at random from an 8-hour block of * time per AWS Region, occurring on a random day of the week.

Valid Days: * Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute * window.

*/ inline CreateReplicationInstanceRequest& WithPreferredMaintenanceWindow(const char* value) { SetPreferredMaintenanceWindow(value); return *this;} /** *

Specifies whether the replication instance is a Multi-AZ deployment. You * can't set the AvailabilityZone parameter if the Multi-AZ parameter * is set to true.

*/ inline bool GetMultiAZ() const{ return m_multiAZ; } /** *

Specifies whether the replication instance is a Multi-AZ deployment. You * can't set the AvailabilityZone parameter if the Multi-AZ parameter * is set to true.

*/ inline bool MultiAZHasBeenSet() const { return m_multiAZHasBeenSet; } /** *

Specifies whether the replication instance is a Multi-AZ deployment. You * can't set the AvailabilityZone parameter if the Multi-AZ parameter * is set to true.

*/ inline void SetMultiAZ(bool value) { m_multiAZHasBeenSet = true; m_multiAZ = value; } /** *

Specifies whether the replication instance is a Multi-AZ deployment. You * can't set the AvailabilityZone parameter if the Multi-AZ parameter * is set to true.

*/ inline CreateReplicationInstanceRequest& WithMultiAZ(bool value) { SetMultiAZ(value); return *this;} /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline const Aws::String& GetEngineVersion() const{ return m_engineVersion; } /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline bool EngineVersionHasBeenSet() const { return m_engineVersionHasBeenSet; } /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline void SetEngineVersion(const Aws::String& value) { m_engineVersionHasBeenSet = true; m_engineVersion = value; } /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline void SetEngineVersion(Aws::String&& value) { m_engineVersionHasBeenSet = true; m_engineVersion = std::move(value); } /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline void SetEngineVersion(const char* value) { m_engineVersionHasBeenSet = true; m_engineVersion.assign(value); } /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline CreateReplicationInstanceRequest& WithEngineVersion(const Aws::String& value) { SetEngineVersion(value); return *this;} /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline CreateReplicationInstanceRequest& WithEngineVersion(Aws::String&& value) { SetEngineVersion(std::move(value)); return *this;} /** *

The engine version number of the replication instance.

If an engine * version number is not specified when a replication instance is created, the * default is the latest engine version available.

*/ inline CreateReplicationInstanceRequest& WithEngineVersion(const char* value) { SetEngineVersion(value); return *this;} /** *

A value that indicates whether minor engine upgrades are applied * automatically to the replication instance during the maintenance window. This * parameter defaults to true.

Default: true

*/ inline bool GetAutoMinorVersionUpgrade() const{ return m_autoMinorVersionUpgrade; } /** *

A value that indicates whether minor engine upgrades are applied * automatically to the replication instance during the maintenance window. This * parameter defaults to true.

Default: true

*/ inline bool AutoMinorVersionUpgradeHasBeenSet() const { return m_autoMinorVersionUpgradeHasBeenSet; } /** *

A value that indicates whether minor engine upgrades are applied * automatically to the replication instance during the maintenance window. This * parameter defaults to true.

Default: true

*/ inline void SetAutoMinorVersionUpgrade(bool value) { m_autoMinorVersionUpgradeHasBeenSet = true; m_autoMinorVersionUpgrade = value; } /** *

A value that indicates whether minor engine upgrades are applied * automatically to the replication instance during the maintenance window. This * parameter defaults to true.

Default: true

*/ inline CreateReplicationInstanceRequest& WithAutoMinorVersionUpgrade(bool value) { SetAutoMinorVersionUpgrade(value); return *this;} /** *

One or more tags to be assigned to the replication instance.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

One or more tags to be assigned to the replication instance.

*/ inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; } /** *

One or more tags to be assigned to the replication instance.

*/ inline void SetTags(const Aws::Vector& value) { m_tagsHasBeenSet = true; m_tags = value; } /** *

One or more tags to be assigned to the replication instance.

*/ inline void SetTags(Aws::Vector&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); } /** *

One or more tags to be assigned to the replication instance.

*/ inline CreateReplicationInstanceRequest& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

One or more tags to be assigned to the replication instance.

*/ inline CreateReplicationInstanceRequest& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

One or more tags to be assigned to the replication instance.

*/ inline CreateReplicationInstanceRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; } /** *

One or more tags to be assigned to the replication instance.

*/ inline CreateReplicationInstanceRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline const Aws::String& GetKmsKeyId() const{ return m_kmsKeyId; } /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline bool KmsKeyIdHasBeenSet() const { return m_kmsKeyIdHasBeenSet; } /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline void SetKmsKeyId(const Aws::String& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = value; } /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline void SetKmsKeyId(Aws::String&& value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId = std::move(value); } /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline void SetKmsKeyId(const char* value) { m_kmsKeyIdHasBeenSet = true; m_kmsKeyId.assign(value); } /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline CreateReplicationInstanceRequest& WithKmsKeyId(const Aws::String& value) { SetKmsKeyId(value); return *this;} /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline CreateReplicationInstanceRequest& WithKmsKeyId(Aws::String&& value) { SetKmsKeyId(std::move(value)); return *this;} /** *

An AWS KMS key identifier that is used to encrypt the data on the replication * instance.

If you don't specify a value for the KmsKeyId * parameter, then AWS DMS uses your default encryption key.

AWS KMS creates * the default encryption key for your AWS account. Your AWS account has a * different default encryption key for each AWS Region.

*/ inline CreateReplicationInstanceRequest& WithKmsKeyId(const char* value) { SetKmsKeyId(value); return *this;} /** *

Specifies the accessibility options for the replication instance. A value of * true represents an instance with a public IP address. A value of * false represents an instance with a private IP address. The default * value is true.

*/ inline bool GetPubliclyAccessible() const{ return m_publiclyAccessible; } /** *

Specifies the accessibility options for the replication instance. A value of * true represents an instance with a public IP address. A value of * false represents an instance with a private IP address. The default * value is true.

*/ inline bool PubliclyAccessibleHasBeenSet() const { return m_publiclyAccessibleHasBeenSet; } /** *

Specifies the accessibility options for the replication instance. A value of * true represents an instance with a public IP address. A value of * false represents an instance with a private IP address. The default * value is true.

*/ inline void SetPubliclyAccessible(bool value) { m_publiclyAccessibleHasBeenSet = true; m_publiclyAccessible = value; } /** *

Specifies the accessibility options for the replication instance. A value of * true represents an instance with a public IP address. A value of * false represents an instance with a private IP address. The default * value is true.

*/ inline CreateReplicationInstanceRequest& WithPubliclyAccessible(bool value) { SetPubliclyAccessible(value); return *this;} /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline const Aws::String& GetDnsNameServers() const{ return m_dnsNameServers; } /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline bool DnsNameServersHasBeenSet() const { return m_dnsNameServersHasBeenSet; } /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline void SetDnsNameServers(const Aws::String& value) { m_dnsNameServersHasBeenSet = true; m_dnsNameServers = value; } /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline void SetDnsNameServers(Aws::String&& value) { m_dnsNameServersHasBeenSet = true; m_dnsNameServers = std::move(value); } /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline void SetDnsNameServers(const char* value) { m_dnsNameServersHasBeenSet = true; m_dnsNameServers.assign(value); } /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline CreateReplicationInstanceRequest& WithDnsNameServers(const Aws::String& value) { SetDnsNameServers(value); return *this;} /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline CreateReplicationInstanceRequest& WithDnsNameServers(Aws::String&& value) { SetDnsNameServers(std::move(value)); return *this;} /** *

A list of custom DNS name servers supported for the replication instance to * access your on-premise source or target database. This list overrides the * default name servers supported by the replication instance. You can specify a * comma-separated list of internet addresses for up to four on-premise DNS name * servers. For example: "1.1.1.1,2.2.2.2,3.3.3.3,4.4.4.4"

*/ inline CreateReplicationInstanceRequest& WithDnsNameServers(const char* value) { SetDnsNameServers(value); return *this;} private: Aws::String m_replicationInstanceIdentifier; bool m_replicationInstanceIdentifierHasBeenSet; int m_allocatedStorage; bool m_allocatedStorageHasBeenSet; Aws::String m_replicationInstanceClass; bool m_replicationInstanceClassHasBeenSet; Aws::Vector m_vpcSecurityGroupIds; bool m_vpcSecurityGroupIdsHasBeenSet; Aws::String m_availabilityZone; bool m_availabilityZoneHasBeenSet; Aws::String m_replicationSubnetGroupIdentifier; bool m_replicationSubnetGroupIdentifierHasBeenSet; Aws::String m_preferredMaintenanceWindow; bool m_preferredMaintenanceWindowHasBeenSet; bool m_multiAZ; bool m_multiAZHasBeenSet; Aws::String m_engineVersion; bool m_engineVersionHasBeenSet; bool m_autoMinorVersionUpgrade; bool m_autoMinorVersionUpgradeHasBeenSet; Aws::Vector m_tags; bool m_tagsHasBeenSet; Aws::String m_kmsKeyId; bool m_kmsKeyIdHasBeenSet; bool m_publiclyAccessible; bool m_publiclyAccessibleHasBeenSet; Aws::String m_dnsNameServers; bool m_dnsNameServersHasBeenSet; }; } // namespace Model } // namespace DatabaseMigrationService } // namespace Aws