Class: AWSCDK::S3Tables::CfnTable::IcebergSchemaV2Property
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::S3Tables::CfnTable::IcebergSchemaV2Property
- Defined in:
- s3_tables/cfn_table.rb
Overview
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.
Instance Attribute Summary collapse
-
#identifier_field_ids ⇒ Array<Numeric>, ...
readonly
A list of field IDs that are used as the identifier fields for the table.
-
#schema_id ⇒ Numeric?
readonly
An optional unique identifier for the schema.
-
#schema_v2_field_list ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::S3Tables::CfnTable::SchemaV2FieldProperty>
readonly
List of schema fields that support nested types.
-
#schema_v2_field_type ⇒ String
readonly
The type of the top-level schema, which is always 'struct'.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(schema_v2_field_list:, schema_v2_field_type:, identifier_field_ids: nil, schema_id: nil) ⇒ IcebergSchemaV2Property
constructor
A new instance of IcebergSchemaV2Property.
- #to_jsii ⇒ Object
Constructor Details
#initialize(schema_v2_field_list:, schema_v2_field_type:, identifier_field_ids: nil, schema_id: nil) ⇒ IcebergSchemaV2Property
Returns a new instance of IcebergSchemaV2Property.
927 928 929 930 931 932 933 934 935 936 |
# File 's3_tables/cfn_table.rb', line 927 def initialize(schema_v2_field_list:, schema_v2_field_type:, identifier_field_ids: nil, schema_id: nil) @schema_v2_field_list = schema_v2_field_list Jsii::Type.check_type(@schema_v2_field_list, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfczN0YWJsZXMuQ2ZuVGFibGUuU2NoZW1hVjJGaWVsZFByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "schemaV2FieldList") @schema_v2_field_type = schema_v2_field_type Jsii::Type.check_type(@schema_v2_field_type, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "schemaV2FieldType") @identifier_field_ids = identifier_field_ids Jsii::Type.check_type(@identifier_field_ids, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siY29sbGVjdGlvbiI6eyJlbGVtZW50dHlwZSI6eyJwcmltaXRpdmUiOiJudW1iZXIifSwia2luZCI6ImFycmF5In19LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "identifierFieldIds") unless @identifier_field_ids.nil? @schema_id = schema_id Jsii::Type.check_type(@schema_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "schemaId") unless @schema_id.nil? end |
Instance Attribute Details
#identifier_field_ids ⇒ Array<Numeric>, ... (readonly)
A list of field IDs that are used as the identifier fields for the table.
Identifier fields uniquely identify a row in the table.
954 955 956 |
# File 's3_tables/cfn_table.rb', line 954 def identifier_field_ids @identifier_field_ids end |
#schema_id ⇒ Numeric? (readonly)
An optional unique identifier for the schema.
959 960 961 |
# File 's3_tables/cfn_table.rb', line 959 def schema_id @schema_id end |
#schema_v2_field_list ⇒ AWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::S3Tables::CfnTable::SchemaV2FieldProperty> (readonly)
List of schema fields that support nested types.
942 943 944 |
# File 's3_tables/cfn_table.rb', line 942 def schema_v2_field_list @schema_v2_field_list end |
#schema_v2_field_type ⇒ String (readonly)
The type of the top-level schema, which is always 'struct'.
947 948 949 |
# File 's3_tables/cfn_table.rb', line 947 def schema_v2_field_type @schema_v2_field_type end |
Class Method Details
.jsii_properties ⇒ Object
961 962 963 964 965 966 967 968 |
# File 's3_tables/cfn_table.rb', line 961 def self.jsii_properties { :schema_v2_field_list => "schemaV2FieldList", :schema_v2_field_type => "schemaV2FieldType", :identifier_field_ids => "identifierFieldIds", :schema_id => "schemaId", } end |
Instance Method Details
#to_jsii ⇒ Object
970 971 972 973 974 975 976 977 978 979 |
# File 's3_tables/cfn_table.rb', line 970 def to_jsii result = {} result.merge!({ "schemaV2FieldList" => @schema_v2_field_list, "schemaV2FieldType" => @schema_v2_field_type, "identifierFieldIds" => @identifier_field_ids, "schemaId" => @schema_id, }) result.compact end |