Class: AWSCDK::S3Tables::CfnTableBucketProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::S3Tables::CfnTableBucketProps
- Defined in:
- s3_tables/cfn_table_bucket_props.rb
Overview
Properties for defining a CfnTableBucket.
Instance Attribute Summary collapse
-
#encryption_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Configuration specifying how data should be encrypted.
-
#metrics_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Settings governing the Metric configuration for the table bucket.
-
#replication_configuration ⇒ AWSCDK::IResolvable, ...
readonly
Specifies replication configuration for the table bucket.
-
#storage_class_configuration ⇒ AWSCDK::IResolvable, ...
readonly
The configuration details for the storage class of tables or table buckets.
-
#table_bucket_name ⇒ String
readonly
The name for the table bucket.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
User tags (key-value pairs) to associate with the table bucket.
-
#unreferenced_file_removal ⇒ AWSCDK::IResolvable, ...
readonly
The unreferenced file removal settings for your table bucket.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(table_bucket_name:, encryption_configuration: nil, metrics_configuration: nil, replication_configuration: nil, storage_class_configuration: nil, tags: nil, unreferenced_file_removal: nil) ⇒ CfnTableBucketProps
constructor
A new instance of CfnTableBucketProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(table_bucket_name:, encryption_configuration: nil, metrics_configuration: nil, replication_configuration: nil, storage_class_configuration: nil, tags: nil, unreferenced_file_removal: nil) ⇒ CfnTableBucketProps
Returns a new instance of CfnTableBucketProps.
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 's3_tables/cfn_table_bucket_props.rb', line 16 def initialize(table_bucket_name:, encryption_configuration: nil, metrics_configuration: nil, replication_configuration: nil, storage_class_configuration: nil, tags: nil, unreferenced_file_removal: nil) @table_bucket_name = table_bucket_name Jsii::Type.check_type(@table_bucket_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "tableBucketName") @encryption_configuration = encryption_configuration.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTableBucket::EncryptionConfigurationProperty.new(**encryption_configuration.transform_keys(&:to_sym)) : encryption_configuration Jsii::Type.check_type(@encryption_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZUJ1Y2tldC5FbmNyeXB0aW9uQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "encryptionConfiguration") unless @encryption_configuration.nil? @metrics_configuration = metrics_configuration.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTableBucket::MetricsConfigurationProperty.new(**metrics_configuration.transform_keys(&:to_sym)) : metrics_configuration Jsii::Type.check_type(@metrics_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZUJ1Y2tldC5NZXRyaWNzQ29uZmlndXJhdGlvblByb3BlcnR5In1dfX0=")), "metricsConfiguration") unless @metrics_configuration.nil? @replication_configuration = replication_configuration.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTableBucket::ReplicationConfigurationProperty.new(**replication_configuration.transform_keys(&:to_sym)) : replication_configuration Jsii::Type.check_type(@replication_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZUJ1Y2tldC5SZXBsaWNhdGlvbkNvbmZpZ3VyYXRpb25Qcm9wZXJ0eSJ9XX19")), "replicationConfiguration") unless @replication_configuration.nil? @storage_class_configuration = storage_class_configuration.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTableBucket::StorageClassConfigurationProperty.new(**storage_class_configuration.transform_keys(&:to_sym)) : storage_class_configuration Jsii::Type.check_type(@storage_class_configuration, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZUJ1Y2tldC5TdG9yYWdlQ2xhc3NDb25maWd1cmF0aW9uUHJvcGVydHkifV19fQ==")), "storageClassConfiguration") unless @storage_class_configuration.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? @unreferenced_file_removal = unreferenced_file_removal.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTableBucket::UnreferencedFileRemovalProperty.new(**unreferenced_file_removal.transform_keys(&:to_sym)) : unreferenced_file_removal Jsii::Type.check_type(@unreferenced_file_removal, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZUJ1Y2tldC5VbnJlZmVyZW5jZWRGaWxlUmVtb3ZhbFByb3BlcnR5In1dfX0=")), "unreferencedFileRemoval") unless @unreferenced_file_removal.nil? end |
Instance Attribute Details
#encryption_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Configuration specifying how data should be encrypted.
This structure defines the encryption algorithm and optional KMS key to be used for server-side encryption.
44 45 46 |
# File 's3_tables/cfn_table_bucket_props.rb', line 44 def encryption_configuration @encryption_configuration end |
#metrics_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Settings governing the Metric configuration for the table bucket.
49 50 51 |
# File 's3_tables/cfn_table_bucket_props.rb', line 49 def metrics_configuration @metrics_configuration end |
#replication_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
Specifies replication configuration for the table bucket.
54 55 56 |
# File 's3_tables/cfn_table_bucket_props.rb', line 54 def replication_configuration @replication_configuration end |
#storage_class_configuration ⇒ AWSCDK::IResolvable, ... (readonly)
The configuration details for the storage class of tables or table buckets.
This allows you to optimize storage costs by selecting the appropriate storage class based on your access patterns and performance requirements.
61 62 63 |
# File 's3_tables/cfn_table_bucket_props.rb', line 61 def storage_class_configuration @storage_class_configuration end |
#table_bucket_name ⇒ String (readonly)
The name for the table bucket.
37 38 39 |
# File 's3_tables/cfn_table_bucket_props.rb', line 37 def table_bucket_name @table_bucket_name end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
User tags (key-value pairs) to associate with the table bucket.
66 67 68 |
# File 's3_tables/cfn_table_bucket_props.rb', line 66 def @tags end |
#unreferenced_file_removal ⇒ AWSCDK::IResolvable, ... (readonly)
The unreferenced file removal settings for your table bucket.
Unreferenced file removal identifies and deletes all objects that are not referenced by any table snapshots. For more information, see the Amazon S3 User Guide .
73 74 75 |
# File 's3_tables/cfn_table_bucket_props.rb', line 73 def unreferenced_file_removal @unreferenced_file_removal end |
Class Method Details
.jsii_properties ⇒ Object
75 76 77 78 79 80 81 82 83 84 85 |
# File 's3_tables/cfn_table_bucket_props.rb', line 75 def self.jsii_properties { :table_bucket_name => "tableBucketName", :encryption_configuration => "encryptionConfiguration", :metrics_configuration => "metricsConfiguration", :replication_configuration => "replicationConfiguration", :storage_class_configuration => "storageClassConfiguration", :tags => "tags", :unreferenced_file_removal => "unreferencedFileRemoval", } end |
Instance Method Details
#to_jsii ⇒ Object
87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 's3_tables/cfn_table_bucket_props.rb', line 87 def to_jsii result = {} result.merge!({ "tableBucketName" => @table_bucket_name, "encryptionConfiguration" => @encryption_configuration, "metricsConfiguration" => @metrics_configuration, "replicationConfiguration" => @replication_configuration, "storageClassConfiguration" => @storage_class_configuration, "tags" => @tags, "unreferencedFileRemoval" => @unreferenced_file_removal, }) result.compact end |