/** Add a row to the file. */ public void writeRow(Object... row) throws IOException { startRow(); for (int column = 0; column < columnCount; column++) writeValue(row[column], column); endRow(); }
private void writeValue(Object value, Schema s, int column) throws IOException { switch (s.getType()) { case STRING: if (value instanceof Utf8) // convert Utf8 to String value = value.toString(); break; case ENUM: if (value instanceof Enum) value = ((Enum)value).ordinal(); else value = s.getEnumOrdinal(value.toString()); break; case FIXED: value = ((GenericFixed)value).bytes(); break; } writer.writeValue(value, column); }
writer.writeLength(map.size(), column); for (Map.Entry e : map.entrySet()) { writer.writeValue(null, column); writer.writeValue(e.getKey(), column+1); int c = write(e.getValue(), s.getValueType(), column+2); assert(c == column+arrayWidths[column]); writer.writeValue(null, column); int c = write(element, s.getElementType(), column+1); assert(c == column+arrayWidths[column]); writeValue(o, branch, column++); } else { writer.writeValue(null, column); column = write(o, branch, column+1);
private void writeValue(Object value, Schema s, int column) throws IOException { switch (s.getType()) { case STRING: if (value instanceof Utf8) // convert Utf8 to String value = value.toString(); break; case ENUM: if (value instanceof Enum) value = ((Enum)value).ordinal(); else value = s.getEnumOrdinal(value.toString()); break; case FIXED: value = ((GenericFixed)value).bytes(); break; } writer.writeValue(value, column); }
/** Add a row to the file. */ public void writeRow(Object... row) throws IOException { startRow(); for (int column = 0; column < columnCount; column++) writeValue(row[column], column); endRow(); }
writer.writeLength(map.size(), column); for (Map.Entry e : map.entrySet()) { writer.writeValue(null, column); writer.writeValue(e.getKey(), column+1); int c = write(e.getValue(), s.getValueType(), column+2); assert(c == column+arrayWidths[column]); writer.writeValue(null, column); int c = write(element, s.getElementType(), column+1); assert(c == column+arrayWidths[column]); writeValue(o, branch, column++); } else { writer.writeValue(null, column); column = write(o, branch, column+1);
case INT2: case INT4: writer.writeValue(t.get(i).asInt4(), i); break; case INT8: writer.writeValue(t.get(i).asInt8(), i); break; case FLOAT4: writer.writeValue(t.get(i).asFloat4(), i); break; case FLOAT8: writer.writeValue(t.get(i).asFloat8(), i); break; case CHAR: case TEXT: writer.writeValue(t.get(i).asChars(), i); break; case PROTOBUF: case INET4: case INET6: writer.writeValue(t.get(i).asByteArray(), i); break;