private Object nextValue(Schema s, int column) throws IOException { Object v = values[column].nextValue(); switch (s.getType()) { case ENUM: return model.createEnum(s.getEnumSymbols().get((Integer)v), s); case FIXED: return model.createFixed(null, ((ByteBuffer)v).array(), s); } return v; }
private void valueToJson(ColumnMetaData column) throws IOException { generator.writeFieldName(shortNames[column.getNumber()]); ColumnValues in = values[column.getNumber()]; if (!column.isArray()) { primitiveToJson(column, in.nextValue()); } else { generator.writeStartArray(); int length = in.nextLength(); for (int i = 0; i < length; i++) { Object value = in.nextValue(); List<ColumnMetaData> children = column.getChildren(); if (children.size() == 0) { primitiveToJson(column, value); } else { generator.writeStartObject(); if (value != null) { generator.writeFieldName("value$"); primitiveToJson(column, value); } for (ColumnMetaData child : children) valueToJson(child); generator.writeEndObject(); } } generator.writeEndArray(); } }
@Override public T next() { if (column.metaData.isArray() || column.metaData.getParent() != null) throw new TrevniRuntimeException ("Column is array: " +column.metaData.getName()); try { startRow(); return nextValue(); } catch (IOException e) { throw new TrevniRuntimeException(e); } }
private Object nextValue(Schema s, int column) throws IOException { Object v = values[column].nextValue(); switch (s.getType()) { case ENUM: return new GenericData.EnumSymbol(s, s.getEnumSymbols().get((Integer)v)); case FIXED: return new GenericData.Fixed(s, ((ByteBuffer)v).array()); } return v; }
case BOOLEAN: tuple.put(tid, DatumFactory.createBool(((Integer)columns[i].nextValue()).byteValue())); break; case BIT: tuple.put(tid, DatumFactory.createBit(((Integer) columns[i].nextValue()).byteValue())); break; case CHAR: String str = (String) columns[i].nextValue(); tuple.put(tid, DatumFactory.createChar(str)); DatumFactory.createInt2(((Integer) columns[i].nextValue()).shortValue())); break; case INT4: tuple.put(tid, DatumFactory.createInt4((Integer) columns[i].nextValue())); break; DatumFactory.createInt8((Long) columns[i].nextValue())); break; DatumFactory.createFloat4((Float) columns[i].nextValue())); break; DatumFactory.createFloat8((Double) columns[i].nextValue())); break;
@Override public T next() { if (column.metaData.isArray() || column.metaData.getParent() != null) throw new TrevniRuntimeException ("Column is array: " +column.metaData.getName()); try { startRow(); return nextValue(); } catch (IOException e) { throw new TrevniRuntimeException(e); } }
private void valueToJson(ColumnMetaData column) throws IOException { generator.writeFieldName(shortNames[column.getNumber()]); ColumnValues in = values[column.getNumber()]; if (!column.isArray()) { primitiveToJson(column, in.nextValue()); } else { generator.writeStartArray(); int length = in.nextLength(); for (int i = 0; i < length; i++) { Object value = in.nextValue(); List<ColumnMetaData> children = column.getChildren(); if (children.size() == 0) { primitiveToJson(column, value); } else { generator.writeStartObject(); if (value != null) { generator.writeFieldName("value$"); primitiveToJson(column, value); } for (ColumnMetaData child : children) valueToJson(child); generator.writeEndObject(); } } generator.writeEndArray(); } }
private void valueToJson(ColumnMetaData column) throws IOException { generator.writeFieldName(shortNames[column.getNumber()]); ColumnValues in = values[column.getNumber()]; if (!column.isArray()) { primitiveToJson(column, in.nextValue()); } else { generator.writeStartArray(); int length = in.nextLength(); for (int i = 0; i < length; i++) { Object value = in.nextValue(); List<ColumnMetaData> children = column.getChildren(); if (children.size() == 0) { primitiveToJson(column, value); } else { generator.writeStartObject(); if (value != null) { generator.writeFieldName("value$"); primitiveToJson(column, value); } for (ColumnMetaData child : children) valueToJson(child); generator.writeEndObject(); } } generator.writeEndArray(); } }