/* * Copyright 2018-2023 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.securityhub.model; import java.io.Serializable; import javax.annotation.Generated; import com.amazonaws.protocol.StructuredPojo; import com.amazonaws.protocol.ProtocolMarshaller; /** *
* Provides details about a DynamoDB table. *
* * @see AWS API Documentation */ @Generated("com.amazonaws:aws-java-sdk-code-generator") public class AwsDynamoDbTableDetails implements Serializable, Cloneable, StructuredPojo { /** ** A list of attribute definitions for the table. *
*/ private java.util.List* Information about the billing for read/write capacity on the table. *
*/ private AwsDynamoDbTableBillingModeSummary billingModeSummary; /** ** Indicates when the table was created. *
*
* Uses the date-time
format specified in RFC
* 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be
* separated by T
. For example, 2020-03-22T13:22:13.933Z
.
*
* List of global secondary indexes for the table. *
*/ private java.util.List* The version of global tables being used. *
*/ private String globalTableVersion; /** ** The number of items in the table. *
*/ private Integer itemCount; /** ** The primary key structure for the table. *
*/ private java.util.List* The ARN of the latest stream for the table. *
*/ private String latestStreamArn; /** ** The label of the latest stream. The label is not a unique identifier. *
*/ private String latestStreamLabel; /** ** The list of local secondary indexes for the table. *
*/ private java.util.List* Information about the provisioned throughput for the table. *
*/ private AwsDynamoDbTableProvisionedThroughput provisionedThroughput; /** ** The list of replicas of this table. *
*/ private java.util.List* Information about the restore for the table. *
*/ private AwsDynamoDbTableRestoreSummary restoreSummary; /** ** Information about the server-side encryption for the table. *
*/ private AwsDynamoDbTableSseDescription sseDescription; /** ** The current DynamoDB Streams configuration for the table. *
*/ private AwsDynamoDbTableStreamSpecification streamSpecification; /** ** The identifier of the table. *
*/ private String tableId; /** ** The name of the table. *
*/ private String tableName; /** ** The total size of the table in bytes. *
*/ private Long tableSizeBytes; /** ** The current status of the table. Valid values are as follows: *
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*
* A list of attribute definitions for the table. *
* * @return A list of attribute definitions for the table. */ public java.util.List* A list of attribute definitions for the table. *
* * @param attributeDefinitions * A list of attribute definitions for the table. */ public void setAttributeDefinitions(java.util.Collection* A list of attribute definitions for the table. *
** 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 * A list of attribute definitions for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withAttributeDefinitions(AwsDynamoDbTableAttributeDefinition... attributeDefinitions) { if (this.attributeDefinitions == null) { setAttributeDefinitions(new java.util.ArrayList* A list of attribute definitions for the table. *
* * @param attributeDefinitions * A list of attribute definitions for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withAttributeDefinitions(java.util.Collection* Information about the billing for read/write capacity on the table. *
* * @param billingModeSummary * Information about the billing for read/write capacity on the table. */ public void setBillingModeSummary(AwsDynamoDbTableBillingModeSummary billingModeSummary) { this.billingModeSummary = billingModeSummary; } /** ** Information about the billing for read/write capacity on the table. *
* * @return Information about the billing for read/write capacity on the table. */ public AwsDynamoDbTableBillingModeSummary getBillingModeSummary() { return this.billingModeSummary; } /** ** Information about the billing for read/write capacity on the table. *
* * @param billingModeSummary * Information about the billing for read/write capacity on the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withBillingModeSummary(AwsDynamoDbTableBillingModeSummary billingModeSummary) { setBillingModeSummary(billingModeSummary); return this; } /** ** Indicates when the table was created. *
*
* Uses the date-time
format specified in RFC
* 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be
* separated by T
. For example, 2020-03-22T13:22:13.933Z
.
*
* Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time
* Format. The value cannot contain spaces, and date and time should be separated by T
. For
* example, 2020-03-22T13:22:13.933Z
.
*/
public void setCreationDateTime(String creationDateTime) {
this.creationDateTime = creationDateTime;
}
/**
*
* Indicates when the table was created. *
*
* Uses the date-time
format specified in RFC
* 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be
* separated by T
. For example, 2020-03-22T13:22:13.933Z
.
*
* Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time
* Format. The value cannot contain spaces, and date and time should be separated by T
. For
* example, 2020-03-22T13:22:13.933Z
.
*/
public String getCreationDateTime() {
return this.creationDateTime;
}
/**
*
* Indicates when the table was created. *
*
* Uses the date-time
format specified in RFC
* 3339 section 5.6, Internet Date/Time Format. The value cannot contain spaces, and date and time should be
* separated by T
. For example, 2020-03-22T13:22:13.933Z
.
*
* Uses the date-time
format specified in RFC 3339 section 5.6, Internet Date/Time
* Format. The value cannot contain spaces, and date and time should be separated by T
. For
* example, 2020-03-22T13:22:13.933Z
.
* @return Returns a reference to this object so that method calls can be chained together.
*/
public AwsDynamoDbTableDetails withCreationDateTime(String creationDateTime) {
setCreationDateTime(creationDateTime);
return this;
}
/**
*
* List of global secondary indexes for the table. *
* * @return List of global secondary indexes for the table. */ public java.util.List* List of global secondary indexes for the table. *
* * @param globalSecondaryIndexes * List of global secondary indexes for the table. */ public void setGlobalSecondaryIndexes(java.util.Collection* List of global secondary indexes for the table. *
** 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 * List of global secondary indexes for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withGlobalSecondaryIndexes(AwsDynamoDbTableGlobalSecondaryIndex... globalSecondaryIndexes) { if (this.globalSecondaryIndexes == null) { setGlobalSecondaryIndexes(new java.util.ArrayList* List of global secondary indexes for the table. *
* * @param globalSecondaryIndexes * List of global secondary indexes for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withGlobalSecondaryIndexes(java.util.Collection* The version of global tables being used. *
* * @param globalTableVersion * The version of global tables being used. */ public void setGlobalTableVersion(String globalTableVersion) { this.globalTableVersion = globalTableVersion; } /** ** The version of global tables being used. *
* * @return The version of global tables being used. */ public String getGlobalTableVersion() { return this.globalTableVersion; } /** ** The version of global tables being used. *
* * @param globalTableVersion * The version of global tables being used. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withGlobalTableVersion(String globalTableVersion) { setGlobalTableVersion(globalTableVersion); return this; } /** ** The number of items in the table. *
* * @param itemCount * The number of items in the table. */ public void setItemCount(Integer itemCount) { this.itemCount = itemCount; } /** ** The number of items in the table. *
* * @return The number of items in the table. */ public Integer getItemCount() { return this.itemCount; } /** ** The number of items in the table. *
* * @param itemCount * The number of items in the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withItemCount(Integer itemCount) { setItemCount(itemCount); return this; } /** ** The primary key structure for the table. *
* * @return The primary key structure for the table. */ public java.util.List* The primary key structure for the table. *
* * @param keySchema * The primary key structure for the table. */ public void setKeySchema(java.util.Collection* The primary key structure for the table. *
** 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. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withKeySchema(AwsDynamoDbTableKeySchema... keySchema) { if (this.keySchema == null) { setKeySchema(new java.util.ArrayList* The primary key structure for the table. *
* * @param keySchema * The primary key structure for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withKeySchema(java.util.Collection* The ARN of the latest stream for the table. *
* * @param latestStreamArn * The ARN of the latest stream for the table. */ public void setLatestStreamArn(String latestStreamArn) { this.latestStreamArn = latestStreamArn; } /** ** The ARN of the latest stream for the table. *
* * @return The ARN of the latest stream for the table. */ public String getLatestStreamArn() { return this.latestStreamArn; } /** ** The ARN of the latest stream for the table. *
* * @param latestStreamArn * The ARN of the latest stream for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withLatestStreamArn(String latestStreamArn) { setLatestStreamArn(latestStreamArn); return this; } /** ** The label of the latest stream. The label is not a unique identifier. *
* * @param latestStreamLabel * The label of the latest stream. The label is not a unique identifier. */ public void setLatestStreamLabel(String latestStreamLabel) { this.latestStreamLabel = latestStreamLabel; } /** ** The label of the latest stream. The label is not a unique identifier. *
* * @return The label of the latest stream. The label is not a unique identifier. */ public String getLatestStreamLabel() { return this.latestStreamLabel; } /** ** The label of the latest stream. The label is not a unique identifier. *
* * @param latestStreamLabel * The label of the latest stream. The label is not a unique identifier. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withLatestStreamLabel(String latestStreamLabel) { setLatestStreamLabel(latestStreamLabel); return this; } /** ** The list of local secondary indexes for the table. *
* * @return The list of local secondary indexes for the table. */ public java.util.List* The list of local secondary indexes for the table. *
* * @param localSecondaryIndexes * The list of local secondary indexes for the table. */ public void setLocalSecondaryIndexes(java.util.Collection* The list of local secondary indexes for the table. *
** 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 * The list of local secondary indexes for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withLocalSecondaryIndexes(AwsDynamoDbTableLocalSecondaryIndex... localSecondaryIndexes) { if (this.localSecondaryIndexes == null) { setLocalSecondaryIndexes(new java.util.ArrayList* The list of local secondary indexes for the table. *
* * @param localSecondaryIndexes * The list of local secondary indexes for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withLocalSecondaryIndexes(java.util.Collection* Information about the provisioned throughput for the table. *
* * @param provisionedThroughput * Information about the provisioned throughput for the table. */ public void setProvisionedThroughput(AwsDynamoDbTableProvisionedThroughput provisionedThroughput) { this.provisionedThroughput = provisionedThroughput; } /** ** Information about the provisioned throughput for the table. *
* * @return Information about the provisioned throughput for the table. */ public AwsDynamoDbTableProvisionedThroughput getProvisionedThroughput() { return this.provisionedThroughput; } /** ** Information about the provisioned throughput for the table. *
* * @param provisionedThroughput * Information about the provisioned throughput for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withProvisionedThroughput(AwsDynamoDbTableProvisionedThroughput provisionedThroughput) { setProvisionedThroughput(provisionedThroughput); return this; } /** ** The list of replicas of this table. *
* * @return The list of replicas of this table. */ public java.util.List* The list of replicas of this table. *
* * @param replicas * The list of replicas of this table. */ public void setReplicas(java.util.Collection* The list of replicas of this table. *
** NOTE: This method appends the values to the existing list (if any). Use * {@link #setReplicas(java.util.Collection)} or {@link #withReplicas(java.util.Collection)} if you want to override * the existing values. *
* * @param replicas * The list of replicas of this table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withReplicas(AwsDynamoDbTableReplica... replicas) { if (this.replicas == null) { setReplicas(new java.util.ArrayList* The list of replicas of this table. *
* * @param replicas * The list of replicas of this table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withReplicas(java.util.Collection* Information about the restore for the table. *
* * @param restoreSummary * Information about the restore for the table. */ public void setRestoreSummary(AwsDynamoDbTableRestoreSummary restoreSummary) { this.restoreSummary = restoreSummary; } /** ** Information about the restore for the table. *
* * @return Information about the restore for the table. */ public AwsDynamoDbTableRestoreSummary getRestoreSummary() { return this.restoreSummary; } /** ** Information about the restore for the table. *
* * @param restoreSummary * Information about the restore for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withRestoreSummary(AwsDynamoDbTableRestoreSummary restoreSummary) { setRestoreSummary(restoreSummary); return this; } /** ** Information about the server-side encryption for the table. *
* * @param sseDescription * Information about the server-side encryption for the table. */ public void setSseDescription(AwsDynamoDbTableSseDescription sseDescription) { this.sseDescription = sseDescription; } /** ** Information about the server-side encryption for the table. *
* * @return Information about the server-side encryption for the table. */ public AwsDynamoDbTableSseDescription getSseDescription() { return this.sseDescription; } /** ** Information about the server-side encryption for the table. *
* * @param sseDescription * Information about the server-side encryption for the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withSseDescription(AwsDynamoDbTableSseDescription sseDescription) { setSseDescription(sseDescription); return this; } /** ** The current DynamoDB Streams configuration for the table. *
* * @param streamSpecification * The current DynamoDB Streams configuration for the table. */ public void setStreamSpecification(AwsDynamoDbTableStreamSpecification streamSpecification) { this.streamSpecification = streamSpecification; } /** ** The current DynamoDB Streams configuration for the table. *
* * @return The current DynamoDB Streams configuration for the table. */ public AwsDynamoDbTableStreamSpecification 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 AwsDynamoDbTableDetails withStreamSpecification(AwsDynamoDbTableStreamSpecification streamSpecification) { setStreamSpecification(streamSpecification); return this; } /** ** The identifier of the table. *
* * @param tableId * The identifier of the table. */ public void setTableId(String tableId) { this.tableId = tableId; } /** ** The identifier of the table. *
* * @return The identifier of the table. */ public String getTableId() { return this.tableId; } /** ** The identifier of the table. *
* * @param tableId * The identifier of the table. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withTableId(String tableId) { setTableId(tableId); 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 AwsDynamoDbTableDetails withTableName(String tableName) { setTableName(tableName); return this; } /** ** The total size of the table in bytes. *
* * @param tableSizeBytes * The total size of the table in bytes. */ public void setTableSizeBytes(Long tableSizeBytes) { this.tableSizeBytes = tableSizeBytes; } /** ** The total size of the table in bytes. *
* * @return The total size of the table in bytes. */ public Long getTableSizeBytes() { return this.tableSizeBytes; } /** ** The total size of the table in bytes. *
* * @param tableSizeBytes * The total size of the table in bytes. * @return Returns a reference to this object so that method calls can be chained together. */ public AwsDynamoDbTableDetails withTableSizeBytes(Long tableSizeBytes) { setTableSizeBytes(tableSizeBytes); return this; } /** ** The current status of the table. Valid values are as follows: *
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*
* The current status of the table. Valid values are as follows: *
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*
* The current status of the table. Valid values are as follows: *
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*
* ACTIVE
*
* ARCHIVED
*
* ARCHIVING
*
* CREATING
*
* DELETING
*
* INACCESSIBLE_ENCRYPTION_CREDENTIALS
*
* UPDATING
*