Commit ad88ee1e authored by Dave Cramer's avatar Dave Cramer

changed some commented out messages to use the Driver.debug and fixed first to...

changed some commented out messages to use the Driver.debug and fixed first to read the underlying data into rowbuffer
parent 3f857600
...@@ -62,6 +62,8 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -62,6 +62,8 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
protected org.postgresql.jdbc2.Statement statement; protected org.postgresql.jdbc2.Statement statement;
private StringBuffer sbuf = null; private StringBuffer sbuf = null;
protected byte[][] rowBuffer=null;
protected String sqlQuery=null;
/* /*
* Create a new ResultSet - Note that we create ResultSets to * Create a new ResultSet - Note that we create ResultSets to
...@@ -110,12 +112,17 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -110,12 +112,17 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
*/ */
public boolean next() throws SQLException public boolean next() throws SQLException
{ {
if (rows == null) if (rows == null)
throw new PSQLException("postgresql.con.closed"); throw new PSQLException("postgresql.con.closed");
if (++current_row >= rows.size()) if (++current_row >= rows.size())
return false; return false;
this_row = (byte [][])rows.elementAt(current_row); this_row = (byte [][])rows.elementAt(current_row);
rowBuffer=new byte[this_row.length][];
System.arraycopy(this_row,0,rowBuffer,0,this_row.length);
return true; return true;
} }
...@@ -640,6 +647,35 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -640,6 +647,35 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
return getBinaryStream(findColumn(columnName)); return getBinaryStream(findColumn(columnName));
} }
public java.net.URL getURL(int columnIndex) throws SQLException
{
return null;
}
public java.net.URL getURL(String columnName) throws SQLException
{
return null;
}
public void updateRef(int colIndex,java.sql.Ref ref) throws SQLException {
}
public void updateRef(String colName,java.sql.Ref ref) throws SQLException {
}
public void updateBlob(int colIndex,java.sql.Blob blob) throws SQLException {
}
public void updateBlob(String colName,java.sql.Blob blob) throws SQLException {
}
public void updateClob(int colIndex,java.sql.Clob clob) throws SQLException {
}
public void updateClob(String colName,java.sql.Clob clob) throws SQLException {
}
public void updateArray(int colIndex,java.sql.Array array) throws SQLException {
}
public void updateArray(String colName,java.sql.Array array) throws SQLException {
}
/* /*
* The first warning reported by calls on this ResultSet is * The first warning reported by calls on this ResultSet is
* returned. Subsequent ResultSet warnings will be chained * returned. Subsequent ResultSet warnings will be chained
...@@ -896,8 +932,13 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -896,8 +932,13 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
{ {
if (rows.size() <= 0) if (rows.size() <= 0)
return false; return false;
current_row = 0; current_row = 0;
this_row = (byte [][])rows.elementAt(current_row); this_row = (byte [][])rows.elementAt(current_row);
rowBuffer=new byte[this_row.length][];
System.arraycopy(this_row,0,rowBuffer,0,this_row.length);
return true; return true;
} }
...@@ -1137,8 +1178,13 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1137,8 +1178,13 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
final int rows_size = rows.size(); final int rows_size = rows.size();
if (rows_size <= 0) if (rows_size <= 0)
return false; return false;
current_row = rows_size - 1; current_row = rows_size - 1;
this_row = (byte [][])rows.elementAt(current_row); this_row = (byte [][])rows.elementAt(current_row);
rowBuffer=new byte[this_row.length][];
System.arraycopy(this_row,0,rowBuffer,0,this_row.length);
return true; return true;
} }
...@@ -1159,6 +1205,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1159,6 +1205,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
if (--current_row < 0) if (--current_row < 0)
return false; return false;
this_row = (byte [][])rows.elementAt(current_row); this_row = (byte [][])rows.elementAt(current_row);
System.arraycopy(this_row,0,rowBuffer,0,this_row.length);
return true; return true;
} }
...@@ -1598,7 +1645,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1598,7 +1645,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
/** /**
* Parse a string and return a timestamp representing its value. * Parse a string and return a timestamp representing its value.
* *
* The driver is set to return ISO date formated strings. We modify this * The driver is set to return ISO date formated strings. We modify this
* string from the ISO format to a format that Java can understand. Java * string from the ISO format to a format that Java can understand. Java
* expects timezone info as 'GMT+09:00' where as ISO gives '+09'. * expects timezone info as 'GMT+09:00' where as ISO gives '+09'.
* Java also expects fractional seconds to 3 places where postgres * Java also expects fractional seconds to 3 places where postgres
...@@ -1625,6 +1672,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1625,6 +1672,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
synchronized (resultSet) synchronized (resultSet)
{ {
SimpleDateFormat df = null; SimpleDateFormat df = null;
if ( org.postgresql.Driver.logDebug ) org.postgresql.Driver.debug("the data from the DB is "+s);
// If first time, create the buffer, otherwise clear it. // If first time, create the buffer, otherwise clear it.
if (resultSet.sbuf == null) if (resultSet.sbuf == null)
...@@ -1693,7 +1741,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1693,7 +1741,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
} }
else if (slen == 19) else if (slen == 19)
{ {
// No tz or fractional second info. // No tz or fractional second info.
// I'm not sure if it is // I'm not sure if it is
// possible to have a string in this format, as pg // possible to have a string in this format, as pg
// should give us tz qualified timestamps back, but it was // should give us tz qualified timestamps back, but it was
...@@ -1702,7 +1750,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1702,7 +1750,7 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
} }
else else
{ {
// We must just have a date. This case is // We must just have a date. This case is
// needed if this method is called on a date // needed if this method is called on a date
// column // column
df = new SimpleDateFormat("yyyy-MM-dd"); df = new SimpleDateFormat("yyyy-MM-dd");
...@@ -1711,6 +1759,8 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1711,6 +1759,8 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
try try
{ {
// All that's left is to parse the string and return the ts. // All that's left is to parse the string and return the ts.
if ( org.postgresql.Driver.logDebug ) org.postgresql.Driver.debug( "" + df.parse(resultSet.sbuf.toString()).getTime() );
return new Timestamp(df.parse(resultSet.sbuf.toString()).getTime()); return new Timestamp(df.parse(resultSet.sbuf.toString()).getTime());
} }
catch (ParseException e) catch (ParseException e)
...@@ -1719,5 +1769,9 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu ...@@ -1719,5 +1769,9 @@ public class ResultSet extends org.postgresql.ResultSet implements java.sql.Resu
} }
} }
} }
public void setSQLQuery(String sqlQuery) {
this.sqlQuery=sqlQuery;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment