Class NameMappingDatumReader<D>

java.lang.Object
org.apache.iceberg.avro.NameMappingDatumReader<D>
Type Parameters:
D - Java class of datums produced by this reader
All Implemented Interfaces:
org.apache.avro.io.DatumReader<D>, SupportsRowPosition

public class NameMappingDatumReader<D> extends Object implements org.apache.avro.io.DatumReader<D>, SupportsRowPosition
A delegating DatumReader that applies a name mapping to a file schema to enable reading Avro files that were written without field IDs.
  • Constructor Details

    • NameMappingDatumReader

      public NameMappingDatumReader(NameMapping nameMapping, org.apache.avro.io.DatumReader<D> wrapped)
  • Method Details

    • setSchema

      public void setSchema(org.apache.avro.Schema newFileSchema)
      Specified by:
      setSchema in interface org.apache.avro.io.DatumReader<D>
    • read

      public D read(D reuse, org.apache.avro.io.Decoder in) throws IOException
      Specified by:
      read in interface org.apache.avro.io.DatumReader<D>
      Throws:
      IOException
    • setRowPositionSupplier

      public void setRowPositionSupplier(Supplier<Long> posSupplier)
      Specified by:
      setRowPositionSupplier in interface SupportsRowPosition