/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Represents the properties of a table.See Also:
AWS
* API Reference
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
An array of AttributeDefinition
objects. Each of these objects
* describes one attribute in the table and index key schema.
Each
* AttributeDefinition
object in this array is composed of:
AttributeName
- The name of the attribute.
AttributeType
- The data type for the attribute.
The name of the table.
*/ inline const Aws::String& GetTableName() const{ return m_tableName; } /** *The name of the table.
*/ inline bool TableNameHasBeenSet() const { return m_tableNameHasBeenSet; } /** *The name of the table.
*/ inline void SetTableName(const Aws::String& value) { m_tableNameHasBeenSet = true; m_tableName = value; } /** *The name of the table.
*/ inline void SetTableName(Aws::String&& value) { m_tableNameHasBeenSet = true; m_tableName = std::move(value); } /** *The name of the table.
*/ inline void SetTableName(const char* value) { m_tableNameHasBeenSet = true; m_tableName.assign(value); } /** *The name of the table.
*/ inline TableDescription& WithTableName(const Aws::String& value) { SetTableName(value); return *this;} /** *The name of the table.
*/ inline TableDescription& WithTableName(Aws::String&& value) { SetTableName(std::move(value)); return *this;} /** *The name of the table.
*/ inline TableDescription& WithTableName(const char* value) { SetTableName(value); return *this;} /** *The primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline const Aws::VectorThe primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline bool KeySchemaHasBeenSet() const { return m_keySchemaHasBeenSet; } /** *The primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline void SetKeySchema(const Aws::VectorThe primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline void SetKeySchema(Aws::VectorThe primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline TableDescription& WithKeySchema(const Aws::VectorThe primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline TableDescription& WithKeySchema(Aws::VectorThe primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline TableDescription& AddKeySchema(const KeySchemaElement& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(value); return *this; } /** *The primary key structure for the table. Each KeySchemaElement
* consists of:
AttributeName
- The name of the
* attribute.
KeyType
- The role of the
* attribute:
HASH
- partition key
RANGE
- sort key
The partition key of * an item is also known as its hash attribute. The term "hash attribute" * derives from DynamoDB's usage of an internal hash function to evenly distribute * data items across partitions, based on their partition key values.
The * sort key of an item is also known as its range attribute. The term "range * attribute" derives from the way DynamoDB stores items with the same partition * key physically close together, in sorted order by the sort key value.
*For more information about primary keys, see Primary * Key in the Amazon DynamoDB Developer Guide.
*/ inline TableDescription& AddKeySchema(KeySchemaElement&& value) { m_keySchemaHasBeenSet = true; m_keySchema.push_back(std::move(value)); return *this; } /** *The current state of the table:
CREATING
- The
* table is being created.
UPDATING
- The
* table/index configuration is being updated. The table/index remains available
* for data operations when UPDATING
.
* DELETING
- The table is being deleted.
* ACTIVE
- The table is ready for use.
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
- The KMS key used to encrypt
* the table in inaccessible. Table operations may fail due to failure to use the
* KMS key. DynamoDB will initiate the table archival process when a table's KMS
* key remains inaccessible for more than seven days.
* ARCHIVING
- The table is being archived. Operations are not allowed
* until archival is complete.
ARCHIVED
- The
* table has been archived. See the ArchivalReason for more information.
The current state of the table:
CREATING
- The
* table is being created.
UPDATING
- The
* table/index configuration is being updated. The table/index remains available
* for data operations when UPDATING
.
* DELETING
- The table is being deleted.
* ACTIVE
- The table is ready for use.
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
- The KMS key used to encrypt
* the table in inaccessible. Table operations may fail due to failure to use the
* KMS key. DynamoDB will initiate the table archival process when a table's KMS
* key remains inaccessible for more than seven days.
* ARCHIVING
- The table is being archived. Operations are not allowed
* until archival is complete.
ARCHIVED
- The
* table has been archived. See the ArchivalReason for more information.
The current state of the table:
CREATING
- The
* table is being created.
UPDATING
- The
* table/index configuration is being updated. The table/index remains available
* for data operations when UPDATING
.
* DELETING
- The table is being deleted.
* ACTIVE
- The table is ready for use.
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
- The KMS key used to encrypt
* the table in inaccessible. Table operations may fail due to failure to use the
* KMS key. DynamoDB will initiate the table archival process when a table's KMS
* key remains inaccessible for more than seven days.
* ARCHIVING
- The table is being archived. Operations are not allowed
* until archival is complete.
ARCHIVED
- The
* table has been archived. See the ArchivalReason for more information.
The current state of the table:
CREATING
- The
* table is being created.
UPDATING
- The
* table/index configuration is being updated. The table/index remains available
* for data operations when UPDATING
.
* DELETING
- The table is being deleted.
* ACTIVE
- The table is ready for use.
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
- The KMS key used to encrypt
* the table in inaccessible. Table operations may fail due to failure to use the
* KMS key. DynamoDB will initiate the table archival process when a table's KMS
* key remains inaccessible for more than seven days.
* ARCHIVING
- The table is being archived. Operations are not allowed
* until archival is complete.
ARCHIVED
- The
* table has been archived. See the ArchivalReason for more information.
The current state of the table:
CREATING
- The
* table is being created.
UPDATING
- The
* table/index configuration is being updated. The table/index remains available
* for data operations when UPDATING
.
* DELETING
- The table is being deleted.
* ACTIVE
- The table is ready for use.
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
- The KMS key used to encrypt
* the table in inaccessible. Table operations may fail due to failure to use the
* KMS key. DynamoDB will initiate the table archival process when a table's KMS
* key remains inaccessible for more than seven days.
* ARCHIVING
- The table is being archived. Operations are not allowed
* until archival is complete.
ARCHIVED
- The
* table has been archived. See the ArchivalReason for more information.
The current state of the table:
CREATING
- The
* table is being created.
UPDATING
- The
* table/index configuration is being updated. The table/index remains available
* for data operations when UPDATING
.
* DELETING
- The table is being deleted.
* ACTIVE
- The table is ready for use.
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
- The KMS key used to encrypt
* the table in inaccessible. Table operations may fail due to failure to use the
* KMS key. DynamoDB will initiate the table archival process when a table's KMS
* key remains inaccessible for more than seven days.
* ARCHIVING
- The table is being archived. Operations are not allowed
* until archival is complete.
ARCHIVED
- The
* table has been archived. See the ArchivalReason for more information.
The date and time when the table was created, in UNIX epoch time format.
*/ inline const Aws::Utils::DateTime& GetCreationDateTime() const{ return m_creationDateTime; } /** *The date and time when the table was created, in UNIX epoch time format.
*/ inline bool CreationDateTimeHasBeenSet() const { return m_creationDateTimeHasBeenSet; } /** *The date and time when the table was created, in UNIX epoch time format.
*/ inline void SetCreationDateTime(const Aws::Utils::DateTime& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = value; } /** *The date and time when the table was created, in UNIX epoch time format.
*/ inline void SetCreationDateTime(Aws::Utils::DateTime&& value) { m_creationDateTimeHasBeenSet = true; m_creationDateTime = std::move(value); } /** *The date and time when the table was created, in UNIX epoch time format.
*/ inline TableDescription& WithCreationDateTime(const Aws::Utils::DateTime& value) { SetCreationDateTime(value); return *this;} /** *The date and time when the table was created, in UNIX epoch time format.
*/ inline TableDescription& WithCreationDateTime(Aws::Utils::DateTime&& value) { SetCreationDateTime(std::move(value)); return *this;} /** *The provisioned throughput settings for the table, consisting of read and * write capacity units, along with data about increases and decreases.
*/ inline const ProvisionedThroughputDescription& GetProvisionedThroughput() const{ return m_provisionedThroughput; } /** *The provisioned throughput settings for the table, consisting of read and * write capacity units, along with data about increases and decreases.
*/ inline bool ProvisionedThroughputHasBeenSet() const { return m_provisionedThroughputHasBeenSet; } /** *The provisioned throughput settings for the table, consisting of read and * write capacity units, along with data about increases and decreases.
*/ inline void SetProvisionedThroughput(const ProvisionedThroughputDescription& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = value; } /** *The provisioned throughput settings for the table, consisting of read and * write capacity units, along with data about increases and decreases.
*/ inline void SetProvisionedThroughput(ProvisionedThroughputDescription&& value) { m_provisionedThroughputHasBeenSet = true; m_provisionedThroughput = std::move(value); } /** *The provisioned throughput settings for the table, consisting of read and * write capacity units, along with data about increases and decreases.
*/ inline TableDescription& WithProvisionedThroughput(const ProvisionedThroughputDescription& value) { SetProvisionedThroughput(value); return *this;} /** *The provisioned throughput settings for the table, consisting of read and * write capacity units, along with data about increases and decreases.
*/ inline TableDescription& WithProvisionedThroughput(ProvisionedThroughputDescription&& value) { SetProvisionedThroughput(std::move(value)); return *this;} /** *The total size of the specified table, in bytes. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline long long GetTableSizeBytes() const{ return m_tableSizeBytes; } /** *The total size of the specified table, in bytes. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline bool TableSizeBytesHasBeenSet() const { return m_tableSizeBytesHasBeenSet; } /** *The total size of the specified table, in bytes. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline void SetTableSizeBytes(long long value) { m_tableSizeBytesHasBeenSet = true; m_tableSizeBytes = value; } /** *The total size of the specified table, in bytes. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline TableDescription& WithTableSizeBytes(long long value) { SetTableSizeBytes(value); return *this;} /** *The number of items in the specified table. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline long long GetItemCount() const{ return m_itemCount; } /** *The number of items in the specified table. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline bool ItemCountHasBeenSet() const { return m_itemCountHasBeenSet; } /** *The number of items in the specified table. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline void SetItemCount(long long value) { m_itemCountHasBeenSet = true; m_itemCount = value; } /** *The number of items in the specified table. DynamoDB updates this value * approximately every six hours. Recent changes might not be reflected in this * value.
*/ inline TableDescription& WithItemCount(long long value) { SetItemCount(value); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline const Aws::String& GetTableArn() const{ return m_tableArn; } /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline bool TableArnHasBeenSet() const { return m_tableArnHasBeenSet; } /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline void SetTableArn(const Aws::String& value) { m_tableArnHasBeenSet = true; m_tableArn = value; } /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline void SetTableArn(Aws::String&& value) { m_tableArnHasBeenSet = true; m_tableArn = std::move(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline void SetTableArn(const char* value) { m_tableArnHasBeenSet = true; m_tableArn.assign(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline TableDescription& WithTableArn(const Aws::String& value) { SetTableArn(value); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline TableDescription& WithTableArn(Aws::String&& value) { SetTableArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the table.
*/ inline TableDescription& WithTableArn(const char* value) { SetTableArn(value); return *this;} /** *Unique identifier for the table for which the backup was created.
*/ inline const Aws::String& GetTableId() const{ return m_tableId; } /** *Unique identifier for the table for which the backup was created.
*/ inline bool TableIdHasBeenSet() const { return m_tableIdHasBeenSet; } /** *Unique identifier for the table for which the backup was created.
*/ inline void SetTableId(const Aws::String& value) { m_tableIdHasBeenSet = true; m_tableId = value; } /** *Unique identifier for the table for which the backup was created.
*/ inline void SetTableId(Aws::String&& value) { m_tableIdHasBeenSet = true; m_tableId = std::move(value); } /** *Unique identifier for the table for which the backup was created.
*/ inline void SetTableId(const char* value) { m_tableIdHasBeenSet = true; m_tableId.assign(value); } /** *Unique identifier for the table for which the backup was created.
*/ inline TableDescription& WithTableId(const Aws::String& value) { SetTableId(value); return *this;} /** *Unique identifier for the table for which the backup was created.
*/ inline TableDescription& WithTableId(Aws::String&& value) { SetTableId(std::move(value)); return *this;} /** *Unique identifier for the table for which the backup was created.
*/ inline TableDescription& WithTableId(const char* value) { SetTableId(value); return *this;} /** *Contains the details for the read/write capacity mode.
*/ inline const BillingModeSummary& GetBillingModeSummary() const{ return m_billingModeSummary; } /** *Contains the details for the read/write capacity mode.
*/ inline bool BillingModeSummaryHasBeenSet() const { return m_billingModeSummaryHasBeenSet; } /** *Contains the details for the read/write capacity mode.
*/ inline void SetBillingModeSummary(const BillingModeSummary& value) { m_billingModeSummaryHasBeenSet = true; m_billingModeSummary = value; } /** *Contains the details for the read/write capacity mode.
*/ inline void SetBillingModeSummary(BillingModeSummary&& value) { m_billingModeSummaryHasBeenSet = true; m_billingModeSummary = std::move(value); } /** *Contains the details for the read/write capacity mode.
*/ inline TableDescription& WithBillingModeSummary(const BillingModeSummary& value) { SetBillingModeSummary(value); return *this;} /** *Contains the details for the read/write capacity mode.
*/ inline TableDescription& WithBillingModeSummary(BillingModeSummary&& value) { SetBillingModeSummary(std::move(value)); return *this;} /** *Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
Represents one or more local secondary indexes on the table. Each index is * scoped to a given partition key value. Tables with one or more local secondary * indexes are subject to an item collection size limit, where the amount of data * within a given item collection cannot exceed 10 GB. Each element is composed * of:
IndexName
- The name of the local secondary
* index.
KeySchema
- Specifies the complete index
* key schema. The attribute names in the key schema must be between 1 and 255
* characters (inclusive). The key schema must begin with the same partition key as
* the table.
Projection
- Specifies attributes
* that are copied (projected) from the table into the index. These are in addition
* to the primary key attributes and index key attributes, which are automatically
* projected. Each attribute specification is composed of:
* ProjectionType
- One of the following:
* KEYS_ONLY
- Only the index and primary keys are projected into the
* index.
INCLUDE
- Only the specified table
* attributes are projected into the index. The list of projected attributes is in
* NonKeyAttributes
.
ALL
- All of the
* table attributes are projected into the index.
* NonKeyAttributes
- A list of one or more non-key attribute names
* that are projected into the secondary index. The total count of attributes
* provided in NonKeyAttributes
, summed across all of the secondary
* indexes, must not exceed 100. If you project the same attribute into two
* different indexes, this counts as two distinct attributes when determining the
* total.
IndexSizeBytes
- Represents
* the total size of the index, in bytes. DynamoDB updates this value approximately
* every six hours. Recent changes might not be reflected in this value.
ItemCount
- Represents the number of items in the index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The global secondary indexes, if any, on the table. Each index is scoped to a * given partition key value. Each element is composed of:
* Backfilling
- If true, then the index is currently in the
* backfilling phase. Backfilling occurs only when a new global secondary index is
* added to the table. It is the process by which DynamoDB populates the new index
* with data from the table. (This attribute does not appear for indexes that were
* created during a CreateTable
operation.)
You can delete an
* index that is being created during the Backfilling
phase when
* IndexStatus
is set to CREATING and Backfilling
is
* true. You can't delete the index that is being created when
* IndexStatus
is set to CREATING and Backfilling
is
* false. (This attribute does not appear for indexes that were created during a
* CreateTable
operation.)
IndexName
-
* The name of the global secondary index.
* IndexSizeBytes
- The total size of the global secondary index, in
* bytes. DynamoDB updates this value approximately every six hours. Recent changes
* might not be reflected in this value.
* IndexStatus
- The current status of the global secondary index:
CREATING
- The index is being created.
UPDATING
- The index is being updated.
* DELETING
- The index is being deleted.
* ACTIVE
- The index is ready for use.
* ItemCount
- The number of items in the global secondary index.
* DynamoDB updates this value approximately every six hours. Recent changes might
* not be reflected in this value.
KeySchema
-
* Specifies the complete index key schema. The attribute names in the key schema
* must be between 1 and 255 characters (inclusive). The key schema must begin with
* the same partition key as the table.
Projection
* - Specifies attributes that are copied (projected) from the table into the
* index. These are in addition to the primary key attributes and index key
* attributes, which are automatically projected. Each attribute specification is
* composed of:
ProjectionType
- One of the
* following:
KEYS_ONLY
- Only the index and primary
* keys are projected into the index.
INCLUDE
- In
* addition to the attributes described in KEYS_ONLY
, the secondary
* index will include other non-key attributes that you specify.
* ALL
- All of the table attributes are projected into the index.
NonKeyAttributes
- A list of one or more
* non-key attribute names that are projected into the secondary index. The total
* count of attributes provided in NonKeyAttributes
, summed across all
* of the secondary indexes, must not exceed 100. If you project the same attribute
* into two different indexes, this counts as two distinct attributes when
* determining the total.
* ProvisionedThroughput
- The provisioned throughput settings for the
* global secondary index, consisting of read and write capacity units, along with
* data about increases and decreases.
If the table is in the
* DELETING
state, no information about indexes will be returned.
The current DynamoDB Streams configuration for the table.
*/ inline const StreamSpecification& GetStreamSpecification() const{ return m_streamSpecification; } /** *The current DynamoDB Streams configuration for the table.
*/ inline bool StreamSpecificationHasBeenSet() const { return m_streamSpecificationHasBeenSet; } /** *The current DynamoDB Streams configuration for the table.
*/ inline void SetStreamSpecification(const StreamSpecification& value) { m_streamSpecificationHasBeenSet = true; m_streamSpecification = value; } /** *The current DynamoDB Streams configuration for the table.
*/ inline void SetStreamSpecification(StreamSpecification&& value) { m_streamSpecificationHasBeenSet = true; m_streamSpecification = std::move(value); } /** *The current DynamoDB Streams configuration for the table.
*/ inline TableDescription& WithStreamSpecification(const StreamSpecification& value) { SetStreamSpecification(value); return *this;} /** *The current DynamoDB Streams configuration for the table.
*/ inline TableDescription& WithStreamSpecification(StreamSpecification&& value) { SetStreamSpecification(std::move(value)); return *this;} /** *A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
A timestamp, in ISO 8601 format, for this stream.
Note that
* LatestStreamLabel
is not a unique identifier for the stream,
* because it is possible that a stream from another table might have the same
* timestamp. However, the combination of the following three elements is
* guaranteed to be unique:
Amazon Web Services customer ID
*Table name
StreamLabel
The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline const Aws::String& GetLatestStreamArn() const{ return m_latestStreamArn; } /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline bool LatestStreamArnHasBeenSet() const { return m_latestStreamArnHasBeenSet; } /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline void SetLatestStreamArn(const Aws::String& value) { m_latestStreamArnHasBeenSet = true; m_latestStreamArn = value; } /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline void SetLatestStreamArn(Aws::String&& value) { m_latestStreamArnHasBeenSet = true; m_latestStreamArn = std::move(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline void SetLatestStreamArn(const char* value) { m_latestStreamArnHasBeenSet = true; m_latestStreamArn.assign(value); } /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline TableDescription& WithLatestStreamArn(const Aws::String& value) { SetLatestStreamArn(value); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline TableDescription& WithLatestStreamArn(Aws::String&& value) { SetLatestStreamArn(std::move(value)); return *this;} /** *The Amazon Resource Name (ARN) that uniquely identifies the latest stream for * this table.
*/ inline TableDescription& WithLatestStreamArn(const char* value) { SetLatestStreamArn(value); return *this;} /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline const Aws::String& GetGlobalTableVersion() const{ return m_globalTableVersion; } /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline bool GlobalTableVersionHasBeenSet() const { return m_globalTableVersionHasBeenSet; } /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline void SetGlobalTableVersion(const Aws::String& value) { m_globalTableVersionHasBeenSet = true; m_globalTableVersion = value; } /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline void SetGlobalTableVersion(Aws::String&& value) { m_globalTableVersionHasBeenSet = true; m_globalTableVersion = std::move(value); } /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline void SetGlobalTableVersion(const char* value) { m_globalTableVersionHasBeenSet = true; m_globalTableVersion.assign(value); } /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline TableDescription& WithGlobalTableVersion(const Aws::String& value) { SetGlobalTableVersion(value); return *this;} /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline TableDescription& WithGlobalTableVersion(Aws::String&& value) { SetGlobalTableVersion(std::move(value)); return *this;} /** *Represents the version of global * tables in use, if the table is replicated across Amazon Web Services * Regions.
*/ inline TableDescription& WithGlobalTableVersion(const char* value) { SetGlobalTableVersion(value); return *this;} /** *Represents replicas of the table.
*/ inline const Aws::VectorRepresents replicas of the table.
*/ inline bool ReplicasHasBeenSet() const { return m_replicasHasBeenSet; } /** *Represents replicas of the table.
*/ inline void SetReplicas(const Aws::VectorRepresents replicas of the table.
*/ inline void SetReplicas(Aws::VectorRepresents replicas of the table.
*/ inline TableDescription& WithReplicas(const Aws::VectorRepresents replicas of the table.
*/ inline TableDescription& WithReplicas(Aws::VectorRepresents replicas of the table.
*/ inline TableDescription& AddReplicas(const ReplicaDescription& value) { m_replicasHasBeenSet = true; m_replicas.push_back(value); return *this; } /** *Represents replicas of the table.
*/ inline TableDescription& AddReplicas(ReplicaDescription&& value) { m_replicasHasBeenSet = true; m_replicas.push_back(std::move(value)); return *this; } /** *Contains details for the restore.
*/ inline const RestoreSummary& GetRestoreSummary() const{ return m_restoreSummary; } /** *Contains details for the restore.
*/ inline bool RestoreSummaryHasBeenSet() const { return m_restoreSummaryHasBeenSet; } /** *Contains details for the restore.
*/ inline void SetRestoreSummary(const RestoreSummary& value) { m_restoreSummaryHasBeenSet = true; m_restoreSummary = value; } /** *Contains details for the restore.
*/ inline void SetRestoreSummary(RestoreSummary&& value) { m_restoreSummaryHasBeenSet = true; m_restoreSummary = std::move(value); } /** *Contains details for the restore.
*/ inline TableDescription& WithRestoreSummary(const RestoreSummary& value) { SetRestoreSummary(value); return *this;} /** *Contains details for the restore.
*/ inline TableDescription& WithRestoreSummary(RestoreSummary&& value) { SetRestoreSummary(std::move(value)); return *this;} /** *The description of the server-side encryption status on the specified * table.
*/ inline const SSEDescription& GetSSEDescription() const{ return m_sSEDescription; } /** *The description of the server-side encryption status on the specified * table.
*/ inline bool SSEDescriptionHasBeenSet() const { return m_sSEDescriptionHasBeenSet; } /** *The description of the server-side encryption status on the specified * table.
*/ inline void SetSSEDescription(const SSEDescription& value) { m_sSEDescriptionHasBeenSet = true; m_sSEDescription = value; } /** *The description of the server-side encryption status on the specified * table.
*/ inline void SetSSEDescription(SSEDescription&& value) { m_sSEDescriptionHasBeenSet = true; m_sSEDescription = std::move(value); } /** *The description of the server-side encryption status on the specified * table.
*/ inline TableDescription& WithSSEDescription(const SSEDescription& value) { SetSSEDescription(value); return *this;} /** *The description of the server-side encryption status on the specified * table.
*/ inline TableDescription& WithSSEDescription(SSEDescription&& value) { SetSSEDescription(std::move(value)); return *this;} /** *Contains information about the table archive.
*/ inline const ArchivalSummary& GetArchivalSummary() const{ return m_archivalSummary; } /** *Contains information about the table archive.
*/ inline bool ArchivalSummaryHasBeenSet() const { return m_archivalSummaryHasBeenSet; } /** *Contains information about the table archive.
*/ inline void SetArchivalSummary(const ArchivalSummary& value) { m_archivalSummaryHasBeenSet = true; m_archivalSummary = value; } /** *Contains information about the table archive.
*/ inline void SetArchivalSummary(ArchivalSummary&& value) { m_archivalSummaryHasBeenSet = true; m_archivalSummary = std::move(value); } /** *Contains information about the table archive.
*/ inline TableDescription& WithArchivalSummary(const ArchivalSummary& value) { SetArchivalSummary(value); return *this;} /** *Contains information about the table archive.
*/ inline TableDescription& WithArchivalSummary(ArchivalSummary&& value) { SetArchivalSummary(std::move(value)); return *this;} /** *Contains details of the table class.
*/ inline const TableClassSummary& GetTableClassSummary() const{ return m_tableClassSummary; } /** *Contains details of the table class.
*/ inline bool TableClassSummaryHasBeenSet() const { return m_tableClassSummaryHasBeenSet; } /** *Contains details of the table class.
*/ inline void SetTableClassSummary(const TableClassSummary& value) { m_tableClassSummaryHasBeenSet = true; m_tableClassSummary = value; } /** *Contains details of the table class.
*/ inline void SetTableClassSummary(TableClassSummary&& value) { m_tableClassSummaryHasBeenSet = true; m_tableClassSummary = std::move(value); } /** *Contains details of the table class.
*/ inline TableDescription& WithTableClassSummary(const TableClassSummary& value) { SetTableClassSummary(value); return *this;} /** *Contains details of the table class.
*/ inline TableDescription& WithTableClassSummary(TableClassSummary&& value) { SetTableClassSummary(std::move(value)); return *this;} /** *Indicates whether deletion protection is enabled (true) or disabled (false) * on the table.
*/ inline bool GetDeletionProtectionEnabled() const{ return m_deletionProtectionEnabled; } /** *Indicates whether deletion protection is enabled (true) or disabled (false) * on the table.
*/ inline bool DeletionProtectionEnabledHasBeenSet() const { return m_deletionProtectionEnabledHasBeenSet; } /** *Indicates whether deletion protection is enabled (true) or disabled (false) * on the table.
*/ inline void SetDeletionProtectionEnabled(bool value) { m_deletionProtectionEnabledHasBeenSet = true; m_deletionProtectionEnabled = value; } /** *Indicates whether deletion protection is enabled (true) or disabled (false) * on the table.
*/ inline TableDescription& WithDeletionProtectionEnabled(bool value) { SetDeletionProtectionEnabled(value); return *this;} private: Aws::Vector