All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.dynamodbv2.model.TableDescription Maven / Gradle / Ivy

Go to download

The AWS Java SDK for Amazon DynamoDB module holds the client classes that are used for communicating with Amazon DynamoDB Service

There is a newer version: 1.12.772
Show newest version
/*
 * Copyright 2013-2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.dynamodbv2.model;

import java.io.Serializable;
import javax.annotation.Generated;
import com.amazonaws.protocol.StructuredPojo;
import com.amazonaws.protocol.ProtocolMarshaller;

/**
 * 

* Represents the properties of a table. *

* * @see AWS API * Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class TableDescription implements Serializable, Cloneable, StructuredPojo { /** *

* 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. *

    *
  • *
*/ private java.util.List attributeDefinitions; /** *

* The name of the table. *

*/ private String tableName; /** *

* 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' 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. *

*/ private java.util.List keySchema; /** *

* The current state of the table: *

*
    *
  • *

    * CREATING - The table is being created. *

    *
  • *
  • *

    * UPDATING - The table is being updated. *

    *
  • *
  • *

    * DELETING - The table is being deleted. *

    *
  • *
  • *

    * ACTIVE - The table is ready for use. *

    *
  • *
*/ private String tableStatus; /** *

* The date and time when the table was created, in UNIX epoch time * format. *

*/ private java.util.Date creationDateTime; /** *

* The provisioned throughput settings for the table, consisting of read and write capacity units, along with data * about increases and decreases. *

*/ private ProvisionedThroughputDescription provisionedThroughput; /** *

* 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. *

*/ private Long tableSizeBytes; /** *

* 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. *

*/ private Long itemCount; /** *

* The Amazon Resource Name (ARN) that uniquely identifies the table. *

*/ private String tableArn; /** *

* Unique identifier for the table for which the backup was created. *

*/ private String tableId; /** *

* 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 are 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 20. 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. *

*/ private java.util.List localSecondaryIndexes; /** *

* 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.) *

    *
  • *
  • *

    * 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 - Only the specified table attributes are projected into the index. The list of projected * attributes are 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 20. 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. *

*/ private java.util.List globalSecondaryIndexes; /** *

* The current DynamoDB Streams configuration for the table. *

*/ private StreamSpecification streamSpecification; /** *

* 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: *

*
    *
  • *

    * the AWS customer ID. *

    *
  • *
  • *

    * the table name. *

    *
  • *
  • *

    * the StreamLabel. *

    *
  • *
*/ private String latestStreamLabel; /** *

* The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. *

*/ private String latestStreamArn; /** *

* Contains details for the restore. *

*/ private RestoreSummary restoreSummary; /** *

* The description of the server-side encryption status on the specified table. *

*/ private SSEDescription sSEDescription; /** *

* 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. *

    *
  • *
* * @return 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. *

    *
  • */ public java.util.List getAttributeDefinitions() { return attributeDefinitions; } /** *

    * 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. *

      *
    • *
    * * @param attributeDefinitions * 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. *

      *
    • */ public void setAttributeDefinitions(java.util.Collection attributeDefinitions) { if (attributeDefinitions == null) { this.attributeDefinitions = null; return; } this.attributeDefinitions = new java.util.ArrayList(attributeDefinitions); } /** *

      * 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. *

        *
      • *
      *

      * NOTE: This method appends the values to the existing list (if any). Use * {@link #setAttributeDefinitions(java.util.Collection)} or {@link #withAttributeDefinitions(java.util.Collection)} * if you want to override the existing values. *

      * * @param attributeDefinitions * 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. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withAttributeDefinitions(AttributeDefinition... attributeDefinitions) { if (this.attributeDefinitions == null) { setAttributeDefinitions(new java.util.ArrayList(attributeDefinitions.length)); } for (AttributeDefinition ele : attributeDefinitions) { this.attributeDefinitions.add(ele); } return this; } /** *

        * 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. *

          *
        • *
        * * @param attributeDefinitions * 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. *

          *
        • * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withAttributeDefinitions(java.util.Collection attributeDefinitions) { setAttributeDefinitions(attributeDefinitions); return this; } /** *

          * The name of the table. *

          * * @param tableName * The name of the table. */ public void setTableName(String tableName) { this.tableName = tableName; } /** *

          * The name of the table. *

          * * @return The name of the table. */ public String getTableName() { return this.tableName; } /** *

          * The name of the table. *

          * * @param tableName * The name of the table. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withTableName(String tableName) { setTableName(tableName); 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' 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. *

          * * @return 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' 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. */ public java.util.List getKeySchema() { return keySchema; } /** *

          * 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' 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. *

          * * @param keySchema * 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' 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. */ public void setKeySchema(java.util.Collection keySchema) { if (keySchema == null) { this.keySchema = null; return; } this.keySchema = new java.util.ArrayList(keySchema); } /** *

          * 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' 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. *

          *

          * NOTE: This method appends the values to the existing list (if any). Use * {@link #setKeySchema(java.util.Collection)} or {@link #withKeySchema(java.util.Collection)} if you want to * override the existing values. *

          * * @param keySchema * 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' 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withKeySchema(KeySchemaElement... keySchema) { if (this.keySchema == null) { setKeySchema(new java.util.ArrayList(keySchema.length)); } for (KeySchemaElement ele : keySchema) { this.keySchema.add(ele); } 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' 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. *

          * * @param keySchema * 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' 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withKeySchema(java.util.Collection keySchema) { setKeySchema(keySchema); return this; } /** *

          * The current state of the table: *

          *
            *
          • *

            * CREATING - The table is being created. *

            *
          • *
          • *

            * UPDATING - The table is being updated. *

            *
          • *
          • *

            * DELETING - The table is being deleted. *

            *
          • *
          • *

            * ACTIVE - The table is ready for use. *

            *
          • *
          * * @param tableStatus * The current state of the table:

          *
            *
          • *

            * CREATING - The table is being created. *

            *
          • *
          • *

            * UPDATING - The table is being updated. *

            *
          • *
          • *

            * DELETING - The table is being deleted. *

            *
          • *
          • *

            * ACTIVE - The table is ready for use. *

            *
          • * @see TableStatus */ public void setTableStatus(String tableStatus) { this.tableStatus = tableStatus; } /** *

            * The current state of the table: *

            *
              *
            • *

              * CREATING - The table is being created. *

              *
            • *
            • *

              * UPDATING - The table is being updated. *

              *
            • *
            • *

              * DELETING - The table is being deleted. *

              *
            • *
            • *

              * ACTIVE - The table is ready for use. *

              *
            • *
            * * @return The current state of the table:

            *
              *
            • *

              * CREATING - The table is being created. *

              *
            • *
            • *

              * UPDATING - The table is being updated. *

              *
            • *
            • *

              * DELETING - The table is being deleted. *

              *
            • *
            • *

              * ACTIVE - The table is ready for use. *

              *
            • * @see TableStatus */ public String getTableStatus() { return this.tableStatus; } /** *

              * The current state of the table: *

              *
                *
              • *

                * CREATING - The table is being created. *

                *
              • *
              • *

                * UPDATING - The table is being updated. *

                *
              • *
              • *

                * DELETING - The table is being deleted. *

                *
              • *
              • *

                * ACTIVE - The table is ready for use. *

                *
              • *
              * * @param tableStatus * The current state of the table:

              *
                *
              • *

                * CREATING - The table is being created. *

                *
              • *
              • *

                * UPDATING - The table is being updated. *

                *
              • *
              • *

                * DELETING - The table is being deleted. *

                *
              • *
              • *

                * ACTIVE - The table is ready for use. *

                *
              • * @return Returns a reference to this object so that method calls can be chained together. * @see TableStatus */ public TableDescription withTableStatus(String tableStatus) { setTableStatus(tableStatus); return this; } /** *

                * The current state of the table: *

                *
                  *
                • *

                  * CREATING - The table is being created. *

                  *
                • *
                • *

                  * UPDATING - The table is being updated. *

                  *
                • *
                • *

                  * DELETING - The table is being deleted. *

                  *
                • *
                • *

                  * ACTIVE - The table is ready for use. *

                  *
                • *
                * * @param tableStatus * The current state of the table:

                *
                  *
                • *

                  * CREATING - The table is being created. *

                  *
                • *
                • *

                  * UPDATING - The table is being updated. *

                  *
                • *
                • *

                  * DELETING - The table is being deleted. *

                  *
                • *
                • *

                  * ACTIVE - The table is ready for use. *

                  *
                • * @see TableStatus */ public void setTableStatus(TableStatus tableStatus) { withTableStatus(tableStatus); } /** *

                  * The current state of the table: *

                  *
                    *
                  • *

                    * CREATING - The table is being created. *

                    *
                  • *
                  • *

                    * UPDATING - The table is being updated. *

                    *
                  • *
                  • *

                    * DELETING - The table is being deleted. *

                    *
                  • *
                  • *

                    * ACTIVE - The table is ready for use. *

                    *
                  • *
                  * * @param tableStatus * The current state of the table:

                  *
                    *
                  • *

                    * CREATING - The table is being created. *

                    *
                  • *
                  • *

                    * UPDATING - The table is being updated. *

                    *
                  • *
                  • *

                    * DELETING - The table is being deleted. *

                    *
                  • *
                  • *

                    * ACTIVE - The table is ready for use. *

                    *
                  • * @return Returns a reference to this object so that method calls can be chained together. * @see TableStatus */ public TableDescription withTableStatus(TableStatus tableStatus) { this.tableStatus = tableStatus.toString(); return this; } /** *

                    * The date and time when the table was created, in UNIX epoch time * format. *

                    * * @param creationDateTime * The date and time when the table was created, in UNIX epoch * time format. */ public void setCreationDateTime(java.util.Date creationDateTime) { this.creationDateTime = creationDateTime; } /** *

                    * The date and time when the table was created, in UNIX epoch time * format. *

                    * * @return The date and time when the table was created, in UNIX epoch * time format. */ public java.util.Date getCreationDateTime() { return this.creationDateTime; } /** *

                    * The date and time when the table was created, in UNIX epoch time * format. *

                    * * @param creationDateTime * The date and time when the table was created, in UNIX epoch * time format. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withCreationDateTime(java.util.Date creationDateTime) { setCreationDateTime(creationDateTime); return this; } /** *

                    * The provisioned throughput settings for the table, consisting of read and write capacity units, along with data * about increases and decreases. *

                    * * @param provisionedThroughput * The provisioned throughput settings for the table, consisting of read and write capacity units, along with * data about increases and decreases. */ public void setProvisionedThroughput(ProvisionedThroughputDescription provisionedThroughput) { this.provisionedThroughput = provisionedThroughput; } /** *

                    * The provisioned throughput settings for the table, consisting of read and write capacity units, along with data * about increases and decreases. *

                    * * @return The provisioned throughput settings for the table, consisting of read and write capacity units, along * with data about increases and decreases. */ public ProvisionedThroughputDescription getProvisionedThroughput() { return this.provisionedThroughput; } /** *

                    * The provisioned throughput settings for the table, consisting of read and write capacity units, along with data * about increases and decreases. *

                    * * @param provisionedThroughput * The provisioned throughput settings for the table, consisting of read and write capacity units, along with * data about increases and decreases. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withProvisionedThroughput(ProvisionedThroughputDescription provisionedThroughput) { setProvisionedThroughput(provisionedThroughput); 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. *

                    * * @param 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. */ public void setTableSizeBytes(Long tableSizeBytes) { this.tableSizeBytes = 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. *

                    * * @return 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. */ public Long getTableSizeBytes() { return this.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. *

                    * * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withTableSizeBytes(Long tableSizeBytes) { setTableSizeBytes(tableSizeBytes); 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. *

                    * * @param 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. */ public void setItemCount(Long itemCount) { this.itemCount = 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. *

                    * * @return 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. */ public Long getItemCount() { return this.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. *

                    * * @param 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withItemCount(Long itemCount) { setItemCount(itemCount); return this; } /** *

                    * The Amazon Resource Name (ARN) that uniquely identifies the table. *

                    * * @param tableArn * The Amazon Resource Name (ARN) that uniquely identifies the table. */ public void setTableArn(String tableArn) { this.tableArn = tableArn; } /** *

                    * The Amazon Resource Name (ARN) that uniquely identifies the table. *

                    * * @return The Amazon Resource Name (ARN) that uniquely identifies the table. */ public String getTableArn() { return this.tableArn; } /** *

                    * The Amazon Resource Name (ARN) that uniquely identifies the table. *

                    * * @param tableArn * The Amazon Resource Name (ARN) that uniquely identifies the table. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withTableArn(String tableArn) { setTableArn(tableArn); return this; } /** *

                    * Unique identifier for the table for which the backup was created. *

                    * * @param tableId * Unique identifier for the table for which the backup was created. */ public void setTableId(String tableId) { this.tableId = tableId; } /** *

                    * Unique identifier for the table for which the backup was created. *

                    * * @return Unique identifier for the table for which the backup was created. */ public String getTableId() { return this.tableId; } /** *

                    * Unique identifier for the table for which the backup was created. *

                    * * @param tableId * Unique identifier for the table for which the backup was created. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withTableId(String tableId) { setTableId(tableId); 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 are 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 20. 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. *

                    * * @return 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 are 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 20. 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. */ public java.util.List getLocalSecondaryIndexes() { return localSecondaryIndexes; } /** *

                    * 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 are 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 20. 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. *

                    * * @param localSecondaryIndexes * 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 are 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 20. 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. */ public void setLocalSecondaryIndexes(java.util.Collection localSecondaryIndexes) { if (localSecondaryIndexes == null) { this.localSecondaryIndexes = null; return; } this.localSecondaryIndexes = new java.util.ArrayList(localSecondaryIndexes); } /** *

                    * 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 are 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 20. 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. *

                    *

                    * NOTE: This method appends the values to the existing list (if any). Use * {@link #setLocalSecondaryIndexes(java.util.Collection)} or * {@link #withLocalSecondaryIndexes(java.util.Collection)} if you want to override the existing values. *

                    * * @param localSecondaryIndexes * 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 are 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 20. 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withLocalSecondaryIndexes(LocalSecondaryIndexDescription... localSecondaryIndexes) { if (this.localSecondaryIndexes == null) { setLocalSecondaryIndexes(new java.util.ArrayList(localSecondaryIndexes.length)); } for (LocalSecondaryIndexDescription ele : localSecondaryIndexes) { this.localSecondaryIndexes.add(ele); } 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 are 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 20. 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. *

                    * * @param localSecondaryIndexes * 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 are 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 20. 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withLocalSecondaryIndexes(java.util.Collection localSecondaryIndexes) { setLocalSecondaryIndexes(localSecondaryIndexes); return this; } /** *

                    * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of projected * attributes are 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 20. 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. *

                    * * @return 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of * projected attributes are 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 20. 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. */ public java.util.List getGlobalSecondaryIndexes() { return globalSecondaryIndexes; } /** *

                    * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of projected * attributes are 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 20. 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. *

                    * * @param globalSecondaryIndexes * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of * projected attributes are 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 20. 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. */ public void setGlobalSecondaryIndexes(java.util.Collection globalSecondaryIndexes) { if (globalSecondaryIndexes == null) { this.globalSecondaryIndexes = null; return; } this.globalSecondaryIndexes = new java.util.ArrayList(globalSecondaryIndexes); } /** *

                    * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of projected * attributes are 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 20. 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. *

                    *

                    * NOTE: This method appends the values to the existing list (if any). Use * {@link #setGlobalSecondaryIndexes(java.util.Collection)} or * {@link #withGlobalSecondaryIndexes(java.util.Collection)} if you want to override the existing values. *

                    * * @param globalSecondaryIndexes * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of * projected attributes are 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 20. 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withGlobalSecondaryIndexes(GlobalSecondaryIndexDescription... globalSecondaryIndexes) { if (this.globalSecondaryIndexes == null) { setGlobalSecondaryIndexes(new java.util.ArrayList(globalSecondaryIndexes.length)); } for (GlobalSecondaryIndexDescription ele : globalSecondaryIndexes) { this.globalSecondaryIndexes.add(ele); } return this; } /** *

                    * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of projected * attributes are 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 20. 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. *

                    * * @param globalSecondaryIndexes * 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.) *

                      *
                    • *
                    • *

                      * 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 - Only the specified table attributes are projected into the index. The list of * projected attributes are 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 20. 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. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withGlobalSecondaryIndexes(java.util.Collection globalSecondaryIndexes) { setGlobalSecondaryIndexes(globalSecondaryIndexes); return this; } /** *

                    * The current DynamoDB Streams configuration for the table. *

                    * * @param streamSpecification * The current DynamoDB Streams configuration for the table. */ public void setStreamSpecification(StreamSpecification streamSpecification) { this.streamSpecification = streamSpecification; } /** *

                    * The current DynamoDB Streams configuration for the table. *

                    * * @return The current DynamoDB Streams configuration for the table. */ public StreamSpecification getStreamSpecification() { return this.streamSpecification; } /** *

                    * The current DynamoDB Streams configuration for the table. *

                    * * @param streamSpecification * The current DynamoDB Streams configuration for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withStreamSpecification(StreamSpecification streamSpecification) { setStreamSpecification(streamSpecification); 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: *

                    *
                      *
                    • *

                      * the AWS customer ID. *

                      *
                    • *
                    • *

                      * the table name. *

                      *
                    • *
                    • *

                      * the StreamLabel. *

                      *
                    • *
                    * * @param latestStreamLabel * 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: *

                    *
                      *
                    • *

                      * the AWS customer ID. *

                      *
                    • *
                    • *

                      * the table name. *

                      *
                    • *
                    • *

                      * the StreamLabel. *

                      *
                    • */ public void setLatestStreamLabel(String latestStreamLabel) { this.latestStreamLabel = latestStreamLabel; } /** *

                      * 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: *

                      *
                        *
                      • *

                        * the AWS customer ID. *

                        *
                      • *
                      • *

                        * the table name. *

                        *
                      • *
                      • *

                        * the StreamLabel. *

                        *
                      • *
                      * * @return 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: *

                      *
                        *
                      • *

                        * the AWS customer ID. *

                        *
                      • *
                      • *

                        * the table name. *

                        *
                      • *
                      • *

                        * the StreamLabel. *

                        *
                      • */ public String getLatestStreamLabel() { return this.latestStreamLabel; } /** *

                        * 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: *

                        *
                          *
                        • *

                          * the AWS customer ID. *

                          *
                        • *
                        • *

                          * the table name. *

                          *
                        • *
                        • *

                          * the StreamLabel. *

                          *
                        • *
                        * * @param latestStreamLabel * 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: *

                        *
                          *
                        • *

                          * the AWS customer ID. *

                          *
                        • *
                        • *

                          * the table name. *

                          *
                        • *
                        • *

                          * the StreamLabel. *

                          *
                        • * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withLatestStreamLabel(String latestStreamLabel) { setLatestStreamLabel(latestStreamLabel); return this; } /** *

                          * The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. *

                          * * @param latestStreamArn * The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. */ public void setLatestStreamArn(String latestStreamArn) { this.latestStreamArn = latestStreamArn; } /** *

                          * The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. *

                          * * @return The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. */ public String getLatestStreamArn() { return this.latestStreamArn; } /** *

                          * The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. *

                          * * @param latestStreamArn * The Amazon Resource Name (ARN) that uniquely identifies the latest stream for this table. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withLatestStreamArn(String latestStreamArn) { setLatestStreamArn(latestStreamArn); return this; } /** *

                          * Contains details for the restore. *

                          * * @param restoreSummary * Contains details for the restore. */ public void setRestoreSummary(RestoreSummary restoreSummary) { this.restoreSummary = restoreSummary; } /** *

                          * Contains details for the restore. *

                          * * @return Contains details for the restore. */ public RestoreSummary getRestoreSummary() { return this.restoreSummary; } /** *

                          * Contains details for the restore. *

                          * * @param restoreSummary * Contains details for the restore. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withRestoreSummary(RestoreSummary restoreSummary) { setRestoreSummary(restoreSummary); return this; } /** *

                          * The description of the server-side encryption status on the specified table. *

                          * * @param sSEDescription * The description of the server-side encryption status on the specified table. */ public void setSSEDescription(SSEDescription sSEDescription) { this.sSEDescription = sSEDescription; } /** *

                          * The description of the server-side encryption status on the specified table. *

                          * * @return The description of the server-side encryption status on the specified table. */ public SSEDescription getSSEDescription() { return this.sSEDescription; } /** *

                          * The description of the server-side encryption status on the specified table. *

                          * * @param sSEDescription * The description of the server-side encryption status on the specified table. * @return Returns a reference to this object so that method calls can be chained together. */ public TableDescription withSSEDescription(SSEDescription sSEDescription) { setSSEDescription(sSEDescription); return this; } /** * Returns a string representation of this object; useful for testing and debugging. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getAttributeDefinitions() != null) sb.append("AttributeDefinitions: ").append(getAttributeDefinitions()).append(","); if (getTableName() != null) sb.append("TableName: ").append(getTableName()).append(","); if (getKeySchema() != null) sb.append("KeySchema: ").append(getKeySchema()).append(","); if (getTableStatus() != null) sb.append("TableStatus: ").append(getTableStatus()).append(","); if (getCreationDateTime() != null) sb.append("CreationDateTime: ").append(getCreationDateTime()).append(","); if (getProvisionedThroughput() != null) sb.append("ProvisionedThroughput: ").append(getProvisionedThroughput()).append(","); if (getTableSizeBytes() != null) sb.append("TableSizeBytes: ").append(getTableSizeBytes()).append(","); if (getItemCount() != null) sb.append("ItemCount: ").append(getItemCount()).append(","); if (getTableArn() != null) sb.append("TableArn: ").append(getTableArn()).append(","); if (getTableId() != null) sb.append("TableId: ").append(getTableId()).append(","); if (getLocalSecondaryIndexes() != null) sb.append("LocalSecondaryIndexes: ").append(getLocalSecondaryIndexes()).append(","); if (getGlobalSecondaryIndexes() != null) sb.append("GlobalSecondaryIndexes: ").append(getGlobalSecondaryIndexes()).append(","); if (getStreamSpecification() != null) sb.append("StreamSpecification: ").append(getStreamSpecification()).append(","); if (getLatestStreamLabel() != null) sb.append("LatestStreamLabel: ").append(getLatestStreamLabel()).append(","); if (getLatestStreamArn() != null) sb.append("LatestStreamArn: ").append(getLatestStreamArn()).append(","); if (getRestoreSummary() != null) sb.append("RestoreSummary: ").append(getRestoreSummary()).append(","); if (getSSEDescription() != null) sb.append("SSEDescription: ").append(getSSEDescription()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof TableDescription == false) return false; TableDescription other = (TableDescription) obj; if (other.getAttributeDefinitions() == null ^ this.getAttributeDefinitions() == null) return false; if (other.getAttributeDefinitions() != null && other.getAttributeDefinitions().equals(this.getAttributeDefinitions()) == false) return false; if (other.getTableName() == null ^ this.getTableName() == null) return false; if (other.getTableName() != null && other.getTableName().equals(this.getTableName()) == false) return false; if (other.getKeySchema() == null ^ this.getKeySchema() == null) return false; if (other.getKeySchema() != null && other.getKeySchema().equals(this.getKeySchema()) == false) return false; if (other.getTableStatus() == null ^ this.getTableStatus() == null) return false; if (other.getTableStatus() != null && other.getTableStatus().equals(this.getTableStatus()) == false) return false; if (other.getCreationDateTime() == null ^ this.getCreationDateTime() == null) return false; if (other.getCreationDateTime() != null && other.getCreationDateTime().equals(this.getCreationDateTime()) == false) return false; if (other.getProvisionedThroughput() == null ^ this.getProvisionedThroughput() == null) return false; if (other.getProvisionedThroughput() != null && other.getProvisionedThroughput().equals(this.getProvisionedThroughput()) == false) return false; if (other.getTableSizeBytes() == null ^ this.getTableSizeBytes() == null) return false; if (other.getTableSizeBytes() != null && other.getTableSizeBytes().equals(this.getTableSizeBytes()) == false) return false; if (other.getItemCount() == null ^ this.getItemCount() == null) return false; if (other.getItemCount() != null && other.getItemCount().equals(this.getItemCount()) == false) return false; if (other.getTableArn() == null ^ this.getTableArn() == null) return false; if (other.getTableArn() != null && other.getTableArn().equals(this.getTableArn()) == false) return false; if (other.getTableId() == null ^ this.getTableId() == null) return false; if (other.getTableId() != null && other.getTableId().equals(this.getTableId()) == false) return false; if (other.getLocalSecondaryIndexes() == null ^ this.getLocalSecondaryIndexes() == null) return false; if (other.getLocalSecondaryIndexes() != null && other.getLocalSecondaryIndexes().equals(this.getLocalSecondaryIndexes()) == false) return false; if (other.getGlobalSecondaryIndexes() == null ^ this.getGlobalSecondaryIndexes() == null) return false; if (other.getGlobalSecondaryIndexes() != null && other.getGlobalSecondaryIndexes().equals(this.getGlobalSecondaryIndexes()) == false) return false; if (other.getStreamSpecification() == null ^ this.getStreamSpecification() == null) return false; if (other.getStreamSpecification() != null && other.getStreamSpecification().equals(this.getStreamSpecification()) == false) return false; if (other.getLatestStreamLabel() == null ^ this.getLatestStreamLabel() == null) return false; if (other.getLatestStreamLabel() != null && other.getLatestStreamLabel().equals(this.getLatestStreamLabel()) == false) return false; if (other.getLatestStreamArn() == null ^ this.getLatestStreamArn() == null) return false; if (other.getLatestStreamArn() != null && other.getLatestStreamArn().equals(this.getLatestStreamArn()) == false) return false; if (other.getRestoreSummary() == null ^ this.getRestoreSummary() == null) return false; if (other.getRestoreSummary() != null && other.getRestoreSummary().equals(this.getRestoreSummary()) == false) return false; if (other.getSSEDescription() == null ^ this.getSSEDescription() == null) return false; if (other.getSSEDescription() != null && other.getSSEDescription().equals(this.getSSEDescription()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getAttributeDefinitions() == null) ? 0 : getAttributeDefinitions().hashCode()); hashCode = prime * hashCode + ((getTableName() == null) ? 0 : getTableName().hashCode()); hashCode = prime * hashCode + ((getKeySchema() == null) ? 0 : getKeySchema().hashCode()); hashCode = prime * hashCode + ((getTableStatus() == null) ? 0 : getTableStatus().hashCode()); hashCode = prime * hashCode + ((getCreationDateTime() == null) ? 0 : getCreationDateTime().hashCode()); hashCode = prime * hashCode + ((getProvisionedThroughput() == null) ? 0 : getProvisionedThroughput().hashCode()); hashCode = prime * hashCode + ((getTableSizeBytes() == null) ? 0 : getTableSizeBytes().hashCode()); hashCode = prime * hashCode + ((getItemCount() == null) ? 0 : getItemCount().hashCode()); hashCode = prime * hashCode + ((getTableArn() == null) ? 0 : getTableArn().hashCode()); hashCode = prime * hashCode + ((getTableId() == null) ? 0 : getTableId().hashCode()); hashCode = prime * hashCode + ((getLocalSecondaryIndexes() == null) ? 0 : getLocalSecondaryIndexes().hashCode()); hashCode = prime * hashCode + ((getGlobalSecondaryIndexes() == null) ? 0 : getGlobalSecondaryIndexes().hashCode()); hashCode = prime * hashCode + ((getStreamSpecification() == null) ? 0 : getStreamSpecification().hashCode()); hashCode = prime * hashCode + ((getLatestStreamLabel() == null) ? 0 : getLatestStreamLabel().hashCode()); hashCode = prime * hashCode + ((getLatestStreamArn() == null) ? 0 : getLatestStreamArn().hashCode()); hashCode = prime * hashCode + ((getRestoreSummary() == null) ? 0 : getRestoreSummary().hashCode()); hashCode = prime * hashCode + ((getSSEDescription() == null) ? 0 : getSSEDescription().hashCode()); return hashCode; } @Override public TableDescription clone() { try { return (TableDescription) super.clone(); } catch (CloneNotSupportedException e) { throw new IllegalStateException("Got a CloneNotSupportedException from Object.clone() " + "even though we're Cloneable!", e); } } @com.amazonaws.annotation.SdkInternalApi @Override public void marshall(ProtocolMarshaller protocolMarshaller) { com.amazonaws.services.dynamodbv2.model.transform.TableDescriptionMarshaller.getInstance().marshall(this, protocolMarshaller); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy