in asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBRowStore.java [487:513]
float getFloat(int columnIndex) throws SQLException {
ADBDatatype valueType = getColumnType(columnIndex);
switch (valueType) {
case MISSING:
case NULL:
return 0;
case BOOLEAN:
return getColumnRegisterAsBoolean(columnIndex, 0) ? 1f : 0f;
case TINYINT:
case SMALLINT:
case INTEGER:
case BIGINT:
return getColumnRegister(columnIndex, 0);
case FLOAT:
return getColumnRegisterAsFloat(columnIndex, 0);
case DOUBLE:
return (float) getColumnRegisterAsDouble(columnIndex, 0);
case STRING:
try {
return Float.parseFloat(getStringFromObjectStore(columnIndex));
} catch (NumberFormatException e) {
throw getErrorReporter().errorInvalidValueOfType(valueType);
}
default:
throw getErrorReporter().errorUnexpectedType(valueType);
}
}