public static Value getColumnValue(Env env, ResultSet rs, ResultSetMetaData metaData, int column)
public Value getColumnValue(Env env, ResultSet rs, ResultSetMetaData metaData, int column)
  public static Value getColumnValue(Env env,                                     ResultSet rs,                                     ResultSetMetaData metaData,                                     int column)    throws SQLException  {    switch (metaData.getColumnType(column)) {    case Types.NULL:      return NullValue.NULL;    case Types.BIT:    case Types.TINYINT:    case Types.SMALLINT:    case Types.INTEGER:    case Types.BIGINT:      {        long value = rs.getLong(column);        if (rs.wasNull())          return NullValue.NULL;        else          return LongValue.create(value);      }    case Types.DOUBLE:      {        double value = rs.getDouble(column);        if (rs.wasNull())          return NullValue.NULL;        else          return new DoubleValue(value);      }    case Types.CLOB:      {        Object object = rs.getClob(column);        if (object.getClass().getName().equals("oracle.sql.CLOB")) {          OracleOciLob ociLob = new OracleOciLob(OracleModule.OCI_D_LOB);          ociLob.setLob(object);          object = ociLob;        }        return env.wrapJava(object);      }    default:      {        String strValue = rs.getString(column);        if (strValue == null || rs.wasNull())          return NullValue.NULL;        else          return new StringValueImpl(strValue);      }    }  }