in hugegraph-core/src/main/java/org/apache/hugegraph/backend/serializer/BytesBuffer.java [557:598]
public void writeProperty(DataType dataType, Object value) {
switch (dataType) {
case BOOLEAN:
this.writeVInt(((Boolean) value) ? 1 : 0);
break;
case BYTE:
this.writeVInt((Byte) value);
break;
case INT:
this.writeVInt((Integer) value);
break;
case FLOAT:
this.writeFloat((Float) value);
break;
case LONG:
this.writeVLong((Long) value);
break;
case DATE:
this.writeVLong(((Date) value).getTime());
break;
case DOUBLE:
this.writeDouble((Double) value);
break;
case TEXT:
this.writeString((String) value);
break;
case BLOB:
byte[] bytes = value instanceof byte[] ?
(byte[]) value : ((Blob) value).bytes();
this.writeBigBytes(bytes);
break;
case UUID:
UUID uuid = (UUID) value;
// Generally writeVLong(uuid) can't save space
this.writeLong(uuid.getMostSignificantBits());
this.writeLong(uuid.getLeastSignificantBits());
break;
default:
this.writeBytes(KryoUtil.toKryoWithType(value));
break;
}
}