/** * 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 Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace DynamoDB { namespace Model { /** *

Represents the auto scaling settings of a replica that will be * modified.

See Also:

AWS * API Reference

*/ class ReplicaAutoScalingUpdate { public: AWS_DYNAMODB_API ReplicaAutoScalingUpdate(); AWS_DYNAMODB_API ReplicaAutoScalingUpdate(Aws::Utils::Json::JsonView jsonValue); AWS_DYNAMODB_API ReplicaAutoScalingUpdate& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_DYNAMODB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The Region where the replica exists.

*/ inline const Aws::String& GetRegionName() const{ return m_regionName; } /** *

The Region where the replica exists.

*/ inline bool RegionNameHasBeenSet() const { return m_regionNameHasBeenSet; } /** *

The Region where the replica exists.

*/ inline void SetRegionName(const Aws::String& value) { m_regionNameHasBeenSet = true; m_regionName = value; } /** *

The Region where the replica exists.

*/ inline void SetRegionName(Aws::String&& value) { m_regionNameHasBeenSet = true; m_regionName = std::move(value); } /** *

The Region where the replica exists.

*/ inline void SetRegionName(const char* value) { m_regionNameHasBeenSet = true; m_regionName.assign(value); } /** *

The Region where the replica exists.

*/ inline ReplicaAutoScalingUpdate& WithRegionName(const Aws::String& value) { SetRegionName(value); return *this;} /** *

The Region where the replica exists.

*/ inline ReplicaAutoScalingUpdate& WithRegionName(Aws::String&& value) { SetRegionName(std::move(value)); return *this;} /** *

The Region where the replica exists.

*/ inline ReplicaAutoScalingUpdate& WithRegionName(const char* value) { SetRegionName(value); return *this;} /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline const Aws::Vector& GetReplicaGlobalSecondaryIndexUpdates() const{ return m_replicaGlobalSecondaryIndexUpdates; } /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline bool ReplicaGlobalSecondaryIndexUpdatesHasBeenSet() const { return m_replicaGlobalSecondaryIndexUpdatesHasBeenSet; } /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline void SetReplicaGlobalSecondaryIndexUpdates(const Aws::Vector& value) { m_replicaGlobalSecondaryIndexUpdatesHasBeenSet = true; m_replicaGlobalSecondaryIndexUpdates = value; } /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline void SetReplicaGlobalSecondaryIndexUpdates(Aws::Vector&& value) { m_replicaGlobalSecondaryIndexUpdatesHasBeenSet = true; m_replicaGlobalSecondaryIndexUpdates = std::move(value); } /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline ReplicaAutoScalingUpdate& WithReplicaGlobalSecondaryIndexUpdates(const Aws::Vector& value) { SetReplicaGlobalSecondaryIndexUpdates(value); return *this;} /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline ReplicaAutoScalingUpdate& WithReplicaGlobalSecondaryIndexUpdates(Aws::Vector&& value) { SetReplicaGlobalSecondaryIndexUpdates(std::move(value)); return *this;} /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline ReplicaAutoScalingUpdate& AddReplicaGlobalSecondaryIndexUpdates(const ReplicaGlobalSecondaryIndexAutoScalingUpdate& value) { m_replicaGlobalSecondaryIndexUpdatesHasBeenSet = true; m_replicaGlobalSecondaryIndexUpdates.push_back(value); return *this; } /** *

Represents the auto scaling settings of global secondary indexes that will be * modified.

*/ inline ReplicaAutoScalingUpdate& AddReplicaGlobalSecondaryIndexUpdates(ReplicaGlobalSecondaryIndexAutoScalingUpdate&& value) { m_replicaGlobalSecondaryIndexUpdatesHasBeenSet = true; m_replicaGlobalSecondaryIndexUpdates.push_back(std::move(value)); return *this; } inline const AutoScalingSettingsUpdate& GetReplicaProvisionedReadCapacityAutoScalingUpdate() const{ return m_replicaProvisionedReadCapacityAutoScalingUpdate; } inline bool ReplicaProvisionedReadCapacityAutoScalingUpdateHasBeenSet() const { return m_replicaProvisionedReadCapacityAutoScalingUpdateHasBeenSet; } inline void SetReplicaProvisionedReadCapacityAutoScalingUpdate(const AutoScalingSettingsUpdate& value) { m_replicaProvisionedReadCapacityAutoScalingUpdateHasBeenSet = true; m_replicaProvisionedReadCapacityAutoScalingUpdate = value; } inline void SetReplicaProvisionedReadCapacityAutoScalingUpdate(AutoScalingSettingsUpdate&& value) { m_replicaProvisionedReadCapacityAutoScalingUpdateHasBeenSet = true; m_replicaProvisionedReadCapacityAutoScalingUpdate = std::move(value); } inline ReplicaAutoScalingUpdate& WithReplicaProvisionedReadCapacityAutoScalingUpdate(const AutoScalingSettingsUpdate& value) { SetReplicaProvisionedReadCapacityAutoScalingUpdate(value); return *this;} inline ReplicaAutoScalingUpdate& WithReplicaProvisionedReadCapacityAutoScalingUpdate(AutoScalingSettingsUpdate&& value) { SetReplicaProvisionedReadCapacityAutoScalingUpdate(std::move(value)); return *this;} private: Aws::String m_regionName; bool m_regionNameHasBeenSet = false; Aws::Vector m_replicaGlobalSecondaryIndexUpdates; bool m_replicaGlobalSecondaryIndexUpdatesHasBeenSet = false; AutoScalingSettingsUpdate m_replicaProvisionedReadCapacityAutoScalingUpdate; bool m_replicaProvisionedReadCapacityAutoScalingUpdateHasBeenSet = false; }; } // namespace Model } // namespace DynamoDB } // namespace Aws