blob: a6cf9482709b781ee1a2e0c878b0e878d17c3820 [file]
package parquet.data;
import parquet.io.api.Binary;
import parquet.schema.GroupType;
abstract public class GroupBuilder {
abstract public GroupType getType();
abstract public GroupBuilder startMessage();
abstract public Group endMessage();
// === int based field access ===
abstract public GroupBuilder startGroup(int fieldIndex);
abstract public GroupBuilder endGroup();
abstract public GroupBuilder addIntValue(int fieldIndex, int value);
abstract public GroupBuilder addLongValue(int fieldIndex, long value);
abstract public GroupBuilder addBooleanValue(int fieldIndex, boolean value);
abstract public GroupBuilder addFloatValue(int fieldIndex, float value);
abstract public GroupBuilder addDoubleValue(int fieldIndex, double value);
abstract public GroupBuilder addBinaryValue(int fieldIndex, Binary value);
// === name based field access ===
public GroupBuilder startGroup(String field) {
return startGroup(getType().getFieldIndex(field));
}
public GroupBuilder addIntValue(String field, int value) {
return addIntValue(getType().getFieldIndex(field), value);
}
public GroupBuilder addLongValue(String field, long value) {
return addLongValue(getType().getFieldIndex(field), value);
}
public GroupBuilder addBooleanValue(String field, boolean value) {
return addBooleanValue(getType().getFieldIndex(field), value);
}
public GroupBuilder addFloatValue(String field, float value) {
return addFloatValue(getType().getFieldIndex(field), value);
}
public GroupBuilder addDoubleValue(String field, double value) {
return addDoubleValue(getType().getFieldIndex(field), value);
}
public GroupBuilder addBinaryValue(String field, Binary value) {
return addBinaryValue(getType().getFieldIndex(field), value);
}
}