@Override public String apply(@Nullable Type type) { return TypeStringEncoder.encode(type); } }));
@Override public JsonElement serialize(org.apache.tajo.type.Type src, Type typeOfSrc, JsonSerializationContext context) { JsonObject json = new JsonObject(); json.addProperty("type", TypeStringEncoder.encode(src)); return json; } }
public static String getHiveFieldType(Type type) throws LMDNoMatchedDatatypeException { Preconditions.checkNotNull(type); switch (type.kind()) { case CHAR: return serdeConstants.CHAR_TYPE_NAME; case BOOLEAN: return serdeConstants.BOOLEAN_TYPE_NAME; case INT1: return serdeConstants.TINYINT_TYPE_NAME; case INT2: return serdeConstants.SMALLINT_TYPE_NAME; case INT4: return serdeConstants.INT_TYPE_NAME; case INT8: return serdeConstants.BIGINT_TYPE_NAME; case FLOAT4: return serdeConstants.FLOAT_TYPE_NAME; case FLOAT8: return serdeConstants.DOUBLE_TYPE_NAME; case TEXT: return serdeConstants.STRING_TYPE_NAME; case VARCHAR: return serdeConstants.VARCHAR_TYPE_NAME; case NCHAR: return serdeConstants.VARCHAR_TYPE_NAME; case NVARCHAR: return serdeConstants.VARCHAR_TYPE_NAME; case BINARY: return serdeConstants.BINARY_TYPE_NAME; case VARBINARY: return serdeConstants.BINARY_TYPE_NAME; case BLOB: return serdeConstants.BINARY_TYPE_NAME; case DATE: return serdeConstants.DATE_TYPE_NAME; case TIMESTAMP: return serdeConstants.TIMESTAMP_TYPE_NAME; default: throw new LMDNoMatchedDatatypeException(TypeStringEncoder.encode(type)); } }
pstmt.setString(2, extractSimpleName(columnProto.getName())); pstmt.setInt(3, position + 1); pstmt.setString(4, TypeStringEncoder.encode(type)); pstmt.executeUpdate();
/** * Make a string from a field * @param field A field * @return String representation for a field */ static String serializeField(Field field) { return field.name().raw(DefaultPolicy()) + " " + encode(field.type()); }
@Override public JsonElement serialize(Datum src, Type typeOfSrc, JsonSerializationContext context) { JsonObject jsonObj = new JsonObject(); jsonObj.addProperty("type", TypeStringEncoder.encode(src.type())); switch (src.kind()) { case DATE: jsonObj.addProperty("value", src.asInt4()); break; case TIME: jsonObj.addProperty("value", src.asInt8()); break; case TIMESTAMP: jsonObj.addProperty("value", src.asInt8()); break; case INTERVAL: IntervalDatum interval = (IntervalDatum)src; jsonObj.addProperty("value", interval.getMonths() + "," + interval.getMilliSeconds()); break; case ANY: jsonObj.add("actual", serialize(((AnyDatum) src).getActual(), typeOfSrc, context)); break; default: jsonObj.add("body", context.serialize(src)); } return jsonObj; } }
typeStr = TypeStringEncoder.encode(TypeProtobufEncoder.decode(columnProto.getType())); } else { throw new UndefinedColumnException(alterColumnProto.getOldColumnName());
pstmt.setString(2, extractSimpleName(col.getName())); pstmt.setInt(3, i); pstmt.setString(4, TypeStringEncoder.encode(type)); pstmt.addBatch(); pstmt.clearParameters();
public static Writable convertDatum2Writable(Datum value) { switch(value.kind()) { case INT1: return new ByteWritable(value.asByte()); case INT2: return new ShortWritable(value.asInt2()); case INT4: return new IntWritable(value.asInt4()); case INT8: return new LongWritable(value.asInt8()); case FLOAT4: return new FloatWritable(value.asFloat4()); case FLOAT8: return new DoubleWritable(value.asFloat8()); // NOTE: value should be DateDatum case DATE: return new DateWritable(value.asInt4() - DateTimeConstants.UNIX_EPOCH_JDATE); // NOTE: value should be TimestampDatum case TIMESTAMP: TimestampWritable result = new TimestampWritable(); result.setTime(DateTimeUtil.julianTimeToJavaTime(value.asInt8())); return result; case CHAR: { String str = value.asChars(); return new HiveCharWritable(new HiveChar(str, str.length())); } case TEXT: return new Text(value.asChars()); case VARBINARY: return new BytesWritable(value.asByteArray()); case NULL_TYPE: return null; } throw new TajoRuntimeException(new NotImplementedException(TypeStringEncoder.encode(value.type()))); }