Class: AWSCDK::S3Tables::CfnTable::IcebergMetadataProperty
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::S3Tables::CfnTable::IcebergMetadataProperty
- Defined in:
- s3_tables/cfn_table.rb
Overview
Contains details about the metadata for an Iceberg table.
Instance Attribute Summary collapse
-
#iceberg_partition_spec ⇒ AWSCDK::IResolvable, ...
readonly
Partition specification for an Iceberg table.
-
#iceberg_schema ⇒ AWSCDK::IResolvable, ...
readonly
The schema for an Iceberg table.
-
#iceberg_schema_v2 ⇒ AWSCDK::IResolvable, ...
readonly
Contains details about the schema version 2 (V2) for an Iceberg table that supports Apache Iceberg Nested Types (struct, list, map).
-
#iceberg_sort_order ⇒ AWSCDK::IResolvable, ...
readonly
Sort order specification for an Iceberg table.
-
#table_properties ⇒ AWSCDK::IResolvable, ...
readonly
Iceberg table properties (e.g., format-version, write.parquet.compression-codec).
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(iceberg_partition_spec: nil, iceberg_schema: nil, iceberg_schema_v2: nil, iceberg_sort_order: nil, table_properties: nil) ⇒ IcebergMetadataProperty
constructor
A new instance of IcebergMetadataProperty.
- #to_jsii ⇒ Object
Constructor Details
#initialize(iceberg_partition_spec: nil, iceberg_schema: nil, iceberg_schema_v2: nil, iceberg_sort_order: nil, table_properties: nil) ⇒ IcebergMetadataProperty
Returns a new instance of IcebergMetadataProperty.
712 713 714 715 716 717 718 719 720 721 722 723 |
# File 's3_tables/cfn_table.rb', line 712 def initialize(iceberg_partition_spec: nil, iceberg_schema: nil, iceberg_schema_v2: nil, iceberg_sort_order: nil, table_properties: nil) @iceberg_partition_spec = iceberg_partition_spec.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTable::IcebergPartitionSpecProperty.new(**iceberg_partition_spec.transform_keys(&:to_sym)) : iceberg_partition_spec Jsii::Type.check_type(@iceberg_partition_spec, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZS5JY2ViZXJnUGFydGl0aW9uU3BlY1Byb3BlcnR5In1dfX0=")), "icebergPartitionSpec") unless @iceberg_partition_spec.nil? @iceberg_schema = iceberg_schema.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTable::IcebergSchemaProperty.new(**iceberg_schema.transform_keys(&:to_sym)) : iceberg_schema Jsii::Type.check_type(@iceberg_schema, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZS5JY2ViZXJnU2NoZW1hUHJvcGVydHkifV19fQ==")), "icebergSchema") unless @iceberg_schema.nil? @iceberg_schema_v2 = iceberg_schema_v2.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTable::IcebergSchemaV2Property.new(**iceberg_schema_v2.transform_keys(&:to_sym)) : iceberg_schema_v2 Jsii::Type.check_type(@iceberg_schema_v2, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZS5JY2ViZXJnU2NoZW1hVjJQcm9wZXJ0eSJ9XX19")), "icebergSchemaV2") unless @iceberg_schema_v2.nil? @iceberg_sort_order = iceberg_sort_order.is_a?(Hash) ? ::AWSCDK::S3Tables::CfnTable::IcebergSortOrderProperty.new(**iceberg_sort_order.transform_keys(&:to_sym)) : iceberg_sort_order Jsii::Type.check_type(@iceberg_sort_order, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zM3RhYmxlcy5DZm5UYWJsZS5JY2ViZXJnU29ydE9yZGVyUHJvcGVydHkifV19fQ==")), "icebergSortOrder") unless @iceberg_sort_order.nil? @table_properties = table_properties Jsii::Type.check_type(@table_properties, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsicHJpbWl0aXZlIjoic3RyaW5nIn0sImtpbmQiOiJtYXAifX1dfX0=")), "tableProperties") unless @table_properties.nil? end |
Instance Attribute Details
#iceberg_partition_spec ⇒ AWSCDK::IResolvable, ... (readonly)
Partition specification for an Iceberg table.
729 730 731 |
# File 's3_tables/cfn_table.rb', line 729 def iceberg_partition_spec @iceberg_partition_spec end |
#iceberg_schema ⇒ AWSCDK::IResolvable, ... (readonly)
The schema for an Iceberg table.
734 735 736 |
# File 's3_tables/cfn_table.rb', line 734 def iceberg_schema @iceberg_schema end |
#iceberg_schema_v2 ⇒ AWSCDK::IResolvable, ... (readonly)
Contains details about the schema version 2 (V2) for an Iceberg table that supports Apache Iceberg Nested Types (struct, list, map).
Primitive types are also supported.
741 742 743 |
# File 's3_tables/cfn_table.rb', line 741 def iceberg_schema_v2 @iceberg_schema_v2 end |
#iceberg_sort_order ⇒ AWSCDK::IResolvable, ... (readonly)
Sort order specification for an Iceberg table.
746 747 748 |
# File 's3_tables/cfn_table.rb', line 746 def iceberg_sort_order @iceberg_sort_order end |
#table_properties ⇒ AWSCDK::IResolvable, ... (readonly)
Iceberg table properties (e.g., format-version, write.parquet.compression-codec).
751 752 753 |
# File 's3_tables/cfn_table.rb', line 751 def table_properties @table_properties end |
Class Method Details
.jsii_properties ⇒ Object
753 754 755 756 757 758 759 760 761 |
# File 's3_tables/cfn_table.rb', line 753 def self.jsii_properties { :iceberg_partition_spec => "icebergPartitionSpec", :iceberg_schema => "icebergSchema", :iceberg_schema_v2 => "icebergSchemaV2", :iceberg_sort_order => "icebergSortOrder", :table_properties => "tableProperties", } end |
Instance Method Details
#to_jsii ⇒ Object
763 764 765 766 767 768 769 770 771 772 773 |
# File 's3_tables/cfn_table.rb', line 763 def to_jsii result = {} result.merge!({ "icebergPartitionSpec" => @iceberg_partition_spec, "icebergSchema" => @iceberg_schema, "icebergSchemaV2" => @iceberg_schema_v2, "icebergSortOrder" => @iceberg_sort_order, "tableProperties" => @table_properties, }) result.compact end |