@Override public ValueReader<?> union(Schema union, List<ValueReader<?>> options) { return ValueReaders.union(options); }
return ValueReaders.ints(); ValueReader<Long> longs = ValueReaders.longs(); return (ValueReader<Long>) (decoder, ignored) -> longs.read(decoder, null) * 1000L; return ValueReaders.longs(); switch (primitive.getType()) { case FIXED: inner = ValueReaders.fixed(primitive.getFixedSize()); break; case BYTES: inner = ValueReaders.bytes(); break; default: return ValueReaders.decimal(inner, decimal.getScale()); return ValueReaders.uuids(); return ValueReaders.nulls(); case BOOLEAN: return ValueReaders.booleans(); case INT: return ValueReaders.ints(); case LONG: return ValueReaders.longs(); case FLOAT: return ValueReaders.floats();
return ValueReaders.ints(); ValueReader<Long> longs = ValueReaders.longs(); return (ValueReader<Long>) (decoder, ignored) -> longs.read(decoder, null) * 1000L; return ValueReaders.longs(); switch (primitive.getType()) { case FIXED: inner = ValueReaders.fixed(primitive.getFixedSize()); break; case BYTES: inner = ValueReaders.bytes(); break; default: return ValueReaders.nulls(); case BOOLEAN: return ValueReaders.booleans(); case INT: return ValueReaders.ints(); case LONG: return ValueReaders.longs(); case FLOAT: return ValueReaders.floats(); case DOUBLE: return ValueReaders.doubles(); case STRING: return SparkValueReaders.strings();
@Override public ValueReader<?> array(Schema array, ValueReader<?> elementReader) { if (array.getLogicalType() instanceof LogicalMap) { ValueReaders.StructReader<?> keyValueReader = (ValueReaders.StructReader) elementReader; ValueReader<?> keyReader = keyValueReader.reader(0); ValueReader<?> valueReader = keyValueReader.reader(1); if (keyReader == ValueReaders.utf8s()) { return ValueReaders.arrayMap(ValueReaders.strings(), valueReader); } return ValueReaders.arrayMap(keyReader, valueReader); } return ValueReaders.array(elementReader); }
@Override public ValueReader<?> array(Schema array, ValueReader<?> elementReader) { if (array.getLogicalType() instanceof LogicalMap) { ValueReaders.StructReader<?> keyValueReader = (ValueReaders.StructReader) elementReader; ValueReader<?> keyReader = keyValueReader.reader(0); ValueReader<?> valueReader = keyValueReader.reader(1); return ValueReaders.arrayMap(keyReader, valueReader); } return ValueReaders.array(elementReader); }
switch (primitive.getType()) { case FIXED: inner = ValueReaders.fixed(primitive.getFixedSize()); break; case BYTES: inner = ValueReaders.bytes(); break; default: return ValueReaders.decimal(inner, decimal.getScale()); return ValueReaders.uuids(); return ValueReaders.nulls(); case BOOLEAN: return ValueReaders.booleans(); case INT: return ValueReaders.ints(); case LONG: return ValueReaders.longs(); case FLOAT: return ValueReaders.floats(); case DOUBLE: return ValueReaders.doubles(); case STRING: return ValueReaders.strings(); case FIXED: return ValueReaders.fixed(primitive.getFixedSize());
@Override public ValueReader<?> union(Schema union, List<ValueReader<?>> options) { return ValueReaders.union(options); }
@Override public ValueReader<?> union(Schema union, List<ValueReader<?>> options) { return ValueReaders.union(options); }