Interface ITable.Jsii$Default

All Superinterfaces:
IConstruct, software.constructs.IConstruct, IConstruct.Jsii$Default, software.constructs.IConstruct.Jsii$Default, IDependable, IDependable.Jsii$Default, IResource, IResource.Jsii$Default, ITable, software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
ITable.Jsii$Proxy
Enclosing interface:
ITable

@Internal public static interface ITable.Jsii$Default extends ITable, IResource.Jsii$Default
Internal default implementation for ITable.
  • Method Details

    • getNode

      @Stability(Stable) @NotNull default ConstructNode getNode()
      The construct tree node for this construct.
      Specified by:
      getNode in interface IConstruct
      Specified by:
      getNode in interface IConstruct.Jsii$Default
      Specified by:
      getNode in interface IResource.Jsii$Default
    • getEnv

      @Stability(Stable) @NotNull default ResourceEnvironment getEnv()
      The environment this resource belongs to.

      For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.

      Specified by:
      getEnv in interface IResource
      Specified by:
      getEnv in interface IResource.Jsii$Default
    • getStack

      @Stability(Stable) @NotNull default Stack getStack()
      The stack in which this resource is defined.
      Specified by:
      getStack in interface IResource
      Specified by:
      getStack in interface IResource.Jsii$Default
    • getTableArn

      @Stability(Stable) @NotNull default String getTableArn()
      Arn of the dynamodb table.
      Specified by:
      getTableArn in interface ITable
    • getTableName

      @Stability(Stable) @NotNull default String getTableName()
      Table name of the dynamodb table.
      Specified by:
      getTableName in interface ITable
    • getEncryptionKey

      @Stability(Stable) @Nullable default IKey getEncryptionKey()
      Optional KMS encryption key associated with this table.
      Specified by:
      getEncryptionKey in interface ITable
    • getTableStreamArn

      @Stability(Stable) @Nullable default String getTableStreamArn()
      ARN of the table's stream, if there is one.
      Specified by:
      getTableStreamArn in interface ITable
    • applyRemovalPolicy

      @Stability(Stable) default void applyRemovalPolicy(@NotNull RemovalPolicy policy)
      Apply the given removal policy to this resource.

      The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

      The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).

      Specified by:
      applyRemovalPolicy in interface IResource
      Specified by:
      applyRemovalPolicy in interface IResource.Jsii$Default
      Parameters:
      policy - This parameter is required.
    • grant

      @Stability(Stable) @NotNull default Grant grant(@NotNull IGrantable grantee, @NotNull @NotNull String... actions)
      Adds an IAM policy statement associated with this table to an IAM principal's policy.

      If encryptionKey is present, appropriate grants to the key needs to be added separately using the table.encryptionKey.grant* methods.

      Specified by:
      grant in interface ITable
      Parameters:
      grantee - The principal (no-op if undefined). This parameter is required.
      actions - The set of actions to allow (i.e. "dynamodb:PutItem", "dynamodb:GetItem", ...). This parameter is required.
    • grantFullAccess

      @Stability(Stable) @NotNull default Grant grantFullAccess(@NotNull IGrantable grantee)
      Permits all DynamoDB operations ("dynamodb:*") to an IAM principal.

      Appropriate grants will also be added to the customer-managed KMS key if one was configured.

      Specified by:
      grantFullAccess in interface ITable
      Parameters:
      grantee - The principal to grant access to. This parameter is required.
    • grantReadData

      @Stability(Stable) @NotNull default Grant grantReadData(@NotNull IGrantable grantee)
      Permits an IAM principal all data read operations from this table: BatchGetItem, GetRecords, GetShardIterator, Query, GetItem, Scan.

      Appropriate grants will also be added to the customer-managed KMS key if one was configured.

      Specified by:
      grantReadData in interface ITable
      Parameters:
      grantee - The principal to grant access to. This parameter is required.
    • grantReadWriteData

      @Stability(Stable) @NotNull default Grant grantReadWriteData(@NotNull IGrantable grantee)
      Permits an IAM principal to all data read/write operations to this table.

      BatchGetItem, GetRecords, GetShardIterator, Query, GetItem, Scan, BatchWriteItem, PutItem, UpdateItem, DeleteItem

      Appropriate grants will also be added to the customer-managed KMS key if one was configured.

      Specified by:
      grantReadWriteData in interface ITable
      Parameters:
      grantee - The principal to grant access to. This parameter is required.
    • grantStream

      @Stability(Stable) @NotNull default Grant grantStream(@NotNull IGrantable grantee, @NotNull @NotNull String... actions)
      Adds an IAM policy statement associated with this table's stream to an IAM principal's policy.

      If encryptionKey is present, appropriate grants to the key needs to be added separately using the table.encryptionKey.grant* methods.

      Specified by:
      grantStream in interface ITable
      Parameters:
      grantee - The principal (no-op if undefined). This parameter is required.
      actions - The set of actions to allow (i.e. "dynamodb:DescribeStream", "dynamodb:GetRecords", ...). This parameter is required.
    • grantStreamRead

      @Stability(Stable) @NotNull default Grant grantStreamRead(@NotNull IGrantable grantee)
      Permits an IAM principal all stream data read operations for this table's stream: DescribeStream, GetRecords, GetShardIterator, ListStreams.

      Appropriate grants will also be added to the customer-managed KMS key if one was configured.

      Specified by:
      grantStreamRead in interface ITable
      Parameters:
      grantee - The principal to grant access to. This parameter is required.
    • grantTableListStreams

      @Stability(Stable) @NotNull default Grant grantTableListStreams(@NotNull IGrantable grantee)
      Permits an IAM Principal to list streams attached to current dynamodb table.

      Specified by:
      grantTableListStreams in interface ITable
      Parameters:
      grantee - The principal (no-op if undefined). This parameter is required.
    • grantWriteData

      @Stability(Stable) @NotNull default Grant grantWriteData(@NotNull IGrantable grantee)
      Permits an IAM principal all data write operations to this table: BatchWriteItem, PutItem, UpdateItem, DeleteItem.

      Appropriate grants will also be added to the customer-managed KMS key if one was configured.

      Specified by:
      grantWriteData in interface ITable
      Parameters:
      grantee - The principal to grant access to. This parameter is required.
    • metric

      @Stability(Stable) @NotNull default Metric metric(@NotNull String metricName, @Nullable MetricOptions props)
      Metric for the number of Errors executing all Lambdas.

      Specified by:
      metric in interface ITable
      Parameters:
      metricName - This parameter is required.
      props -
    • metricConditionalCheckFailedRequests

      @Stability(Stable) @NotNull default Metric metricConditionalCheckFailedRequests(@Nullable MetricOptions props)
      Metric for the conditional check failed requests.

      Specified by:
      metricConditionalCheckFailedRequests in interface ITable
      Parameters:
      props - properties of a metric.
    • metricConsumedReadCapacityUnits

      @Stability(Stable) @NotNull default Metric metricConsumedReadCapacityUnits(@Nullable MetricOptions props)
      Metric for the consumed read capacity units.

      Specified by:
      metricConsumedReadCapacityUnits in interface ITable
      Parameters:
      props - properties of a metric.
    • metricConsumedWriteCapacityUnits

      @Stability(Stable) @NotNull default Metric metricConsumedWriteCapacityUnits(@Nullable MetricOptions props)
      Metric for the consumed write capacity units.

      Specified by:
      metricConsumedWriteCapacityUnits in interface ITable
      Parameters:
      props - properties of a metric.
    • metricSuccessfulRequestLatency

      @Stability(Stable) @NotNull default Metric metricSuccessfulRequestLatency(@Nullable MetricOptions props)
      Metric for the successful request latency.

      Specified by:
      metricSuccessfulRequestLatency in interface ITable
      Parameters:
      props - properties of a metric.
    • metricSystemErrors

      @Stability(Deprecated) @Deprecated @NotNull default Metric metricSystemErrors(@Nullable MetricOptions props)
      Deprecated.
      use metricSystemErrorsForOperations
      (deprecated) Metric for the system errors.

      Specified by:
      metricSystemErrors in interface ITable
      Parameters:
      props - properties of a metric.
    • metricSystemErrorsForOperations

      @Stability(Stable) @NotNull default IMetric metricSystemErrorsForOperations(@Nullable SystemErrorsForOperationsMetricOptions props)
      Metric for the system errors this table.

      Specified by:
      metricSystemErrorsForOperations in interface ITable
      Parameters:
      props - properties of a metric.
    • metricThrottledRequests

      @Stability(Stable) @NotNull default Metric metricThrottledRequests(@Nullable MetricOptions props)
      Metric for throttled requests.

      Specified by:
      metricThrottledRequests in interface ITable
      Parameters:
      props - properties of a metric.
    • metricUserErrors

      @Stability(Stable) @NotNull default Metric metricUserErrors(@Nullable MetricOptions props)
      Metric for the user errors.

      Specified by:
      metricUserErrors in interface ITable
      Parameters:
      props - properties of a metric.