@Override protected Object readNull(Row row) throws IOException { advanceField(); return null; }
@Override protected Object readNull(Row row) throws IOException { advanceField(); return null; }
@Override protected ByteBuffer readBytes(Row row) throws IOException { String name = getCurrentField(); byte[] val = row.get(name); validateNotNull(val, name); advanceField(); return ByteBuffer.wrap(val); }
@Override protected ByteBuffer readBytes(Row row) throws IOException { String name = getCurrentField(); byte[] val = row.get(name); validateNotNull(val, name); advanceField(); return ByteBuffer.wrap(val); }
@Override protected boolean readBool(Row row) throws IOException { String name = getCurrentField(); Boolean val = row.getBoolean(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected int readInt(Row row) throws IOException { String name = getCurrentField(); Integer val = row.getInt(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected boolean readBool(Row row) throws IOException { String name = getCurrentField(); Boolean val = row.getBoolean(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected long readLong(Row row) throws IOException { String name = getCurrentField(); Long val = row.getLong(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected float readFloat(Row row) throws IOException { String name = getCurrentField(); Float val = row.getFloat(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected String readString(Row row) throws IOException { String name = getCurrentField(); String val = row.getString(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected int readInt(Row row) throws IOException { String name = getCurrentField(); Integer val = row.getInt(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected float readFloat(Row row) throws IOException { String name = getCurrentField(); Float val = row.getFloat(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected double readDouble(Row row) throws IOException { String name = getCurrentField(); Double val = row.getDouble(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected double readDouble(Row row) throws IOException { String name = getCurrentField(); Double val = row.getDouble(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected long readLong(Row row) throws IOException { String name = getCurrentField(); Long val = row.getLong(name); validateNotNull(val, name); advanceField(); return val; }
@Override protected String readString(Row row) throws IOException { String name = getCurrentField(); String val = row.getString(name); validateNotNull(val, name); advanceField(); return val; }
@Override @SuppressWarnings("unchecked") public T read(Row row, Schema sourceSchema) throws IOException { Preconditions.checkArgument(sourceSchema.getType() == Schema.Type.RECORD, "Source schema must be a record."); initializeRead(sourceSchema); try { Object record = create(type); for (Schema.Field sourceField : sourceSchema.getFields()) { String sourceFieldName = sourceField.getName(); Schema.Field targetField = schema.getField(sourceFieldName); if (targetField == null) { advanceField(); continue; } FieldAccessor fieldAccessor = getFieldAccessor(type, sourceFieldName); fieldAccessor.set(record, read(row, sourceField.getSchema(), targetField.getSchema(), TypeToken.of(fieldAccessor.getType()))); } return (T) record; } catch (Exception e) { throw propagate(e); } }
@Override @SuppressWarnings("unchecked") public T read(Row row, Schema sourceSchema) throws IOException { Preconditions.checkArgument(sourceSchema.getType() == Schema.Type.RECORD, "Source schema must be a record."); initializeRead(sourceSchema); try { Object record = create(type); for (Schema.Field sourceField : sourceSchema.getFields()) { String sourceFieldName = sourceField.getName(); Schema.Field targetField = schema.getField(sourceFieldName); if (targetField == null) { advanceField(); continue; } FieldAccessor fieldAccessor = getFieldAccessor(type, sourceFieldName); fieldAccessor.set(record, read(row, sourceField.getSchema(), targetField.getSchema(), TypeToken.of(fieldAccessor.getType()))); } return (T) record; } catch (Exception e) { throw propagate(e); } }