Class TableOptions.Jsii$Proxy

java.lang.Object
software.amazon.jsii.JsiiObject
software.amazon.awscdk.services.dynamodb.TableOptions.Jsii$Proxy
All Implemented Interfaces:
SchemaOptions, TableOptions, software.amazon.jsii.JsiiSerializable
Enclosing interface:
TableOptions

@Stability(Stable) @Internal public static final class TableOptions.Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TableOptions
An implementation for TableOptions
  • Constructor Details

    • Jsii$Proxy

      protected Jsii$Proxy(software.amazon.jsii.JsiiObjectRef objRef)
      Constructor that initializes the object based on values retrieved from the JsiiObject.
      Parameters:
      objRef - Reference to the JSII managed object.
    • Jsii$Proxy

      protected Jsii$Proxy(TableOptions.Builder builder)
      Constructor that initializes the object based on literal property values passed by the TableOptions.Builder.
  • Method Details

    • getBillingMode

      public final BillingMode getBillingMode()
      Description copied from interface: TableOptions
      Specify how you are charged for read and write throughput and how you manage capacity.

      Default: PROVISIONED if `replicationRegions` is not specified, PAY_PER_REQUEST otherwise

      Specified by:
      getBillingMode in interface TableOptions
    • getContributorInsightsEnabled

      public final Boolean getContributorInsightsEnabled()
      Description copied from interface: TableOptions
      Whether CloudWatch contributor insights is enabled.

      Default: false

      Specified by:
      getContributorInsightsEnabled in interface TableOptions
    • getEncryption

      public final TableEncryption getEncryption()
      Description copied from interface: TableOptions
      Whether server-side encryption with an AWS managed customer master key is enabled.

      This property cannot be set if serverSideEncryption is set.

      NOTE: if you set this to CUSTOMER_MANAGED and encryptionKey is not specified, the key that the Tablet generates for you will be created with default permissions. If you are using CDKv2, these permissions will be sufficient to enable the key for use with DynamoDB tables. If you are using CDKv1, make sure the feature flag @aws-cdk/aws-kms:defaultKeyPolicies is set to true in your cdk.json.

      Default: - server-side encryption is enabled with an AWS owned customer master key

      Specified by:
      getEncryption in interface TableOptions
    • getEncryptionKey

      public final IKey getEncryptionKey()
      Description copied from interface: TableOptions
      External KMS key to use for table encryption.

      This property can only be set if encryption is set to TableEncryption.CUSTOMER_MANAGED.

      Default: - If `encryption` is set to `TableEncryption.CUSTOMER_MANAGED` and this property is undefined, a new KMS key will be created and associated with this table.

      Specified by:
      getEncryptionKey in interface TableOptions
    • getPointInTimeRecovery

      public final Boolean getPointInTimeRecovery()
      Description copied from interface: TableOptions
      Whether point-in-time recovery is enabled.

      Default: - point-in-time recovery is disabled

      Specified by:
      getPointInTimeRecovery in interface TableOptions
    • getReadCapacity

      public final Number getReadCapacity()
      Description copied from interface: TableOptions
      The read capacity for the table.

      Careful if you add Global Secondary Indexes, as those will share the table's provisioned throughput.

      Can only be provided if billingMode is Provisioned.

      Default: 5

      Specified by:
      getReadCapacity in interface TableOptions
    • getRemovalPolicy

      public final RemovalPolicy getRemovalPolicy()
      Description copied from interface: TableOptions
      The removal policy to apply to the DynamoDB Table.

      Default: RemovalPolicy.RETAIN

      Specified by:
      getRemovalPolicy in interface TableOptions
    • getReplicationRegions

      public final List<String> getReplicationRegions()
      Description copied from interface: TableOptions
      Regions where replica tables will be created.

      Default: - no replica tables are created

      Specified by:
      getReplicationRegions in interface TableOptions
    • getReplicationTimeout

      public final Duration getReplicationTimeout()
      Description copied from interface: TableOptions
      The timeout for a table replication operation in a single region.

      Default: Duration.minutes(30)

      Specified by:
      getReplicationTimeout in interface TableOptions
    • getServerSideEncryption

      public final Boolean getServerSideEncryption()
      Description copied from interface: TableOptions
      (deprecated) Whether server-side encryption with an AWS managed customer master key is enabled.

      This property cannot be set if encryption and/or encryptionKey is set.

      Default: - server-side encryption is enabled with an AWS owned customer master key

      Specified by:
      getServerSideEncryption in interface TableOptions
    • getStream

      public final StreamViewType getStream()
      Description copied from interface: TableOptions
      When an item in the table is modified, StreamViewType determines what information is written to the stream for this table.

      Default: - streams are disabled unless `replicationRegions` is specified

      Specified by:
      getStream in interface TableOptions
    • getTableClass

      public final TableClass getTableClass()
      Description copied from interface: TableOptions
      Specify the table class.

      Default: STANDARD

      Specified by:
      getTableClass in interface TableOptions
    • getTimeToLiveAttribute

      public final String getTimeToLiveAttribute()
      Description copied from interface: TableOptions
      The name of TTL attribute.

      Default: - TTL is disabled

      Specified by:
      getTimeToLiveAttribute in interface TableOptions
    • getWaitForReplicationToFinish

      public final Boolean getWaitForReplicationToFinish()
      Description copied from interface: TableOptions
      Indicates whether CloudFormation stack waits for replication to finish.

      If set to false, the CloudFormation resource will mark the resource as created and replication will be completed asynchronously. This property is ignored if replicationRegions property is not set.

      DO NOT UNSET this property if adding/removing multiple replicationRegions in one deployment, as CloudFormation only supports one region replication at a time. CDK overcomes this limitation by waiting for replication to finish before starting new replicationRegion.

      Default: true

      Specified by:
      getWaitForReplicationToFinish in interface TableOptions
      See Also:
    • getWriteCapacity

      public final Number getWriteCapacity()
      Description copied from interface: TableOptions
      The write capacity for the table.

      Careful if you add Global Secondary Indexes, as those will share the table's provisioned throughput.

      Can only be provided if billingMode is Provisioned.

      Default: 5

      Specified by:
      getWriteCapacity in interface TableOptions
    • getPartitionKey

      public final Attribute getPartitionKey()
      Description copied from interface: SchemaOptions
      Partition key attribute definition.
      Specified by:
      getPartitionKey in interface SchemaOptions
    • getSortKey

      public final Attribute getSortKey()
      Description copied from interface: SchemaOptions
      Sort key attribute definition.

      Default: no sort key

      Specified by:
      getSortKey in interface SchemaOptions
    • $jsii$toJson

      @Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson()
      Specified by:
      $jsii$toJson in interface software.amazon.jsii.JsiiSerializable
    • equals

      public final boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object