Package org.apache.iceberg.parquet
Class VariantReaderBuilder
java.lang.Object
org.apache.iceberg.parquet.ParquetVariantVisitor<ParquetValueReader<?>>
org.apache.iceberg.parquet.VariantReaderBuilder
-
Constructor Summary
ConstructorsConstructorDescriptionVariantReaderBuilder
(org.apache.parquet.schema.MessageType schema, Iterable<String> basePath) -
Method Summary
Modifier and TypeMethodDescriptionvoid
afterField
(org.apache.parquet.schema.Type type) Handler called after visiting any primitive or group type.array
(org.apache.parquet.schema.GroupType array, ParquetValueReader<?> valueResult, ParquetValueReader<?> elementResult) Handles a shredded array value result and an element value result.void
beforeField
(org.apache.parquet.schema.Type type) Handler called before visiting any primitive or group type.metadata
(org.apache.parquet.schema.PrimitiveType metadata) Handles a serialized variant metadata column.object
(org.apache.parquet.schema.GroupType group, ParquetValueReader<?> valueReader, List<ParquetValueReader<?>> fieldResults) Handles a shredded object value result and a list of field value results.primitive
(org.apache.parquet.schema.PrimitiveType primitive) Handles a shredded primitive typed_value column.serialized
(org.apache.parquet.schema.PrimitiveType value) Handles a serialized variant value column.value
(org.apache.parquet.schema.GroupType group, ParquetValueReader<?> valueReader, ParquetValueReader<?> typedReader) Handles a variant value result and typed_value result pair.variant
(org.apache.parquet.schema.GroupType variant, ParquetValueReader<?> metadataReader, ParquetValueReader<?> valueReader) Handles the root variant column group.Methods inherited from class org.apache.iceberg.parquet.ParquetVariantVisitor
visit
-
Constructor Details
-
VariantReaderBuilder
-
-
Method Details
-
beforeField
public void beforeField(org.apache.parquet.schema.Type type) Description copied from class:ParquetVariantVisitor
Handler called before visiting any primitive or group type.- Overrides:
beforeField
in classParquetVariantVisitor<ParquetValueReader<?>>
-
afterField
public void afterField(org.apache.parquet.schema.Type type) Description copied from class:ParquetVariantVisitor
Handler called after visiting any primitive or group type.- Overrides:
afterField
in classParquetVariantVisitor<ParquetValueReader<?>>
-
variant
public ParquetValueReader<?> variant(org.apache.parquet.schema.GroupType variant, ParquetValueReader<?> metadataReader, ParquetValueReader<?> valueReader) Description copied from class:ParquetVariantVisitor
Handles the root variant column group.The value and typed_value results are combined by calling
ParquetVariantVisitor.value(org.apache.parquet.schema.GroupType, R, R)
.group v (VARIANT) { <-- metadata result and combined value and typed_value result required binary metadata; optional binary value; optional ... typed_value; }
- Overrides:
variant
in classParquetVariantVisitor<ParquetValueReader<?>>
-
metadata
Description copied from class:ParquetVariantVisitor
Handles a serialized variant metadata column.group v (VARIANT) { required binary metadata; <-- this column optional binary value; optional ... typed_value; }
- Overrides:
metadata
in classParquetVariantVisitor<ParquetValueReader<?>>
-
serialized
public ParquetVariantReaders.VariantValueReader serialized(org.apache.parquet.schema.PrimitiveType value) Description copied from class:ParquetVariantVisitor
Handles a serialized variant value column.group variant_value_pair { optional binary value; <-- this column optional ... typed_value; }
- Overrides:
serialized
in classParquetVariantVisitor<ParquetValueReader<?>>
-
primitive
public ParquetVariantReaders.VariantValueReader primitive(org.apache.parquet.schema.PrimitiveType primitive) Description copied from class:ParquetVariantVisitor
Handles a shredded primitive typed_value column.group variant_value_pair { optional binary value; optional int32 typed_value; <-- this column when it is any primitive }
- Overrides:
primitive
in classParquetVariantVisitor<ParquetValueReader<?>>
-
value
public ParquetVariantReaders.VariantValueReader value(org.apache.parquet.schema.GroupType group, ParquetValueReader<?> valueReader, ParquetValueReader<?> typedReader) Description copied from class:ParquetVariantVisitor
Handles a variant value result and typed_value result pair.The value and typed_value pair may be nested in an object field, array element, or in the root group of a variant.
This method is also called when the typed_value field is missing.
group variant_value_pair { <-- value result and typed_value result optional binary value; optional ... typed_value; }
- Overrides:
value
in classParquetVariantVisitor<ParquetValueReader<?>>
-
object
public ParquetVariantReaders.VariantValueReader object(org.apache.parquet.schema.GroupType group, ParquetValueReader<?> valueReader, List<ParquetValueReader<?>> fieldResults) Description copied from class:ParquetVariantVisitor
Handles a shredded object value result and a list of field value results.Each field's value and typed_value results are combined by calling
ParquetVariantVisitor.value(org.apache.parquet.schema.GroupType, R, R)
.group variant_value_pair { <-- value result and typed_value field results optional binary value; optional group typed_value { required group a { optional binary value; optional binary typed_value (UTF8); } ... } }
- Overrides:
object
in classParquetVariantVisitor<ParquetValueReader<?>>
-
array
public ParquetVariantReaders.VariantValueReader array(org.apache.parquet.schema.GroupType array, ParquetValueReader<?> valueResult, ParquetValueReader<?> elementResult) Description copied from class:ParquetVariantVisitor
Handles a shredded array value result and an element value result.The element's value and typed_value results are combined by calling
ParquetVariantVisitor.value(org.apache.parquet.schema.GroupType, R, R)
.group variant_value_pair { <-- value result and element result optional binary value; optional group typed_value (LIST) { repeated group list { required group element { optional binary value; optional binary typed_value (UTF8); } } } }
- Overrides:
array
in classParquetVariantVisitor<ParquetValueReader<?>>
-