/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace DynamoDB { namespace Model { /** *

Represents the provisioned throughput settings for a specified table or * index. The settings can be modified using the UpdateTable * operation.

For current minimum and maximum provisioned throughput values, * see Service, * Account, and Table Quotas in the Amazon DynamoDB Developer * Guide.

See Also:

AWS * API Reference

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

The maximum number of strongly consistent reads consumed per second before * DynamoDB returns a ThrottlingException. For more information, see * Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline long long GetReadCapacityUnits() const{ return m_readCapacityUnits; } /** *

The maximum number of strongly consistent reads consumed per second before * DynamoDB returns a ThrottlingException. For more information, see * Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline bool ReadCapacityUnitsHasBeenSet() const { return m_readCapacityUnitsHasBeenSet; } /** *

The maximum number of strongly consistent reads consumed per second before * DynamoDB returns a ThrottlingException. For more information, see * Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline void SetReadCapacityUnits(long long value) { m_readCapacityUnitsHasBeenSet = true; m_readCapacityUnits = value; } /** *

The maximum number of strongly consistent reads consumed per second before * DynamoDB returns a ThrottlingException. For more information, see * Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline ProvisionedThroughput& WithReadCapacityUnits(long long value) { SetReadCapacityUnits(value); return *this;} /** *

The maximum number of writes consumed per second before DynamoDB returns a * ThrottlingException. For more information, see Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline long long GetWriteCapacityUnits() const{ return m_writeCapacityUnits; } /** *

The maximum number of writes consumed per second before DynamoDB returns a * ThrottlingException. For more information, see Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline bool WriteCapacityUnitsHasBeenSet() const { return m_writeCapacityUnitsHasBeenSet; } /** *

The maximum number of writes consumed per second before DynamoDB returns a * ThrottlingException. For more information, see Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline void SetWriteCapacityUnits(long long value) { m_writeCapacityUnitsHasBeenSet = true; m_writeCapacityUnits = value; } /** *

The maximum number of writes consumed per second before DynamoDB returns a * ThrottlingException. For more information, see Specifying * Read and Write Requirements in the Amazon DynamoDB Developer * Guide.

If read/write capacity mode is PAY_PER_REQUEST * the value is set to 0.

*/ inline ProvisionedThroughput& WithWriteCapacityUnits(long long value) { SetWriteCapacityUnits(value); return *this;} private: long long m_readCapacityUnits; bool m_readCapacityUnitsHasBeenSet = false; long long m_writeCapacityUnits; bool m_writeCapacityUnitsHasBeenSet = false; }; } // namespace Model } // namespace DynamoDB } // namespace Aws