awsdynamodb

package
v1.130.0-devpreview Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 29, 2021 License: Apache-2.0 Imports: 11 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CfnGlobalTable_CFN_RESOURCE_TYPE_NAME

func CfnGlobalTable_CFN_RESOURCE_TYPE_NAME() *string

func CfnGlobalTable_IsCfnElement

func CfnGlobalTable_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnGlobalTable_IsCfnResource

func CfnGlobalTable_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnGlobalTable_IsConstruct

func CfnGlobalTable_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func CfnTable_CFN_RESOURCE_TYPE_NAME

func CfnTable_CFN_RESOURCE_TYPE_NAME() *string

func CfnTable_IsCfnElement

func CfnTable_IsCfnElement(x interface{}) *bool

Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).

Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.

Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.

func CfnTable_IsCfnResource

func CfnTable_IsCfnResource(construct constructs.IConstruct) *bool

Check whether the given construct is a CfnResource. Experimental.

func CfnTable_IsConstruct

func CfnTable_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func NewCfnGlobalTable_Override

func NewCfnGlobalTable_Override(c CfnGlobalTable, scope awscdk.Construct, id *string, props *CfnGlobalTableProps)

Create a new `AWS::DynamoDB::GlobalTable`.

func NewCfnTable_Override

func NewCfnTable_Override(c CfnTable, scope awscdk.Construct, id *string, props *CfnTableProps)

Create a new `AWS::DynamoDB::Table`.

func NewTable_Override

func NewTable_Override(t Table, scope constructs.Construct, id *string, props *TableProps)

Experimental.

func Table_GrantListStreams

func Table_GrantListStreams(grantee awsiam.IGrantable) awsiam.Grant

Permits an IAM Principal to list all DynamoDB Streams. Deprecated: Use {@link #grantTableListStreams} for more granular permission

func Table_IsConstruct

func Table_IsConstruct(x interface{}) *bool

Return whether the given object is a Construct. Experimental.

func Table_IsResource

func Table_IsResource(construct awscdk.IConstruct) *bool

Check whether the given construct is a Resource. Experimental.

Types

type Attribute

type Attribute struct {
	// The name of an attribute.
	// Experimental.
	Name *string `json:"name"`
	// The data type of an attribute.
	// Experimental.
	Type AttributeType `json:"type"`
}

Represents an attribute for describing the key schema for the table and indexes. Experimental.

type AttributeType

type AttributeType string

Data types for attributes within a table. See: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes

Experimental.

const (
	AttributeType_BINARY AttributeType = "BINARY"
	AttributeType_NUMBER AttributeType = "NUMBER"
	AttributeType_STRING AttributeType = "STRING"
)

type BillingMode

type BillingMode string

DynamoDB's Read/Write capacity modes. Experimental.

const (
	BillingMode_PAY_PER_REQUEST BillingMode = "PAY_PER_REQUEST"
	BillingMode_PROVISIONED     BillingMode = "PROVISIONED"
)

type CfnGlobalTable

type CfnGlobalTable interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttributeDefinitions() interface{}
	SetAttributeDefinitions(val interface{})
	AttrStreamArn() *string
	AttrTableId() *string
	BillingMode() *string
	SetBillingMode(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	CreationStack() *[]*string
	GlobalSecondaryIndexes() interface{}
	SetGlobalSecondaryIndexes(val interface{})
	KeySchema() interface{}
	SetKeySchema(val interface{})
	LocalSecondaryIndexes() interface{}
	SetLocalSecondaryIndexes(val interface{})
	LogicalId() *string
	Node() awscdk.ConstructNode
	Ref() *string
	Replicas() interface{}
	SetReplicas(val interface{})
	SseSpecification() interface{}
	SetSseSpecification(val interface{})
	Stack() awscdk.Stack
	StreamSpecification() interface{}
	SetStreamSpecification(val interface{})
	TableName() *string
	SetTableName(val *string)
	TimeToLiveSpecification() interface{}
	SetTimeToLiveSpecification(val interface{})
	UpdatedProperites() *map[string]interface{}
	WriteProvisionedThroughputSettings() interface{}
	SetWriteProvisionedThroughputSettings(val interface{})
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::DynamoDB::GlobalTable`.

func NewCfnGlobalTable

func NewCfnGlobalTable(scope awscdk.Construct, id *string, props *CfnGlobalTableProps) CfnGlobalTable

Create a new `AWS::DynamoDB::GlobalTable`.

type CfnGlobalTableProps

type CfnGlobalTableProps struct {
	// `AWS::DynamoDB::GlobalTable.AttributeDefinitions`.
	AttributeDefinitions interface{} `json:"attributeDefinitions"`
	// `AWS::DynamoDB::GlobalTable.KeySchema`.
	KeySchema interface{} `json:"keySchema"`
	// `AWS::DynamoDB::GlobalTable.Replicas`.
	Replicas interface{} `json:"replicas"`
	// `AWS::DynamoDB::GlobalTable.BillingMode`.
	BillingMode *string `json:"billingMode"`
	// `AWS::DynamoDB::GlobalTable.GlobalSecondaryIndexes`.
	GlobalSecondaryIndexes interface{} `json:"globalSecondaryIndexes"`
	// `AWS::DynamoDB::GlobalTable.LocalSecondaryIndexes`.
	LocalSecondaryIndexes interface{} `json:"localSecondaryIndexes"`
	// `AWS::DynamoDB::GlobalTable.SSESpecification`.
	SseSpecification interface{} `json:"sseSpecification"`
	// `AWS::DynamoDB::GlobalTable.StreamSpecification`.
	StreamSpecification interface{} `json:"streamSpecification"`
	// `AWS::DynamoDB::GlobalTable.TableName`.
	TableName *string `json:"tableName"`
	// `AWS::DynamoDB::GlobalTable.TimeToLiveSpecification`.
	TimeToLiveSpecification interface{} `json:"timeToLiveSpecification"`
	// `AWS::DynamoDB::GlobalTable.WriteProvisionedThroughputSettings`.
	WriteProvisionedThroughputSettings interface{} `json:"writeProvisionedThroughputSettings"`
}

Properties for defining a `AWS::DynamoDB::GlobalTable`.

type CfnGlobalTable_AttributeDefinitionProperty

type CfnGlobalTable_AttributeDefinitionProperty struct {
	// `CfnGlobalTable.AttributeDefinitionProperty.AttributeName`.
	AttributeName *string `json:"attributeName"`
	// `CfnGlobalTable.AttributeDefinitionProperty.AttributeType`.
	AttributeType *string `json:"attributeType"`
}

type CfnGlobalTable_CapacityAutoScalingSettingsProperty

type CfnGlobalTable_CapacityAutoScalingSettingsProperty struct {
	// `CfnGlobalTable.CapacityAutoScalingSettingsProperty.MaxCapacity`.
	MaxCapacity *float64 `json:"maxCapacity"`
	// `CfnGlobalTable.CapacityAutoScalingSettingsProperty.MinCapacity`.
	MinCapacity *float64 `json:"minCapacity"`
	// `CfnGlobalTable.CapacityAutoScalingSettingsProperty.TargetTrackingScalingPolicyConfiguration`.
	TargetTrackingScalingPolicyConfiguration interface{} `json:"targetTrackingScalingPolicyConfiguration"`
	// `CfnGlobalTable.CapacityAutoScalingSettingsProperty.SeedCapacity`.
	SeedCapacity *float64 `json:"seedCapacity"`
}

type CfnGlobalTable_ContributorInsightsSpecificationProperty

type CfnGlobalTable_ContributorInsightsSpecificationProperty struct {
	// `CfnGlobalTable.ContributorInsightsSpecificationProperty.Enabled`.
	Enabled interface{} `json:"enabled"`
}

type CfnGlobalTable_GlobalSecondaryIndexProperty

type CfnGlobalTable_GlobalSecondaryIndexProperty struct {
	// `CfnGlobalTable.GlobalSecondaryIndexProperty.IndexName`.
	IndexName *string `json:"indexName"`
	// `CfnGlobalTable.GlobalSecondaryIndexProperty.KeySchema`.
	KeySchema interface{} `json:"keySchema"`
	// `CfnGlobalTable.GlobalSecondaryIndexProperty.Projection`.
	Projection interface{} `json:"projection"`
	// `CfnGlobalTable.GlobalSecondaryIndexProperty.WriteProvisionedThroughputSettings`.
	WriteProvisionedThroughputSettings interface{} `json:"writeProvisionedThroughputSettings"`
}

type CfnGlobalTable_KeySchemaProperty

type CfnGlobalTable_KeySchemaProperty struct {
	// `CfnGlobalTable.KeySchemaProperty.AttributeName`.
	AttributeName *string `json:"attributeName"`
	// `CfnGlobalTable.KeySchemaProperty.KeyType`.
	KeyType *string `json:"keyType"`
}

type CfnGlobalTable_LocalSecondaryIndexProperty

type CfnGlobalTable_LocalSecondaryIndexProperty struct {
	// `CfnGlobalTable.LocalSecondaryIndexProperty.IndexName`.
	IndexName *string `json:"indexName"`
	// `CfnGlobalTable.LocalSecondaryIndexProperty.KeySchema`.
	KeySchema interface{} `json:"keySchema"`
	// `CfnGlobalTable.LocalSecondaryIndexProperty.Projection`.
	Projection interface{} `json:"projection"`
}

type CfnGlobalTable_PointInTimeRecoverySpecificationProperty

type CfnGlobalTable_PointInTimeRecoverySpecificationProperty struct {
	// `CfnGlobalTable.PointInTimeRecoverySpecificationProperty.PointInTimeRecoveryEnabled`.
	PointInTimeRecoveryEnabled interface{} `json:"pointInTimeRecoveryEnabled"`
}

type CfnGlobalTable_ProjectionProperty

type CfnGlobalTable_ProjectionProperty struct {
	// `CfnGlobalTable.ProjectionProperty.NonKeyAttributes`.
	NonKeyAttributes *[]*string `json:"nonKeyAttributes"`
	// `CfnGlobalTable.ProjectionProperty.ProjectionType`.
	ProjectionType *string `json:"projectionType"`
}

type CfnGlobalTable_ReadProvisionedThroughputSettingsProperty

type CfnGlobalTable_ReadProvisionedThroughputSettingsProperty struct {
	// `CfnGlobalTable.ReadProvisionedThroughputSettingsProperty.ReadCapacityAutoScalingSettings`.
	ReadCapacityAutoScalingSettings interface{} `json:"readCapacityAutoScalingSettings"`
	// `CfnGlobalTable.ReadProvisionedThroughputSettingsProperty.ReadCapacityUnits`.
	ReadCapacityUnits *float64 `json:"readCapacityUnits"`
}

type CfnGlobalTable_ReplicaGlobalSecondaryIndexSpecificationProperty

type CfnGlobalTable_ReplicaGlobalSecondaryIndexSpecificationProperty struct {
	// `CfnGlobalTable.ReplicaGlobalSecondaryIndexSpecificationProperty.IndexName`.
	IndexName *string `json:"indexName"`
	// `CfnGlobalTable.ReplicaGlobalSecondaryIndexSpecificationProperty.ContributorInsightsSpecification`.
	ContributorInsightsSpecification interface{} `json:"contributorInsightsSpecification"`
	// `CfnGlobalTable.ReplicaGlobalSecondaryIndexSpecificationProperty.ReadProvisionedThroughputSettings`.
	ReadProvisionedThroughputSettings interface{} `json:"readProvisionedThroughputSettings"`
}

type CfnGlobalTable_ReplicaSSESpecificationProperty

type CfnGlobalTable_ReplicaSSESpecificationProperty struct {
	// `CfnGlobalTable.ReplicaSSESpecificationProperty.KMSMasterKeyId`.
	KmsMasterKeyId *string `json:"kmsMasterKeyId"`
}

type CfnGlobalTable_ReplicaSpecificationProperty

type CfnGlobalTable_ReplicaSpecificationProperty struct {
	// `CfnGlobalTable.ReplicaSpecificationProperty.Region`.
	Region *string `json:"region"`
	// `CfnGlobalTable.ReplicaSpecificationProperty.ContributorInsightsSpecification`.
	ContributorInsightsSpecification interface{} `json:"contributorInsightsSpecification"`
	// `CfnGlobalTable.ReplicaSpecificationProperty.GlobalSecondaryIndexes`.
	GlobalSecondaryIndexes interface{} `json:"globalSecondaryIndexes"`
	// `CfnGlobalTable.ReplicaSpecificationProperty.PointInTimeRecoverySpecification`.
	PointInTimeRecoverySpecification interface{} `json:"pointInTimeRecoverySpecification"`
	// `CfnGlobalTable.ReplicaSpecificationProperty.ReadProvisionedThroughputSettings`.
	ReadProvisionedThroughputSettings interface{} `json:"readProvisionedThroughputSettings"`
	// `CfnGlobalTable.ReplicaSpecificationProperty.SSESpecification`.
	SseSpecification interface{} `json:"sseSpecification"`
	// `CfnGlobalTable.ReplicaSpecificationProperty.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
}

type CfnGlobalTable_SSESpecificationProperty

type CfnGlobalTable_SSESpecificationProperty struct {
	// `CfnGlobalTable.SSESpecificationProperty.SSEEnabled`.
	SseEnabled interface{} `json:"sseEnabled"`
	// `CfnGlobalTable.SSESpecificationProperty.SSEType`.
	SseType *string `json:"sseType"`
}

type CfnGlobalTable_StreamSpecificationProperty

type CfnGlobalTable_StreamSpecificationProperty struct {
	// `CfnGlobalTable.StreamSpecificationProperty.StreamViewType`.
	StreamViewType *string `json:"streamViewType"`
}

type CfnGlobalTable_TargetTrackingScalingPolicyConfigurationProperty

type CfnGlobalTable_TargetTrackingScalingPolicyConfigurationProperty struct {
	// `CfnGlobalTable.TargetTrackingScalingPolicyConfigurationProperty.TargetValue`.
	TargetValue *float64 `json:"targetValue"`
	// `CfnGlobalTable.TargetTrackingScalingPolicyConfigurationProperty.DisableScaleIn`.
	DisableScaleIn interface{} `json:"disableScaleIn"`
	// `CfnGlobalTable.TargetTrackingScalingPolicyConfigurationProperty.ScaleInCooldown`.
	ScaleInCooldown *float64 `json:"scaleInCooldown"`
	// `CfnGlobalTable.TargetTrackingScalingPolicyConfigurationProperty.ScaleOutCooldown`.
	ScaleOutCooldown *float64 `json:"scaleOutCooldown"`
}

type CfnGlobalTable_TimeToLiveSpecificationProperty

type CfnGlobalTable_TimeToLiveSpecificationProperty struct {
	// `CfnGlobalTable.TimeToLiveSpecificationProperty.Enabled`.
	Enabled interface{} `json:"enabled"`
	// `CfnGlobalTable.TimeToLiveSpecificationProperty.AttributeName`.
	AttributeName *string `json:"attributeName"`
}

type CfnGlobalTable_WriteProvisionedThroughputSettingsProperty

type CfnGlobalTable_WriteProvisionedThroughputSettingsProperty struct {
	// `CfnGlobalTable.WriteProvisionedThroughputSettingsProperty.WriteCapacityAutoScalingSettings`.
	WriteCapacityAutoScalingSettings interface{} `json:"writeCapacityAutoScalingSettings"`
}

type CfnTable

type CfnTable interface {
	awscdk.CfnResource
	awscdk.IInspectable
	AttrArn() *string
	AttributeDefinitions() interface{}
	SetAttributeDefinitions(val interface{})
	AttrStreamArn() *string
	BillingMode() *string
	SetBillingMode(val *string)
	CfnOptions() awscdk.ICfnResourceOptions
	CfnProperties() *map[string]interface{}
	CfnResourceType() *string
	ContributorInsightsSpecification() interface{}
	SetContributorInsightsSpecification(val interface{})
	CreationStack() *[]*string
	GlobalSecondaryIndexes() interface{}
	SetGlobalSecondaryIndexes(val interface{})
	KeySchema() interface{}
	SetKeySchema(val interface{})
	KinesisStreamSpecification() interface{}
	SetKinesisStreamSpecification(val interface{})
	LocalSecondaryIndexes() interface{}
	SetLocalSecondaryIndexes(val interface{})
	LogicalId() *string
	Node() awscdk.ConstructNode
	PointInTimeRecoverySpecification() interface{}
	SetPointInTimeRecoverySpecification(val interface{})
	ProvisionedThroughput() interface{}
	SetProvisionedThroughput(val interface{})
	Ref() *string
	SseSpecification() interface{}
	SetSseSpecification(val interface{})
	Stack() awscdk.Stack
	StreamSpecification() interface{}
	SetStreamSpecification(val interface{})
	TableName() *string
	SetTableName(val *string)
	Tags() awscdk.TagManager
	TimeToLiveSpecification() interface{}
	SetTimeToLiveSpecification(val interface{})
	UpdatedProperites() *map[string]interface{}
	AddDeletionOverride(path *string)
	AddDependsOn(target awscdk.CfnResource)
	AddMetadata(key *string, value interface{})
	AddOverride(path *string, value interface{})
	AddPropertyDeletionOverride(propertyPath *string)
	AddPropertyOverride(propertyPath *string, value interface{})
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions)
	GetAtt(attributeName *string) awscdk.Reference
	GetMetadata(key *string) interface{}
	Inspect(inspector awscdk.TreeInspector)
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	OverrideLogicalId(newLogicalId *string)
	Prepare()
	RenderProperties(props *map[string]interface{}) *map[string]interface{}
	ShouldSynthesize() *bool
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
	ValidateProperties(_properties interface{})
}

A CloudFormation `AWS::DynamoDB::Table`.

func NewCfnTable

func NewCfnTable(scope awscdk.Construct, id *string, props *CfnTableProps) CfnTable

Create a new `AWS::DynamoDB::Table`.

type CfnTableProps

type CfnTableProps struct {
	// `AWS::DynamoDB::Table.KeySchema`.
	KeySchema interface{} `json:"keySchema"`
	// `AWS::DynamoDB::Table.AttributeDefinitions`.
	AttributeDefinitions interface{} `json:"attributeDefinitions"`
	// `AWS::DynamoDB::Table.BillingMode`.
	BillingMode *string `json:"billingMode"`
	// `AWS::DynamoDB::Table.ContributorInsightsSpecification`.
	ContributorInsightsSpecification interface{} `json:"contributorInsightsSpecification"`
	// `AWS::DynamoDB::Table.GlobalSecondaryIndexes`.
	GlobalSecondaryIndexes interface{} `json:"globalSecondaryIndexes"`
	// `AWS::DynamoDB::Table.KinesisStreamSpecification`.
	KinesisStreamSpecification interface{} `json:"kinesisStreamSpecification"`
	// `AWS::DynamoDB::Table.LocalSecondaryIndexes`.
	LocalSecondaryIndexes interface{} `json:"localSecondaryIndexes"`
	// `AWS::DynamoDB::Table.PointInTimeRecoverySpecification`.
	PointInTimeRecoverySpecification interface{} `json:"pointInTimeRecoverySpecification"`
	// `AWS::DynamoDB::Table.ProvisionedThroughput`.
	ProvisionedThroughput interface{} `json:"provisionedThroughput"`
	// `AWS::DynamoDB::Table.SSESpecification`.
	SseSpecification interface{} `json:"sseSpecification"`
	// `AWS::DynamoDB::Table.StreamSpecification`.
	StreamSpecification interface{} `json:"streamSpecification"`
	// `AWS::DynamoDB::Table.TableName`.
	TableName *string `json:"tableName"`
	// `AWS::DynamoDB::Table.Tags`.
	Tags *[]*awscdk.CfnTag `json:"tags"`
	// `AWS::DynamoDB::Table.TimeToLiveSpecification`.
	TimeToLiveSpecification interface{} `json:"timeToLiveSpecification"`
}

Properties for defining a `AWS::DynamoDB::Table`.

type CfnTable_AttributeDefinitionProperty

type CfnTable_AttributeDefinitionProperty struct {
	// `CfnTable.AttributeDefinitionProperty.AttributeName`.
	AttributeName *string `json:"attributeName"`
	// `CfnTable.AttributeDefinitionProperty.AttributeType`.
	AttributeType *string `json:"attributeType"`
}

type CfnTable_ContributorInsightsSpecificationProperty

type CfnTable_ContributorInsightsSpecificationProperty struct {
	// `CfnTable.ContributorInsightsSpecificationProperty.Enabled`.
	Enabled interface{} `json:"enabled"`
}

type CfnTable_GlobalSecondaryIndexProperty

type CfnTable_GlobalSecondaryIndexProperty struct {
	// `CfnTable.GlobalSecondaryIndexProperty.IndexName`.
	IndexName *string `json:"indexName"`
	// `CfnTable.GlobalSecondaryIndexProperty.KeySchema`.
	KeySchema interface{} `json:"keySchema"`
	// `CfnTable.GlobalSecondaryIndexProperty.Projection`.
	Projection interface{} `json:"projection"`
	// `CfnTable.GlobalSecondaryIndexProperty.ContributorInsightsSpecification`.
	ContributorInsightsSpecification interface{} `json:"contributorInsightsSpecification"`
	// `CfnTable.GlobalSecondaryIndexProperty.ProvisionedThroughput`.
	ProvisionedThroughput interface{} `json:"provisionedThroughput"`
}

type CfnTable_KeySchemaProperty

type CfnTable_KeySchemaProperty struct {
	// `CfnTable.KeySchemaProperty.AttributeName`.
	AttributeName *string `json:"attributeName"`
	// `CfnTable.KeySchemaProperty.KeyType`.
	KeyType *string `json:"keyType"`
}

type CfnTable_KinesisStreamSpecificationProperty

type CfnTable_KinesisStreamSpecificationProperty struct {
	// `CfnTable.KinesisStreamSpecificationProperty.StreamArn`.
	StreamArn *string `json:"streamArn"`
}

type CfnTable_LocalSecondaryIndexProperty

type CfnTable_LocalSecondaryIndexProperty struct {
	// `CfnTable.LocalSecondaryIndexProperty.IndexName`.
	IndexName *string `json:"indexName"`
	// `CfnTable.LocalSecondaryIndexProperty.KeySchema`.
	KeySchema interface{} `json:"keySchema"`
	// `CfnTable.LocalSecondaryIndexProperty.Projection`.
	Projection interface{} `json:"projection"`
}

type CfnTable_PointInTimeRecoverySpecificationProperty

type CfnTable_PointInTimeRecoverySpecificationProperty struct {
	// `CfnTable.PointInTimeRecoverySpecificationProperty.PointInTimeRecoveryEnabled`.
	PointInTimeRecoveryEnabled interface{} `json:"pointInTimeRecoveryEnabled"`
}

type CfnTable_ProjectionProperty

type CfnTable_ProjectionProperty struct {
	// `CfnTable.ProjectionProperty.NonKeyAttributes`.
	NonKeyAttributes *[]*string `json:"nonKeyAttributes"`
	// `CfnTable.ProjectionProperty.ProjectionType`.
	ProjectionType *string `json:"projectionType"`
}

type CfnTable_ProvisionedThroughputProperty

type CfnTable_ProvisionedThroughputProperty struct {
	// `CfnTable.ProvisionedThroughputProperty.ReadCapacityUnits`.
	ReadCapacityUnits *float64 `json:"readCapacityUnits"`
	// `CfnTable.ProvisionedThroughputProperty.WriteCapacityUnits`.
	WriteCapacityUnits *float64 `json:"writeCapacityUnits"`
}

type CfnTable_SSESpecificationProperty

type CfnTable_SSESpecificationProperty struct {
	// `CfnTable.SSESpecificationProperty.SSEEnabled`.
	SseEnabled interface{} `json:"sseEnabled"`
	// `CfnTable.SSESpecificationProperty.KMSMasterKeyId`.
	KmsMasterKeyId *string `json:"kmsMasterKeyId"`
	// `CfnTable.SSESpecificationProperty.SSEType`.
	SseType *string `json:"sseType"`
}

type CfnTable_StreamSpecificationProperty

type CfnTable_StreamSpecificationProperty struct {
	// `CfnTable.StreamSpecificationProperty.StreamViewType`.
	StreamViewType *string `json:"streamViewType"`
}

type CfnTable_TimeToLiveSpecificationProperty

type CfnTable_TimeToLiveSpecificationProperty struct {
	// `CfnTable.TimeToLiveSpecificationProperty.AttributeName`.
	AttributeName *string `json:"attributeName"`
	// `CfnTable.TimeToLiveSpecificationProperty.Enabled`.
	Enabled interface{} `json:"enabled"`
}

type EnableScalingProps

type EnableScalingProps struct {
	// Maximum capacity to scale to.
	// Experimental.
	MaxCapacity *float64 `json:"maxCapacity"`
	// Minimum capacity to scale to.
	// Experimental.
	MinCapacity *float64 `json:"minCapacity"`
}

Properties for enabling DynamoDB capacity scaling. Experimental.

type GlobalSecondaryIndexProps

type GlobalSecondaryIndexProps struct {
	// The name of the secondary index.
	// Experimental.
	IndexName *string `json:"indexName"`
	// The non-key attributes that are projected into the secondary index.
	// Experimental.
	NonKeyAttributes *[]*string `json:"nonKeyAttributes"`
	// The set of attributes that are projected into the secondary index.
	// Experimental.
	ProjectionType ProjectionType `json:"projectionType"`
	// Partition key attribute definition.
	// Experimental.
	PartitionKey *Attribute `json:"partitionKey"`
	// Sort key attribute definition.
	// Experimental.
	SortKey *Attribute `json:"sortKey"`
	// The read capacity for the global secondary index.
	//
	// Can only be provided if table billingMode is Provisioned or undefined.
	// Experimental.
	ReadCapacity *float64 `json:"readCapacity"`
	// The write capacity for the global secondary index.
	//
	// Can only be provided if table billingMode is Provisioned or undefined.
	// Experimental.
	WriteCapacity *float64 `json:"writeCapacity"`
}

Properties for a global secondary index. Experimental.

type IScalableTableAttribute

type IScalableTableAttribute interface {
	// Add scheduled scaling for this scaling attribute.
	// Experimental.
	ScaleOnSchedule(id *string, actions *awsapplicationautoscaling.ScalingSchedule)
	// Scale out or in to keep utilization at a given level.
	// Experimental.
	ScaleOnUtilization(props *UtilizationScalingProps)
}

Interface for scalable attributes. Experimental.

type ITable

type ITable interface {
	awscdk.IResource
	// 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.
	// Experimental.
	Grant(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	// 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.
	// Experimental.
	GrantFullAccess(grantee awsiam.IGrantable) awsiam.Grant
	// 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.
	// Experimental.
	GrantReadData(grantee awsiam.IGrantable) awsiam.Grant
	// 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.
	// Experimental.
	GrantReadWriteData(grantee awsiam.IGrantable) awsiam.Grant
	// 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.
	// Experimental.
	GrantStream(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	// 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.
	// Experimental.
	GrantStreamRead(grantee awsiam.IGrantable) awsiam.Grant
	// Permits an IAM Principal to list streams attached to current dynamodb table.
	// Experimental.
	GrantTableListStreams(grantee awsiam.IGrantable) awsiam.Grant
	// 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.
	// Experimental.
	GrantWriteData(grantee awsiam.IGrantable) awsiam.Grant
	// Metric for the number of Errors executing all Lambdas.
	// Experimental.
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the conditional check failed requests.
	// Experimental.
	MetricConditionalCheckFailedRequests(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the consumed read capacity units.
	// Experimental.
	MetricConsumedReadCapacityUnits(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the consumed write capacity units.
	// Experimental.
	MetricConsumedWriteCapacityUnits(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the successful request latency.
	// Experimental.
	MetricSuccessfulRequestLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the system errors.
	// Deprecated: use `metricSystemErrorsForOperations`
	MetricSystemErrors(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the system errors this table.
	// Experimental.
	MetricSystemErrorsForOperations(props *SystemErrorsForOperationsMetricOptions) awscloudwatch.IMetric
	// Metric for throttled requests.
	// Experimental.
	MetricThrottledRequests(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Metric for the user errors.
	// Experimental.
	MetricUserErrors(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	// Optional KMS encryption key associated with this table.
	// Experimental.
	EncryptionKey() awskms.IKey
	// Arn of the dynamodb table.
	// Experimental.
	TableArn() *string
	// Table name of the dynamodb table.
	// Experimental.
	TableName() *string
	// ARN of the table's stream, if there is one.
	// Experimental.
	TableStreamArn() *string
}

An interface that represents a DynamoDB Table - either created with the CDK, or an existing one. Experimental.

func Table_FromTableArn

func Table_FromTableArn(scope constructs.Construct, id *string, tableArn *string) ITable

Creates a Table construct that represents an external table via table arn. Experimental.

func Table_FromTableAttributes

func Table_FromTableAttributes(scope constructs.Construct, id *string, attrs *TableAttributes) ITable

Creates a Table construct that represents an external table. Experimental.

func Table_FromTableName

func Table_FromTableName(scope constructs.Construct, id *string, tableName *string) ITable

Creates a Table construct that represents an external table via table name. Experimental.

type LocalSecondaryIndexProps

type LocalSecondaryIndexProps struct {
	// The name of the secondary index.
	// Experimental.
	IndexName *string `json:"indexName"`
	// The non-key attributes that are projected into the secondary index.
	// Experimental.
	NonKeyAttributes *[]*string `json:"nonKeyAttributes"`
	// The set of attributes that are projected into the secondary index.
	// Experimental.
	ProjectionType ProjectionType `json:"projectionType"`
	// The attribute of a sort key for the local secondary index.
	// Experimental.
	SortKey *Attribute `json:"sortKey"`
}

Properties for a local secondary index. Experimental.

type Operation

type Operation string

Supported DynamoDB table operations. Experimental.

const (
	Operation_GET_ITEM         Operation = "GET_ITEM"
	Operation_BATCH_GET_ITEM   Operation = "BATCH_GET_ITEM"
	Operation_SCAN             Operation = "SCAN"
	Operation_QUERY            Operation = "QUERY"
	Operation_GET_RECORDS      Operation = "GET_RECORDS"
	Operation_PUT_ITEM         Operation = "PUT_ITEM"
	Operation_DELETE_ITEM      Operation = "DELETE_ITEM"
	Operation_UPDATE_ITEM      Operation = "UPDATE_ITEM"
	Operation_BATCH_WRITE_ITEM Operation = "BATCH_WRITE_ITEM"
)

type ProjectionType

type ProjectionType string

The set of attributes that are projected into the index. See: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Projection.html

Experimental.

const (
	ProjectionType_KEYS_ONLY ProjectionType = "KEYS_ONLY"
	ProjectionType_INCLUDE   ProjectionType = "INCLUDE"
	ProjectionType_ALL       ProjectionType = "ALL"
)

type SchemaOptions

type SchemaOptions struct {
	// Partition key attribute definition.
	// Experimental.
	PartitionKey *Attribute `json:"partitionKey"`
	// Sort key attribute definition.
	// Experimental.
	SortKey *Attribute `json:"sortKey"`
}

Represents the table schema attributes. Experimental.

type SecondaryIndexProps

type SecondaryIndexProps struct {
	// The name of the secondary index.
	// Experimental.
	IndexName *string `json:"indexName"`
	// The non-key attributes that are projected into the secondary index.
	// Experimental.
	NonKeyAttributes *[]*string `json:"nonKeyAttributes"`
	// The set of attributes that are projected into the secondary index.
	// Experimental.
	ProjectionType ProjectionType `json:"projectionType"`
}

Properties for a secondary index. Experimental.

type StreamViewType

type StreamViewType string

When an item in the table is modified, StreamViewType determines what information is written to the stream for this table. See: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_StreamSpecification.html

Experimental.

const (
	StreamViewType_NEW_IMAGE          StreamViewType = "NEW_IMAGE"
	StreamViewType_OLD_IMAGE          StreamViewType = "OLD_IMAGE"
	StreamViewType_NEW_AND_OLD_IMAGES StreamViewType = "NEW_AND_OLD_IMAGES"
	StreamViewType_KEYS_ONLY          StreamViewType = "KEYS_ONLY"
)

type SystemErrorsForOperationsMetricOptions

type SystemErrorsForOperationsMetricOptions struct {
	// Account which this metric comes from.
	// Experimental.
	Account *string `json:"account"`
	// The hex color code, prefixed with '#' (e.g. '#00ff00'), to use when this metric is rendered on a graph. The `Color` class has a set of standard colors that can be used here.
	// Experimental.
	Color *string `json:"color"`
	// Dimensions of the metric.
	// Deprecated: Use 'dimensionsMap' instead.
	Dimensions *map[string]interface{} `json:"dimensions"`
	// Dimensions of the metric.
	// Experimental.
	DimensionsMap *map[string]*string `json:"dimensionsMap"`
	// Label for this metric when added to a Graph in a Dashboard.
	// Experimental.
	Label *string `json:"label"`
	// The period over which the specified statistic is applied.
	// Experimental.
	Period awscdk.Duration `json:"period"`
	// Region which this metric comes from.
	// Experimental.
	Region *string `json:"region"`
	// What function to use for aggregating.
	//
	// Can be one of the following:
	//
	// - "Minimum" | "min"
	// - "Maximum" | "max"
	// - "Average" | "avg"
	// - "Sum" | "sum"
	// - "SampleCount | "n"
	// - "pNN.NN"
	// Experimental.
	Statistic *string `json:"statistic"`
	// Unit used to filter the metric stream.
	//
	// Only refer to datums emitted to the metric stream with the given unit and
	// ignore all others. Only useful when datums are being emitted to the same
	// metric stream under different units.
	//
	// The default is to use all matric datums in the stream, regardless of unit,
	// which is recommended in nearly all cases.
	//
	// CloudWatch does not honor this property for graphs.
	// Experimental.
	Unit awscloudwatch.Unit `json:"unit"`
	// The operations to apply the metric to.
	// Experimental.
	Operations *[]Operation `json:"operations"`
}

Options for configuring a system errors metric that considers multiple operations. Experimental.

type Table

type Table interface {
	awscdk.Resource
	ITable
	EncryptionKey() awskms.IKey
	Env() *awscdk.ResourceEnvironment
	HasIndex() *bool
	Node() awscdk.ConstructNode
	PhysicalName() *string
	RegionalArns() *[]*string
	Stack() awscdk.Stack
	TableArn() *string
	TableName() *string
	TableStreamArn() *string
	AddGlobalSecondaryIndex(props *GlobalSecondaryIndexProps)
	AddLocalSecondaryIndex(props *LocalSecondaryIndexProps)
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	AutoScaleGlobalSecondaryIndexReadCapacity(indexName *string, props *EnableScalingProps) IScalableTableAttribute
	AutoScaleGlobalSecondaryIndexWriteCapacity(indexName *string, props *EnableScalingProps) IScalableTableAttribute
	AutoScaleReadCapacity(props *EnableScalingProps) IScalableTableAttribute
	AutoScaleWriteCapacity(props *EnableScalingProps) IScalableTableAttribute
	GeneratePhysicalName() *string
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	GetResourceNameAttribute(nameAttr *string) *string
	Grant(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	GrantFullAccess(grantee awsiam.IGrantable) awsiam.Grant
	GrantReadData(grantee awsiam.IGrantable) awsiam.Grant
	GrantReadWriteData(grantee awsiam.IGrantable) awsiam.Grant
	GrantStream(grantee awsiam.IGrantable, actions ...*string) awsiam.Grant
	GrantStreamRead(grantee awsiam.IGrantable) awsiam.Grant
	GrantTableListStreams(grantee awsiam.IGrantable) awsiam.Grant
	GrantWriteData(grantee awsiam.IGrantable) awsiam.Grant
	Metric(metricName *string, props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricConditionalCheckFailedRequests(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricConsumedReadCapacityUnits(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricConsumedWriteCapacityUnits(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSuccessfulRequestLatency(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSystemErrors(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricSystemErrorsForOperations(props *SystemErrorsForOperationsMetricOptions) awscloudwatch.IMetric
	MetricThrottledRequests(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	MetricUserErrors(props *awscloudwatch.MetricOptions) awscloudwatch.Metric
	OnPrepare()
	OnSynthesize(session constructs.ISynthesisSession)
	OnValidate() *[]*string
	Prepare()
	Schema(indexName *string) *SchemaOptions
	Synthesize(session awscdk.ISynthesisSession)
	ToString() *string
	Validate() *[]*string
}

Provides a DynamoDB table. Experimental.

func NewTable

func NewTable(scope constructs.Construct, id *string, props *TableProps) Table

Experimental.

type TableAttributes

type TableAttributes struct {
	// KMS encryption key, if this table uses a customer-managed encryption key.
	// Experimental.
	EncryptionKey awskms.IKey `json:"encryptionKey"`
	// The name of the global indexes set for this Table.
	//
	// Note that you need to set either this property,
	// or {@link localIndexes},
	// if you want methods like grantReadData()
	// to grant permissions for indexes as well as the table itself.
	// Experimental.
	GlobalIndexes *[]*string `json:"globalIndexes"`
	// The name of the local indexes set for this Table.
	//
	// Note that you need to set either this property,
	// or {@link globalIndexes},
	// if you want methods like grantReadData()
	// to grant permissions for indexes as well as the table itself.
	// Experimental.
	LocalIndexes *[]*string `json:"localIndexes"`
	// The ARN of the dynamodb table.
	//
	// One of this, or {@link tableName}, is required.
	// Experimental.
	TableArn *string `json:"tableArn"`
	// The table name of the dynamodb table.
	//
	// One of this, or {@link tableArn}, is required.
	// Experimental.
	TableName *string `json:"tableName"`
	// The ARN of the table's stream.
	// Experimental.
	TableStreamArn *string `json:"tableStreamArn"`
}

Reference to a dynamodb table. Experimental.

type TableEncryption

type TableEncryption string

What kind of server-side encryption to apply to this table. Experimental.

const (
	TableEncryption_DEFAULT          TableEncryption = "DEFAULT"
	TableEncryption_CUSTOMER_MANAGED TableEncryption = "CUSTOMER_MANAGED"
	TableEncryption_AWS_MANAGED      TableEncryption = "AWS_MANAGED"
)

type TableOptions

type TableOptions struct {
	// Partition key attribute definition.
	// Experimental.
	PartitionKey *Attribute `json:"partitionKey"`
	// Sort key attribute definition.
	// Experimental.
	SortKey *Attribute `json:"sortKey"`
	// Specify how you are charged for read and write throughput and how you manage capacity.
	// Experimental.
	BillingMode BillingMode `json:"billingMode"`
	// Whether CloudWatch contributor insights is enabled.
	// Experimental.
	ContributorInsightsEnabled *bool `json:"contributorInsightsEnabled"`
	// Whether server-side encryption with an AWS managed customer master key is enabled.
	//
	// This property cannot be set if `serverSideEncryption` is set.
	// Experimental.
	Encryption TableEncryption `json:"encryption"`
	// External KMS key to use for table encryption.
	//
	// This property can only be set if `encryption` is set to `TableEncryption.CUSTOMER_MANAGED`.
	// Experimental.
	EncryptionKey awskms.IKey `json:"encryptionKey"`
	// Whether point-in-time recovery is enabled.
	// Experimental.
	PointInTimeRecovery *bool `json:"pointInTimeRecovery"`
	// 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.
	// Experimental.
	ReadCapacity *float64 `json:"readCapacity"`
	// The removal policy to apply to the DynamoDB Table.
	// Experimental.
	RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy"`
	// Regions where replica tables will be created.
	// Experimental.
	ReplicationRegions *[]*string `json:"replicationRegions"`
	// The timeout for a table replication operation in a single region.
	// Experimental.
	ReplicationTimeout awscdk.Duration `json:"replicationTimeout"`
	// 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.
	// Deprecated: This property is deprecated. In order to obtain the same behavior as
	// enabling this, set the `encryption` property to `TableEncryption.AWS_MANAGED` instead.
	ServerSideEncryption *bool `json:"serverSideEncryption"`
	// When an item in the table is modified, StreamViewType determines what information is written to the stream for this table.
	// Experimental.
	Stream StreamViewType `json:"stream"`
	// The name of TTL attribute.
	// Experimental.
	TimeToLiveAttribute *string `json:"timeToLiveAttribute"`
	// 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.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-replicas
	//
	// Experimental.
	WaitForReplicationToFinish *bool `json:"waitForReplicationToFinish"`
	// 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.
	// Experimental.
	WriteCapacity *float64 `json:"writeCapacity"`
}

Properties of a DynamoDB Table.

Use {@link TableProps} for all table properties Experimental.

type TableProps

type TableProps struct {
	// Partition key attribute definition.
	// Experimental.
	PartitionKey *Attribute `json:"partitionKey"`
	// Sort key attribute definition.
	// Experimental.
	SortKey *Attribute `json:"sortKey"`
	// Specify how you are charged for read and write throughput and how you manage capacity.
	// Experimental.
	BillingMode BillingMode `json:"billingMode"`
	// Whether CloudWatch contributor insights is enabled.
	// Experimental.
	ContributorInsightsEnabled *bool `json:"contributorInsightsEnabled"`
	// Whether server-side encryption with an AWS managed customer master key is enabled.
	//
	// This property cannot be set if `serverSideEncryption` is set.
	// Experimental.
	Encryption TableEncryption `json:"encryption"`
	// External KMS key to use for table encryption.
	//
	// This property can only be set if `encryption` is set to `TableEncryption.CUSTOMER_MANAGED`.
	// Experimental.
	EncryptionKey awskms.IKey `json:"encryptionKey"`
	// Whether point-in-time recovery is enabled.
	// Experimental.
	PointInTimeRecovery *bool `json:"pointInTimeRecovery"`
	// 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.
	// Experimental.
	ReadCapacity *float64 `json:"readCapacity"`
	// The removal policy to apply to the DynamoDB Table.
	// Experimental.
	RemovalPolicy awscdk.RemovalPolicy `json:"removalPolicy"`
	// Regions where replica tables will be created.
	// Experimental.
	ReplicationRegions *[]*string `json:"replicationRegions"`
	// The timeout for a table replication operation in a single region.
	// Experimental.
	ReplicationTimeout awscdk.Duration `json:"replicationTimeout"`
	// 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.
	// Deprecated: This property is deprecated. In order to obtain the same behavior as
	// enabling this, set the `encryption` property to `TableEncryption.AWS_MANAGED` instead.
	ServerSideEncryption *bool `json:"serverSideEncryption"`
	// When an item in the table is modified, StreamViewType determines what information is written to the stream for this table.
	// Experimental.
	Stream StreamViewType `json:"stream"`
	// The name of TTL attribute.
	// Experimental.
	TimeToLiveAttribute *string `json:"timeToLiveAttribute"`
	// 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.
	// See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-replicas
	//
	// Experimental.
	WaitForReplicationToFinish *bool `json:"waitForReplicationToFinish"`
	// 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.
	// Experimental.
	WriteCapacity *float64 `json:"writeCapacity"`
	// Kinesis Data Stream to capture item-level changes for the table.
	// Experimental.
	KinesisStream awskinesis.IStream `json:"kinesisStream"`
	// Enforces a particular physical table name.
	// Experimental.
	TableName *string `json:"tableName"`
}

Properties for a DynamoDB Table. Experimental.

type UtilizationScalingProps

type UtilizationScalingProps struct {
	// Indicates whether scale in by the target tracking policy is disabled.
	//
	// If the value is true, scale in is disabled and the target tracking policy
	// won't remove capacity from the scalable resource. Otherwise, scale in is
	// enabled and the target tracking policy can remove capacity from the
	// scalable resource.
	// Experimental.
	DisableScaleIn *bool `json:"disableScaleIn"`
	// A name for the scaling policy.
	// Experimental.
	PolicyName *string `json:"policyName"`
	// Period after a scale in activity completes before another scale in activity can start.
	// Experimental.
	ScaleInCooldown awscdk.Duration `json:"scaleInCooldown"`
	// Period after a scale out activity completes before another scale out activity can start.
	// Experimental.
	ScaleOutCooldown awscdk.Duration `json:"scaleOutCooldown"`
	// Target utilization percentage for the attribute.
	// Experimental.
	TargetUtilizationPercent *float64 `json:"targetUtilizationPercent"`
}

Properties for enabling DynamoDB utilization tracking. Experimental.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL