Class ParquetValueReaders.StructReader<T,I>

java.lang.Object
org.apache.iceberg.parquet.ParquetValueReaders.StructReader<T,I>
All Implemented Interfaces:
ParquetValueReader<T>
Enclosing class:
ParquetValueReaders

public abstract static class ParquetValueReaders.StructReader<T,I> extends Object implements ParquetValueReader<T>
  • Constructor Details

  • Method Details

    • setPageSource

      public final void setPageSource(org.apache.parquet.column.page.PageReadStore pageStore)
      Specified by:
      setPageSource in interface ParquetValueReader<T>
    • column

      public final org.apache.iceberg.parquet.TripleIterator<?> column()
      Specified by:
      column in interface ParquetValueReader<T>
    • read

      public final T read(T reuse)
      Specified by:
      read in interface ParquetValueReader<T>
    • columns

      public List<org.apache.iceberg.parquet.TripleIterator<?>> columns()
      Specified by:
      columns in interface ParquetValueReader<T>
    • newStructData

      protected abstract I newStructData(T reuse)
    • getField

      protected abstract Object getField(I intermediate, int pos)
    • buildStruct

      protected abstract T buildStruct(I struct)
    • set

      protected abstract void set(I struct, int pos, Object value)
      Used to set a struct value by position.

      To avoid boxing, override setInteger(Object, int, int) and similar methods.

      Parameters:
      struct - a struct object created by newStructData(Object)
      pos - the position in the struct to set
      value - the value to set
    • setNull

      protected void setNull(I struct, int pos)
    • setBoolean

      protected void setBoolean(I struct, int pos, boolean value)
    • setInteger

      protected void setInteger(I struct, int pos, int value)
    • setLong

      protected void setLong(I struct, int pos, long value)
    • setFloat

      protected void setFloat(I struct, int pos, float value)
    • setDouble

      protected void setDouble(I struct, int pos, double value)