in asterixdb-jdbc/asterix-jdbc-core/src/main/java/org/apache/asterix/jdbc/core/ADBRowStore.java [809:848]
String getString(int columnIndex) throws SQLException {
ADBDatatype valueType = getColumnType(columnIndex);
switch (valueType) {
case MISSING:
case NULL:
return null;
case BOOLEAN:
return Boolean.toString(getColumnRegisterAsBoolean(columnIndex, 0));
case TINYINT:
case SMALLINT:
case INTEGER:
case BIGINT:
return Long.toString(getColumnRegister(columnIndex, 0));
case FLOAT:
return Float.toString(getColumnRegisterAsFloat(columnIndex, 0));
case DOUBLE:
return Double.toString(getColumnRegisterAsDouble(columnIndex, 0));
case DATE:
return toLocalDateFromDateChronon(getColumnRegister(columnIndex, 0)).toString(); // TODO:review
case TIME:
return toLocalTimeFromTimeChronon(getColumnRegister(columnIndex, 0)).toString(); // TODO:review
case DATETIME:
return toLocalDateTimeFromDatetimeChronon(getColumnRegister(columnIndex, 0)).toString(); // TODO:review
case YEARMONTHDURATION:
return getPeriodFromObjectStore(columnIndex).toString(); // TODO:review
case DAYTIMEDURATION:
return getDurationFromObjectStore(columnIndex).toString(); // TODO:review
case DURATION:
return getISODurationStringFromObjectStore(columnIndex); // TODO:review
case STRING:
return getStringFromObjectStore(columnIndex);
case UUID:
return getUUIDFromObjectStore(columnIndex).toString();
case OBJECT:
case ARRAY:
return printAsJson(objectStore[columnIndex]);
default:
throw getErrorReporter().errorUnexpectedType(valueType);
}
}