Class CfnTableProps.Builder
- All Implemented Interfaces:
software.amazon.jsii.Builder<CfnTableProps>
- Enclosing interface:
- CfnTableProps
CfnTableProps-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbuild()Builds the configured instance.databaseName(String databaseName) Sets the value ofCfnTableProps.getDatabaseName()magneticStoreWriteProperties(IResolvable magneticStoreWriteProperties) Sets the value ofCfnTableProps.getMagneticStoreWriteProperties()magneticStoreWriteProperties(CfnTable.MagneticStoreWritePropertiesProperty magneticStoreWriteProperties) Sets the value ofCfnTableProps.getMagneticStoreWriteProperties()retentionProperties(IResolvable retentionProperties) Sets the value ofCfnTableProps.getRetentionProperties()retentionProperties(CfnTable.RetentionPropertiesProperty retentionProperties) Sets the value ofCfnTableProps.getRetentionProperties()Sets the value ofCfnTableProps.getTableName()Sets the value ofCfnTableProps.getTags()
-
Constructor Details
-
Builder
public Builder()
-
-
Method Details
-
databaseName
Sets the value ofCfnTableProps.getDatabaseName()- Parameters:
databaseName- The name of the Timestream database that contains this table. This parameter is required. Length Constraints : Minimum length of 3 bytes. Maximum length of 256 bytes.- Returns:
this
-
magneticStoreWriteProperties
@Stability(Stable) public CfnTableProps.Builder magneticStoreWriteProperties(IResolvable magneticStoreWriteProperties) Sets the value ofCfnTableProps.getMagneticStoreWriteProperties()- Parameters:
magneticStoreWriteProperties- Contains properties to set on the table when enabling magnetic store writes. This object has the following attributes:- EnableMagneticStoreWrites : A
booleanflag to enable magnetic store writes. - MagneticStoreRejectedDataLocation : The location to write error reports for records rejected, asynchronously, during magnetic store writes. Only
S3Configurationobjects are allowed. TheS3Configurationobject has the following attributes: - BucketName : The name of the S3 bucket.
- EncryptionOption : The encryption option for the S3 location. Valid values are S3 server-side encryption with an S3 managed key (
SSE_S3) or AWS managed key (SSE_KMS). - KmsKeyId : The AWS KMS key ID to use when encrypting with an AWS managed key.
- ObjectKeyPrefix : The prefix to use option for the objects stored in S3.
Both
BucketNameandEncryptionOptionare required whenS3Configurationis specified. If you specifySSE_KMSas yourEncryptionOptionthenKmsKeyIdis required .EnableMagneticStoreWritesattribute is required whenMagneticStoreWritePropertiesis specified.MagneticStoreRejectedDataLocationattribute is required whenEnableMagneticStoreWritesis set totrue.See the following examples:
JSON
{ "Type" : AWS::Timestream::Table", "Properties":{ "DatabaseName":"TestDatabase", "TableName":"TestTable", "MagneticStoreWriteProperties":{ "EnableMagneticStoreWrites":true, "MagneticStoreRejectedDataLocation":{ "S3Configuration":{ "BucketName":"testbucket", "EncryptionOption":"SSE_KMS", "KmsKeyId":"1234abcd-12ab-34cd-56ef-1234567890ab", "ObjectKeyPrefix":"prefix" } } } } }YAML
Type: AWS::Timestream::Table DependsOn: TestDatabase Properties: TableName: "TestTable" DatabaseName: "TestDatabase" MagneticStoreWriteProperties: EnableMagneticStoreWrites: true MagneticStoreRejectedDataLocation: S3Configuration: BucketName: "testbucket" EncryptionOption: "SSE_KMS" KmsKeyId: "1234abcd-12ab-34cd-56ef-1234567890ab" ObjectKeyPrefix: "prefix"- EnableMagneticStoreWrites : A
- Returns:
this
-
magneticStoreWriteProperties
@Stability(Stable) public CfnTableProps.Builder magneticStoreWriteProperties(CfnTable.MagneticStoreWritePropertiesProperty magneticStoreWriteProperties) Sets the value ofCfnTableProps.getMagneticStoreWriteProperties()- Parameters:
magneticStoreWriteProperties- Contains properties to set on the table when enabling magnetic store writes. This object has the following attributes:- EnableMagneticStoreWrites : A
booleanflag to enable magnetic store writes. - MagneticStoreRejectedDataLocation : The location to write error reports for records rejected, asynchronously, during magnetic store writes. Only
S3Configurationobjects are allowed. TheS3Configurationobject has the following attributes: - BucketName : The name of the S3 bucket.
- EncryptionOption : The encryption option for the S3 location. Valid values are S3 server-side encryption with an S3 managed key (
SSE_S3) or AWS managed key (SSE_KMS). - KmsKeyId : The AWS KMS key ID to use when encrypting with an AWS managed key.
- ObjectKeyPrefix : The prefix to use option for the objects stored in S3.
Both
BucketNameandEncryptionOptionare required whenS3Configurationis specified. If you specifySSE_KMSas yourEncryptionOptionthenKmsKeyIdis required .EnableMagneticStoreWritesattribute is required whenMagneticStoreWritePropertiesis specified.MagneticStoreRejectedDataLocationattribute is required whenEnableMagneticStoreWritesis set totrue.See the following examples:
JSON
{ "Type" : AWS::Timestream::Table", "Properties":{ "DatabaseName":"TestDatabase", "TableName":"TestTable", "MagneticStoreWriteProperties":{ "EnableMagneticStoreWrites":true, "MagneticStoreRejectedDataLocation":{ "S3Configuration":{ "BucketName":"testbucket", "EncryptionOption":"SSE_KMS", "KmsKeyId":"1234abcd-12ab-34cd-56ef-1234567890ab", "ObjectKeyPrefix":"prefix" } } } } }YAML
Type: AWS::Timestream::Table DependsOn: TestDatabase Properties: TableName: "TestTable" DatabaseName: "TestDatabase" MagneticStoreWriteProperties: EnableMagneticStoreWrites: true MagneticStoreRejectedDataLocation: S3Configuration: BucketName: "testbucket" EncryptionOption: "SSE_KMS" KmsKeyId: "1234abcd-12ab-34cd-56ef-1234567890ab" ObjectKeyPrefix: "prefix"- EnableMagneticStoreWrites : A
- Returns:
this
-
retentionProperties
@Stability(Stable) public CfnTableProps.Builder retentionProperties(IResolvable retentionProperties) Sets the value ofCfnTableProps.getRetentionProperties()- Parameters:
retentionProperties- The retention duration for the memory store and magnetic store. This object has the following attributes:.- MemoryStoreRetentionPeriodInHours : Retention duration for memory store, in hours.
- MagneticStoreRetentionPeriodInDays : Retention duration for magnetic store, in days.
Both attributes are of type
string. Both attributes are required whenRetentionPropertiesis specified.See the following examples:
JSON
{ "Type" : AWS::Timestream::Table", "Properties" : { "DatabaseName" : "TestDatabase", "TableName" : "TestTable", "RetentionProperties" : { "MemoryStoreRetentionPeriodInHours": "24", "MagneticStoreRetentionPeriodInDays": "7" } } }YAML
Type: AWS::Timestream::Table DependsOn: TestDatabase Properties: TableName: "TestTable" DatabaseName: "TestDatabase" RetentionProperties: MemoryStoreRetentionPeriodInHours: "24" MagneticStoreRetentionPeriodInDays: "7"- Returns:
this
-
retentionProperties
@Stability(Stable) public CfnTableProps.Builder retentionProperties(CfnTable.RetentionPropertiesProperty retentionProperties) Sets the value ofCfnTableProps.getRetentionProperties()- Parameters:
retentionProperties- The retention duration for the memory store and magnetic store. This object has the following attributes:.- MemoryStoreRetentionPeriodInHours : Retention duration for memory store, in hours.
- MagneticStoreRetentionPeriodInDays : Retention duration for magnetic store, in days.
Both attributes are of type
string. Both attributes are required whenRetentionPropertiesis specified.See the following examples:
JSON
{ "Type" : AWS::Timestream::Table", "Properties" : { "DatabaseName" : "TestDatabase", "TableName" : "TestTable", "RetentionProperties" : { "MemoryStoreRetentionPeriodInHours": "24", "MagneticStoreRetentionPeriodInDays": "7" } } }YAML
Type: AWS::Timestream::Table DependsOn: TestDatabase Properties: TableName: "TestTable" DatabaseName: "TestDatabase" RetentionProperties: MemoryStoreRetentionPeriodInHours: "24" MagneticStoreRetentionPeriodInDays: "7"- Returns:
this
-
tableName
Sets the value ofCfnTableProps.getTableName()- Parameters:
tableName- The name of the Timestream table. Length Constraints : Minimum length of 3 bytes. Maximum length of 256 bytes.- Returns:
this
-
tags
Sets the value ofCfnTableProps.getTags()- Parameters:
tags- The tags to add to the table.- Returns:
this
-
build
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<CfnTableProps>- Returns:
- a new instance of
CfnTableProps - Throws:
NullPointerException- if any required attribute was not provided
-