in baremaps-flatgeobuf/src/main/java/org/apache/baremaps/flatgeobuf/FlatGeoBufWriter.java [242:259]
private static void writeValue(ByteBuffer buffer, Column column, Object value) {
switch (column.type()) {
case ColumnType.Bool -> buffer.put((byte) ((boolean) value ? 1 : 0));
case ColumnType.Short -> buffer.putShort((short) value);
case ColumnType.UShort -> buffer.putShort((short) value);
case ColumnType.Int -> buffer.putInt((int) value);
case ColumnType.UInt -> buffer.putInt((int) value);
case ColumnType.Long -> buffer.putLong((long) value);
case ColumnType.ULong -> buffer.putLong((long) value);
case ColumnType.Float -> buffer.putFloat((float) value);
case ColumnType.Double -> buffer.putDouble((double) value);
case ColumnType.String -> writeString(buffer, value);
case ColumnType.Json -> writeJson(buffer, value);
case ColumnType.DateTime -> writeDateTime(buffer, value);
case ColumnType.Binary -> writeBinary(buffer, value);
default -> throw new UnsupportedOperationException();
}
}