org.postgresql.pljava.jdbc
Class SingleRowResultSet

java.lang.Object
  extended by org.postgresql.pljava.jdbc.AbstractResultSet
      extended by org.postgresql.pljava.jdbc.ObjectResultSet
          extended by org.postgresql.pljava.jdbc.SingleRowResultSet
All Implemented Interfaces:
ResultSet
Direct Known Subclasses:
SingleRowWriter, SingleTupleReader, TriggerResultSet

public abstract class SingleRowResultSet
extends ObjectResultSet

A single row ResultSet

Author:
Thomas Hallgren

Field Summary
 
Fields inherited from interface java.sql.ResultSet
CLOSE_CURSORS_AT_COMMIT, CONCUR_READ_ONLY, CONCUR_UPDATABLE, FETCH_FORWARD, FETCH_REVERSE, FETCH_UNKNOWN, HOLD_CURSORS_OVER_COMMIT, TYPE_FORWARD_ONLY, TYPE_SCROLL_INSENSITIVE, TYPE_SCROLL_SENSITIVE
 
Constructor Summary
SingleRowResultSet()
           
 
Method Summary
 boolean absolute(int row)
          Cursor positioning is not supported.
 void afterLast()
          Cursor positoning is not implemented.
 void beforeFirst()
          Cursor positoning is not implemented.
 void deleteRow()
          This feature is not supported.
 int findColumn(String columnName)
           
 boolean first()
          Cursor positioning is not implemented.
 int getConcurrency()
           
 int getFetchDirection()
           
 int getFetchSize()
           
 ResultSetMetaData getMetaData()
          Returns the metadata for this result set.
 int getRow()
           
protected abstract  TupleDesc getTupleDesc()
           
 int getType()
           
 void insertRow()
          This feature is not supported.
 boolean isAfterLast()
          Returns false.
 boolean isBeforeFirst()
          Will always return false since a SingleRowWriter starts on the one and only row.
 boolean isFirst()
          Returns true.
 boolean isLast()
          Returns true.
 boolean last()
          Cursor positioning is not implemented.
 void moveToCurrentRow()
          This is a no-op since the moveToInsertRow() method is unsupported.
 void moveToInsertRow()
          This feature is not supported on a SingleRowWriter.
 boolean next()
          This method will always return false but it will not change the state of the ResultSet.
 boolean previous()
          This method will always return false but it will not change the state of the ResultSet.
 boolean relative(int rows)
          Cursor positioning is not supported.
 boolean rowDeleted()
          Will always return false.
 boolean rowInserted()
          Will always return false.
 void setFetchDirection(int direction)
          Only ResultSet.FETCH_FORWARD is supported.
 void setFetchSize(int fetchSize)
          Only permitted value for fetchSize is 1.
 void updateObject(int columnIndex, Object x, int scale)
          The scale is not really supported.
 void updateRow()
          This is a noop.
 
Methods inherited from class org.postgresql.pljava.jdbc.ObjectResultSet
clearWarnings, getArray, getAsciiStream, getBigDecimal, getBigDecimal, getBinaryStream, getBlob, getBoolean, getByte, getBytes, getCharacterStream, getClob, getDate, getDate, getDouble, getFloat, getInt, getLong, getNumber, getObject, getObject, getObjectValue, getObjectValue, getRef, getShort, getString, getTime, getTime, getTimestamp, getTimestamp, getUnicodeStream, getURL, getValue, getValue, getWarnings, refreshRow, updateArray, updateAsciiStream, updateBigDecimal, updateBinaryStream, updateBlob, updateBoolean, updateByte, updateBytes, updateCharacterStream, updateClob, updateDate, updateDouble, updateFloat, updateInt, updateLong, updateNull, updateRef, updateShort, updateString, updateTime, updateTimestamp, wasNull
 
Methods inherited from class org.postgresql.pljava.jdbc.AbstractResultSet
getArray, getAsciiStream, getBigDecimal, getBigDecimal, getBinaryStream, getBlob, getBoolean, getByte, getBytes, getCharacterStream, getClob, getCursorName, getDate, getDate, getDouble, getFloat, getInt, getLong, getObject, getObject, getRef, getShort, getStatement, getString, getTime, getTime, getTimestamp, getTimestamp, getUnicodeStream, getURL, updateArray, updateAsciiStream, updateBigDecimal, updateBinaryStream, updateBlob, updateBoolean, updateByte, updateBytes, updateCharacterStream, updateClob, updateDate, updateDouble, updateFloat, updateInt, updateLong, updateNull, updateObject, updateObject, updateRef, updateShort, updateString, updateTime, updateTimestamp
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface java.sql.ResultSet
cancelRowUpdates, close, rowUpdated, updateObject
 

Constructor Detail

SingleRowResultSet

public SingleRowResultSet()
Method Detail

getConcurrency

public int getConcurrency()
                   throws SQLException
Throws:
SQLException

findColumn

public int findColumn(String columnName)
               throws SQLException
Throws:
SQLException

getFetchDirection

public int getFetchDirection()
                      throws SQLException
Throws:
SQLException

getFetchSize

public int getFetchSize()
                 throws SQLException
Throws:
SQLException

getMetaData

public ResultSetMetaData getMetaData()
                              throws SQLException
Returns the metadata for this result set.

Specified by:
getMetaData in interface ResultSet
Overrides:
getMetaData in class ObjectResultSet
Throws:
SQLException - indicating that this feature is not supported.

getRow

public int getRow()
           throws SQLException
Throws:
SQLException

getType

public int getType()
            throws SQLException
Throws:
SQLException

afterLast

public void afterLast()
               throws SQLException
Cursor positoning is not implemented.

Throws:
SQLException - indicating that this feature is not supported.

beforeFirst

public void beforeFirst()
                 throws SQLException
Cursor positoning is not implemented.

Throws:
SQLException - indicating that this feature is not supported.

first

public boolean first()
              throws SQLException
Cursor positioning is not implemented.

Throws:
SQLException - indicating that this feature is not supported.

isAfterLast

public boolean isAfterLast()
                    throws SQLException
Returns false.

Throws:
SQLException

isBeforeFirst

public boolean isBeforeFirst()
                      throws SQLException
Will always return false since a SingleRowWriter starts on the one and only row.

Throws:
SQLException

isFirst

public boolean isFirst()
                throws SQLException
Returns true.

Throws:
SQLException

isLast

public boolean isLast()
               throws SQLException
Returns true.

Throws:
SQLException

last

public boolean last()
             throws SQLException
Cursor positioning is not implemented.

Throws:
SQLException - indicating that this feature is not supported.

next

public boolean next()
             throws SQLException
This method will always return false but it will not change the state of the ResultSet.

Throws:
SQLException

previous

public boolean previous()
                 throws SQLException
This method will always return false but it will not change the state of the ResultSet.

Throws:
SQLException

setFetchDirection

public void setFetchDirection(int direction)
                       throws SQLException
Only ResultSet.FETCH_FORWARD is supported.

Throws:
SQLException - indicating that this feature is not supported for other values on direction.

setFetchSize

public void setFetchSize(int fetchSize)
                  throws SQLException
Only permitted value for fetchSize is 1.

Throws:
SQLException

absolute

public boolean absolute(int row)
                 throws SQLException
Cursor positioning is not supported.

Throws:
SQLException - indicating that this feature is not supported.

relative

public boolean relative(int rows)
                 throws SQLException
Cursor positioning is not supported.

Throws:
SQLException - indicating that this feature is not supported.

deleteRow

public void deleteRow()
               throws SQLException
This feature is not supported.

Throws:
SQLException - indicating that this feature is not supported.

insertRow

public void insertRow()
               throws SQLException
This feature is not supported.

Throws:
SQLException - indicating that this feature is not supported.

moveToCurrentRow

public void moveToCurrentRow()
                      throws SQLException
This is a no-op since the moveToInsertRow() method is unsupported.

Throws:
SQLException

moveToInsertRow

public void moveToInsertRow()
                     throws SQLException
This feature is not supported on a SingleRowWriter.

Throws:
SQLException - indicating that this feature is not supported.

updateRow

public void updateRow()
               throws SQLException
This is a noop.

Throws:
SQLException

rowDeleted

public boolean rowDeleted()
                   throws SQLException
Will always return false.

Throws:
SQLException

rowInserted

public boolean rowInserted()
                    throws SQLException
Will always return false.

Throws:
SQLException

updateObject

public void updateObject(int columnIndex,
                         Object x,
                         int scale)
                  throws SQLException
The scale is not really supported. This method just strips it off and calls ResultSet.updateObject(int, Object)

Throws:
SQLException

getTupleDesc

protected abstract TupleDesc getTupleDesc()
                                   throws SQLException
Throws:
SQLException