/** * 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 CreateReplicationSubnetGroupRequest : public DatabaseMigrationServiceRequest { public: AWS_DATABASEMIGRATIONSERVICE_API CreateReplicationSubnetGroupRequest(); // 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 "CreateReplicationSubnetGroup"; } AWS_DATABASEMIGRATIONSERVICE_API Aws::String SerializePayload() const override; AWS_DATABASEMIGRATIONSERVICE_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The name for the replication subnet group. This value is stored as a * lowercase string.

Constraints: Must contain no more than 255 alphanumeric * characters, periods, spaces, underscores, or hyphens. Must not be "default".

*

Example: mySubnetgroup

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

The description for the subnet group.

*/ inline const Aws::String& GetReplicationSubnetGroupDescription() const{ return m_replicationSubnetGroupDescription; } /** *

The description for the subnet group.

*/ inline bool ReplicationSubnetGroupDescriptionHasBeenSet() const { return m_replicationSubnetGroupDescriptionHasBeenSet; } /** *

The description for the subnet group.

*/ inline void SetReplicationSubnetGroupDescription(const Aws::String& value) { m_replicationSubnetGroupDescriptionHasBeenSet = true; m_replicationSubnetGroupDescription = value; } /** *

The description for the subnet group.

*/ inline void SetReplicationSubnetGroupDescription(Aws::String&& value) { m_replicationSubnetGroupDescriptionHasBeenSet = true; m_replicationSubnetGroupDescription = std::move(value); } /** *

The description for the subnet group.

*/ inline void SetReplicationSubnetGroupDescription(const char* value) { m_replicationSubnetGroupDescriptionHasBeenSet = true; m_replicationSubnetGroupDescription.assign(value); } /** *

The description for the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& WithReplicationSubnetGroupDescription(const Aws::String& value) { SetReplicationSubnetGroupDescription(value); return *this;} /** *

The description for the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& WithReplicationSubnetGroupDescription(Aws::String&& value) { SetReplicationSubnetGroupDescription(std::move(value)); return *this;} /** *

The description for the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& WithReplicationSubnetGroupDescription(const char* value) { SetReplicationSubnetGroupDescription(value); return *this;} /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline const Aws::Vector& GetSubnetIds() const{ return m_subnetIds; } /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline bool SubnetIdsHasBeenSet() const { return m_subnetIdsHasBeenSet; } /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline void SetSubnetIds(const Aws::Vector& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = value; } /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline void SetSubnetIds(Aws::Vector&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds = std::move(value); } /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& WithSubnetIds(const Aws::Vector& value) { SetSubnetIds(value); return *this;} /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& WithSubnetIds(Aws::Vector&& value) { SetSubnetIds(std::move(value)); return *this;} /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& AddSubnetIds(const Aws::String& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& AddSubnetIds(Aws::String&& value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(std::move(value)); return *this; } /** *

One or more subnet IDs to be assigned to the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& AddSubnetIds(const char* value) { m_subnetIdsHasBeenSet = true; m_subnetIds.push_back(value); return *this; } /** *

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

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

One or more tags to be assigned to the subnet group.

*/ inline CreateReplicationSubnetGroupRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; } private: Aws::String m_replicationSubnetGroupIdentifier; bool m_replicationSubnetGroupIdentifierHasBeenSet = false; Aws::String m_replicationSubnetGroupDescription; bool m_replicationSubnetGroupDescriptionHasBeenSet = false; Aws::Vector m_subnetIds; bool m_subnetIdsHasBeenSet = false; Aws::Vector m_tags; bool m_tagsHasBeenSet = false; }; } // namespace Model } // namespace DatabaseMigrationService } // namespace Aws