in mr/src/main/java/org/elasticsearch/hadoop/mr/WritableValueReader.java [37:90]
public Object createArray(FieldType type) {
Class<? extends Writable> arrayType = null;
switch (type) {
case NULL:
arrayType = NullWritable.class;
break;
case STRING:
case KEYWORD:
case TEXT:
arrayType = Text.class;
break;
case BYTE:
arrayType = byteType();
break;
case SHORT:
arrayType = shortType();
break;
case INTEGER:
arrayType = IntWritable.class;
break;
case TOKEN_COUNT:
case LONG:
arrayType = LongWritable.class;
break;
case HALF_FLOAT:
case SCALED_FLOAT:
case FLOAT:
arrayType = FloatWritable.class;
break;
case DOUBLE:
arrayType = doubleType();
break;
case BOOLEAN:
arrayType = BooleanWritable.class;
break;
case DATE:
case DATE_NANOS:
arrayType = dateType();
break;
case BINARY:
arrayType = BytesWritable.class;
break;
case OBJECT:
case NESTED:
arrayType = LinkedMapWritable.class;
break;
// everything else gets translated to String
default:
arrayType = Text.class;
}
return new WritableArrayWritable(arrayType);
}