/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents a replica to be created.See Also:
AWS
* API Reference
The Region where the new replica will be created.
*/ inline const Aws::String& GetRegionName() const{ return m_regionName; } /** *The Region where the new replica will be created.
*/ inline bool RegionNameHasBeenSet() const { return m_regionNameHasBeenSet; } /** *The Region where the new replica will be created.
*/ inline void SetRegionName(const Aws::String& value) { m_regionNameHasBeenSet = true; m_regionName = value; } /** *The Region where the new replica will be created.
*/ inline void SetRegionName(Aws::String&& value) { m_regionNameHasBeenSet = true; m_regionName = std::move(value); } /** *The Region where the new replica will be created.
*/ inline void SetRegionName(const char* value) { m_regionNameHasBeenSet = true; m_regionName.assign(value); } /** *The Region where the new replica will be created.
*/ inline CreateReplicationGroupMemberAction& WithRegionName(const Aws::String& value) { SetRegionName(value); return *this;} /** *The Region where the new replica will be created.
*/ inline CreateReplicationGroupMemberAction& WithRegionName(Aws::String&& value) { SetRegionName(std::move(value)); return *this;} /** *The Region where the new replica will be created.
*/ inline CreateReplicationGroupMemberAction& WithRegionName(const char* value) { SetRegionName(value); return *this;} /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline const Aws::String& GetKMSMasterKeyId() const{ return m_kMSMasterKeyId; } /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline bool KMSMasterKeyIdHasBeenSet() const { return m_kMSMasterKeyIdHasBeenSet; } /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline void SetKMSMasterKeyId(const Aws::String& value) { m_kMSMasterKeyIdHasBeenSet = true; m_kMSMasterKeyId = value; } /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline void SetKMSMasterKeyId(Aws::String&& value) { m_kMSMasterKeyIdHasBeenSet = true; m_kMSMasterKeyId = std::move(value); } /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline void SetKMSMasterKeyId(const char* value) { m_kMSMasterKeyIdHasBeenSet = true; m_kMSMasterKeyId.assign(value); } /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline CreateReplicationGroupMemberAction& WithKMSMasterKeyId(const Aws::String& value) { SetKMSMasterKeyId(value); return *this;} /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline CreateReplicationGroupMemberAction& WithKMSMasterKeyId(Aws::String&& value) { SetKMSMasterKeyId(std::move(value)); return *this;} /** *The AWS KMS customer master key (CMK) that should be used for AWS KMS * encryption in the new replica. To specify a CMK, use its key ID, Amazon Resource * Name (ARN), alias name, or alias ARN. Note that you should only provide this * parameter if the key is different from the default DynamoDB KMS master key * alias/aws/dynamodb.
*/ inline CreateReplicationGroupMemberAction& WithKMSMasterKeyId(const char* value) { SetKMSMasterKeyId(value); return *this;} /** *Replica-specific provisioned throughput. If not specified, uses the source * table's provisioned throughput settings.
*/ inline const ProvisionedThroughputOverride& GetProvisionedThroughputOverride() const{ return m_provisionedThroughputOverride; } /** *Replica-specific provisioned throughput. If not specified, uses the source * table's provisioned throughput settings.
*/ inline bool ProvisionedThroughputOverrideHasBeenSet() const { return m_provisionedThroughputOverrideHasBeenSet; } /** *Replica-specific provisioned throughput. If not specified, uses the source * table's provisioned throughput settings.
*/ inline void SetProvisionedThroughputOverride(const ProvisionedThroughputOverride& value) { m_provisionedThroughputOverrideHasBeenSet = true; m_provisionedThroughputOverride = value; } /** *Replica-specific provisioned throughput. If not specified, uses the source * table's provisioned throughput settings.
*/ inline void SetProvisionedThroughputOverride(ProvisionedThroughputOverride&& value) { m_provisionedThroughputOverrideHasBeenSet = true; m_provisionedThroughputOverride = std::move(value); } /** *Replica-specific provisioned throughput. If not specified, uses the source * table's provisioned throughput settings.
*/ inline CreateReplicationGroupMemberAction& WithProvisionedThroughputOverride(const ProvisionedThroughputOverride& value) { SetProvisionedThroughputOverride(value); return *this;} /** *Replica-specific provisioned throughput. If not specified, uses the source * table's provisioned throughput settings.
*/ inline CreateReplicationGroupMemberAction& WithProvisionedThroughputOverride(ProvisionedThroughputOverride&& value) { SetProvisionedThroughputOverride(std::move(value)); return *this;} /** *Replica-specific global secondary index settings.
*/ inline const Aws::VectorReplica-specific global secondary index settings.
*/ inline bool GlobalSecondaryIndexesHasBeenSet() const { return m_globalSecondaryIndexesHasBeenSet; } /** *Replica-specific global secondary index settings.
*/ inline void SetGlobalSecondaryIndexes(const Aws::VectorReplica-specific global secondary index settings.
*/ inline void SetGlobalSecondaryIndexes(Aws::VectorReplica-specific global secondary index settings.
*/ inline CreateReplicationGroupMemberAction& WithGlobalSecondaryIndexes(const Aws::VectorReplica-specific global secondary index settings.
*/ inline CreateReplicationGroupMemberAction& WithGlobalSecondaryIndexes(Aws::VectorReplica-specific global secondary index settings.
*/ inline CreateReplicationGroupMemberAction& AddGlobalSecondaryIndexes(const ReplicaGlobalSecondaryIndex& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.push_back(value); return *this; } /** *Replica-specific global secondary index settings.
*/ inline CreateReplicationGroupMemberAction& AddGlobalSecondaryIndexes(ReplicaGlobalSecondaryIndex&& value) { m_globalSecondaryIndexesHasBeenSet = true; m_globalSecondaryIndexes.push_back(std::move(value)); return *this; } private: Aws::String m_regionName; bool m_regionNameHasBeenSet; Aws::String m_kMSMasterKeyId; bool m_kMSMasterKeyIdHasBeenSet; ProvisionedThroughputOverride m_provisionedThroughputOverride; bool m_provisionedThroughputOverrideHasBeenSet; Aws::Vector