Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/ikvm-fork.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsmallsql <smallsql>2009-01-25 12:03:24 +0300
committersmallsql <smallsql>2009-01-25 12:03:24 +0300
commit3a129bd71d3c66dd755840a709c9647c299df72d (patch)
treedd3fe352e96ecd20ce6a1c029068af30bde4ae13 /openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java
parenta5d7e8fb37b7d334dffe79f7cced646306669c10 (diff)
250 TODO in JDBC-ODBC-Bridge fixt
Diffstat (limited to 'openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java')
-rw-r--r--openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java1212
1 files changed, 137 insertions, 1075 deletions
diff --git a/openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java b/openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java
index 9407eef5..13a253ab 100644
--- a/openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java
+++ b/openjdk/sun/jdbc/odbc/JdbcOdbcDTResultSet.java
@@ -23,1170 +23,232 @@
*/
package sun.jdbc.odbc;
-import java.io.InputStream;
-import java.io.Reader;
-import java.math.BigDecimal;
-import java.net.URL;
import java.sql.*;
-import java.util.Calendar;
-import java.util.Map;
import cli.System.Data.*;
/**
- * This JDBC Driver is a wrapper to the ODBC.NET Data Provider.
- * This ResultSet based on DataTable.
+ * This JDBC Driver is a wrapper to the ODBC.NET Data Provider. This ResultSet based on DataTable.
+ * It is read only and scrollable.
*/
-public class JdbcOdbcDTResultSet implements ResultSet{
+public class JdbcOdbcDTResultSet extends JdbcOdbcResultSet{
private final DataTable data;
- private final DataRowCollection rows;
- private int rowIndex; // row index starting with 0;
+
+ private DataRowCollection rows;
+
+ private int rowIndex; // row index starting with 0; -1 means beforeFirst
+
private cli.System.Data.DataRow row;
+
public JdbcOdbcDTResultSet(DataTable data){
+ super(null, TYPE_SCROLL_INSENSITIVE, CONCUR_READ_ONLY);
this.data = data;
this.rows = data.get_Rows();
this.rowIndex = -1;
}
- public boolean absolute(int row) throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ @Override
+ public boolean absolute(int rowPosition) throws SQLException{
+ if(rowPosition == 0){
+ return !isBeforeFirst() && !isAfterLast();
+ }
+ DataRowCollection dataRows = getRows();
+ int count = dataRows.get_Count();
+ if(rowPosition > 0){
+ if(rowPosition > count){
+ row = null;
+ rowIndex = count;
+ return false;
+ }
+ rowIndex = rowPosition - 1;
+ row = dataRows.get_Item(rowIndex);
+ return true;
+ }else{
+ if(-rowPosition > count){
+ row = null;
+ rowIndex = -1;
+ return false;
+ }
+ rowIndex = count + rowPosition;
+ row = dataRows.get_Item(rowIndex);
+ return true;
+ }
}
+ @Override
public void afterLast() throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void beforeFirst() throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void cancelRowUpdates() throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void clearWarnings() throws SQLException{
- // TODO Auto-generated method stub
-
+ row = null;
+ rowIndex = getRows().get_Count();
}
- public void close() throws SQLException{
- // TODO Auto-generated method stub
-
+ @Override
+ public void beforeFirst(){
+ row = null;
+ rowIndex = -1;
}
- public void deleteRow() throws SQLException{
- // TODO Auto-generated method stub
-
+ @Override
+ public void close(){
+ rows = null;
}
+ @Override
public int findColumn(String columnLabel) throws SQLException{
- return data.get_Columns().IndexOf(columnLabel) + 1;
+ getRows(); // Check if ResultSet is closed
+ int idx = data.get_Columns().IndexOf(columnLabel);
+ if(idx < 0){
+ throw new SQLException("Column '" + columnLabel + "' not found.", "S0022");
+ }
+ return idx + 1;
}
+ @Override
public boolean first() throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public Array getArray(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Array getArray(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public InputStream getAsciiStream(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public InputStream getAsciiStream(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public BigDecimal getBigDecimal(int columnIndex, int scale) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public BigDecimal getBigDecimal(String columnLabel, int scale) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public BigDecimal getBigDecimal(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public BigDecimal getBigDecimal(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public InputStream getBinaryStream(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public InputStream getBinaryStream(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Blob getBlob(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Blob getBlob(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public boolean getBoolean(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public boolean getBoolean(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public byte getByte(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public byte getByte(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public byte[] getBytes(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public byte[] getBytes(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Reader getCharacterStream(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Reader getCharacterStream(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Clob getClob(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Clob getClob(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public int getConcurrency() throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public String getCursorName() throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Date getDate(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Date getDate(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Date getDate(int columnIndex, Calendar cal) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Date getDate(String columnLabel, Calendar cal) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public double getDouble(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public double getDouble(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public int getFetchDirection() throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public int getFetchSize() throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public float getFloat(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public float getFloat(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public int getHoldability() throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public int getInt(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public int getInt(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public long getLong(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public long getLong(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
+ beforeFirst();
+ return next();
}
+ @Override
public ResultSetMetaData getMetaData(){
- return new JdbcOdbcDTResultSetMetaData(null, data);
- }
-
-
- public Reader getNCharacterStream(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Reader getNCharacterStream(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public NClob getNClob(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public NClob getNClob(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public String getNString(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public String getNString(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Object getObject(int columnIndex) throws SQLException{
- if(row == null){
- throw new SQLException("No current row", "S1109");
- }
- return row.get_Item(columnIndex - 1);
- }
-
-
- public Object getObject(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Object getObject(int columnIndex, Map<String, Class<?>> map) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Object getObject(String columnLabel, Map<String, Class<?>> map) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Ref getRef(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Ref getRef(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public int getRow(){
- return rowIndex < rows.get_Count() ? rowIndex + 1 : 0;
- }
-
-
- public RowId getRowId(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public RowId getRowId(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public SQLXML getSQLXML(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public SQLXML getSQLXML(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public short getShort(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public short getShort(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public Statement getStatement() throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public String getString(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public String getString(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Time getTime(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Time getTime(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Time getTime(int columnIndex, Calendar cal) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Time getTime(String columnLabel, Calendar cal) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Timestamp getTimestamp(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Timestamp getTimestamp(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Timestamp getTimestamp(int columnIndex, Calendar cal) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public Timestamp getTimestamp(String columnLabel, Calendar cal) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public int getType() throws SQLException{
- // TODO Auto-generated method stub
- return 0;
- }
-
-
- public URL getURL(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public URL getURL(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public InputStream getUnicodeStream(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
- return null;
+ return new JdbcOdbcDTResultSetMetaData(data);
}
- public InputStream getUnicodeStream(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public SQLWarning getWarnings() throws SQLException{
- // TODO Auto-generated method stub
- return null;
- }
-
-
- public void insertRow() throws SQLException{
- // TODO Auto-generated method stub
-
+ @Override
+ public int getRow() throws SQLException{
+ return rowIndex < getRows().get_Count() ? rowIndex + 1 : 0;
}
+ @Override
public boolean isAfterLast() throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ int count = getRows().get_Count();
+ return rowIndex >= count || count == 0;
}
+ @Override
public boolean isBeforeFirst() throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ return rowIndex <= -1 || getRows().get_Count() == 0;
}
- public boolean isClosed() throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ @Override
+ public boolean isClosed(){
+ return rows == null;
}
+ @Override
public boolean isFirst() throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ return rowIndex == 0 && getRows().get_Count() > 0;
}
+ @Override
public boolean isLast() throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ return rowIndex >= 0 && rowIndex == getRows().get_Count() - 1;
}
+ @Override
public boolean last() throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public void moveToCurrentRow() throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void moveToInsertRow() throws SQLException{
- // TODO Auto-generated method stub
-
+ afterLast();
+ return previous();
}
+ @Override
public boolean next() throws SQLException{
- if( rowIndex + 1 < rows.get_Count()){
- rowIndex++;
- row = rows.get_Item(rowIndex);
+ DataRowCollection dataRows = getRows();
+ if(rowIndex + 1 < dataRows.get_Count()){
+ row = dataRows.get_Item(++rowIndex);
return true;
}else{
+ rowIndex = dataRows.get_Count();
row = null;
return false;
}
}
+ @Override
public boolean previous() throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public void refreshRow() throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public boolean relative(int rows) throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public boolean rowDeleted() throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public boolean rowInserted() throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public boolean rowUpdated() throws SQLException{
- // TODO Auto-generated method stub
- return false;
- }
-
-
- public void setFetchDirection(int direction) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void setFetchSize(int rows) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateArray(int columnIndex, Array x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateArray(String columnLabel, Array x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateAsciiStream(int columnIndex, InputStream x, int length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateAsciiStream(String columnLabel, InputStream x, int length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateAsciiStream(int columnIndex, InputStream x, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateAsciiStream(String columnLabel, InputStream x, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateAsciiStream(int columnIndex, InputStream x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateAsciiStream(String columnLabel, InputStream x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBigDecimal(int columnIndex, BigDecimal x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBigDecimal(String columnLabel, BigDecimal x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBinaryStream(int columnIndex, InputStream x, int length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBinaryStream(String columnLabel, InputStream x, int length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBinaryStream(int columnIndex, InputStream x, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBinaryStream(String columnLabel, InputStream x, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBinaryStream(int columnIndex, InputStream x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBinaryStream(String columnLabel, InputStream x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBlob(int columnIndex, Blob x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBlob(String columnLabel, Blob x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBlob(int columnIndex, InputStream inputStream, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBlob(String columnLabel, InputStream inputStream, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBlob(int columnIndex, InputStream inputStream) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBlob(String columnLabel, InputStream inputStream) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBoolean(int columnIndex, boolean x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBoolean(String columnLabel, boolean x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateByte(int columnIndex, byte x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateByte(String columnLabel, byte x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBytes(int columnIndex, byte[] x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateBytes(String columnLabel, byte[] x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateCharacterStream(int columnIndex, Reader x, int length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateCharacterStream(String columnLabel, Reader reader, int length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateCharacterStream(int columnIndex, Reader x, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateCharacterStream(String columnLabel, Reader reader, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateCharacterStream(int columnIndex, Reader x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateCharacterStream(String columnLabel, Reader reader) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateClob(int columnIndex, Clob x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateClob(String columnLabel, Clob x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateClob(int columnIndex, Reader reader, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateClob(String columnLabel, Reader reader, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateClob(int columnIndex, Reader reader) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateClob(String columnLabel, Reader reader) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateDate(int columnIndex, Date x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateDate(String columnLabel, Date x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateDouble(int columnIndex, double x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateDouble(String columnLabel, double x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateFloat(int columnIndex, float x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateFloat(String columnLabel, float x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateInt(int columnIndex, int x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateInt(String columnLabel, int x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateLong(int columnIndex, long x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateLong(String columnLabel, long x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNCharacterStream(int columnIndex, Reader x, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNCharacterStream(String columnLabel, Reader reader, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNCharacterStream(int columnIndex, Reader x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNCharacterStream(String columnLabel, Reader reader) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNClob(int columnIndex, NClob clob) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNClob(String columnLabel, NClob clob) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNClob(int columnIndex, Reader reader, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNClob(String columnLabel, Reader reader, long length) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNClob(int columnIndex, Reader reader) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNClob(String columnLabel, Reader reader) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNString(int columnIndex, String string) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNString(String columnLabel, String string) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNull(int columnIndex) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateNull(String columnLabel) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateObject(int columnIndex, Object x, int scaleOrLength) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateObject(int columnIndex, Object x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateObject(String columnLabel, Object x, int scaleOrLength) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateObject(String columnLabel, Object x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateRef(int columnIndex, Ref x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateRef(String columnLabel, Ref x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateRow() throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateRowId(int columnIndex, RowId x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateRowId(String columnLabel, RowId x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateSQLXML(int columnIndex, SQLXML xmlObject) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateSQLXML(String columnLabel, SQLXML xmlObject) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateShort(int columnIndex, short x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateShort(String columnLabel, short x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateString(int columnIndex, String x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateString(String columnLabel, String x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateTime(int columnIndex, Time x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateTime(String columnLabel, Time x) throws SQLException{
- // TODO Auto-generated method stub
-
- }
-
-
- public void updateTimestamp(int columnIndex, Timestamp x) throws SQLException{
- // TODO Auto-generated method stub
-
+ if(rowIndex > 0){
+ row = getRows().get_Item(--rowIndex);
+ return true;
+ }else{
+ rowIndex = -1;
+ row = null;
+ return false;
+ }
}
- public void updateTimestamp(String columnLabel, Timestamp x) throws SQLException{
- // TODO Auto-generated method stub
-
+ @Override
+ public void refreshRow(){
+ // ignore it
}
- public boolean wasNull() throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ @Override
+ public boolean relative(int rowPositions) throws SQLException{
+ DataRowCollection dataRows = getRows();
+ int newRowIndex = rowIndex + rowPositions;
+ if(newRowIndex < 0){
+ rowIndex = -1;
+ row = null;
+ return false;
+ }
+ int count = dataRows.get_Count();
+ if(newRowIndex >= dataRows.get_Count()){
+ rowIndex = count;
+ row = null;
+ return false;
+ }
+ rowIndex = newRowIndex;
+ row = getRows().get_Item(newRowIndex);
+ return true;
}
- public boolean isWrapperFor(Class<?> iface) throws SQLException{
- // TODO Auto-generated method stub
- return false;
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ protected Object getObjectImpl(int columnIndex) throws SQLException{
+ getRows(); // checks if ResultSet is closed
+ if(row == null){
+ throw new SQLException("No current row", "S1109");
+ }
+ try{
+ return row.get_Item(columnIndex - 1);
+ }catch(ArrayIndexOutOfBoundsException ex){
+ throw new SQLException( "Invalid column number ("+columnIndex+"). A number between 1 and "+data.get_Columns().get_Count()+" is valid.", "S1002");
+ }
}
- public <T>T unwrap(Class<T> iface) throws SQLException{
- // TODO Auto-generated method stub
- return null;
+ /**
+ * Check if this ResultSet is closed before access to the DataRowCollection
+ *
+ * @return the local rows object
+ * @throws SQLException
+ * If the ResultSet is closed.
+ */
+ private DataRowCollection getRows() throws SQLException{
+ if(rows == null){
+ throw new SQLException("ResultSet is closed.", "24000");
+ }
+ return rows;
}
-
}