@Override public boolean toBoolean(OptimizedElementArray row, int columnPosition) throws SQLException { return (row.getDouble(columnPosition - 1) != 0.0); } @Override
@Override public Object toObject(OptimizedElementArray row, int columnPosition, LobService lobService) throws SQLException { return row.getDouble(columnPosition - 1); } @Override
@Override public double toDouble(OptimizedElementArray row, int columnPosition) throws SQLException { return row.getDouble(columnPosition - 1); } @Override
@Override public String toString(OptimizedElementArray row, int columnPosition, LobService lobService) throws SQLException { return Double.toString(row.getDouble(columnPosition - 1)); } @Override
@Override public BigDecimal toBigDecimal(OptimizedElementArray row, int columnPosition) throws SQLException { return new BigDecimal(row.getDouble(columnPosition - 1)); } @Override
@Override public short toShort(OptimizedElementArray row, int columnPosition) throws SQLException { double v = row.getDouble(columnPosition - 1); if (v >= Short.MIN_VALUE && v <= Short.MAX_VALUE) { return (short)v; } else { throw newOutOfRangeException("short", columnPosition); } } @Override
@Override public int toInteger(OptimizedElementArray row, int columnPosition) throws SQLException { double v = row.getDouble(columnPosition - 1); if (v >= Integer.MIN_VALUE && v <= Integer.MAX_VALUE) { return (int)v; } else { throw newOutOfRangeException("int", columnPosition); } } @Override
@Override public long toLong(OptimizedElementArray row, int columnPosition) throws SQLException { double v = row.getDouble(columnPosition - 1); if (v >= Long.MIN_VALUE && v <= Long.MAX_VALUE) { return (long)v; } else { throw newOutOfRangeException("long", columnPosition); } } @Override
@Override public float toFloat(OptimizedElementArray row, int columnPosition) throws SQLException { double v = row.getDouble(columnPosition - 1); if (v >= Float.MIN_VALUE && v <= Float.MAX_VALUE) { return (float)v; } else { throw newOutOfRangeException("float", columnPosition); } } @Override
@Override public byte toByte(OptimizedElementArray row, int columnPosition) throws SQLException { double v = row.getDouble(columnPosition - 1); if (v >= Byte.MIN_VALUE && v <= Byte.MAX_VALUE) { return (byte)v; } else { throw newOutOfRangeException("byte", columnPosition); } } @Override