org.postgresql.pljava.jdbc
Class TriggerResultSet

java.lang.Object
  extended by org.postgresql.pljava.jdbc.AbstractResultSet
      extended by org.postgresql.pljava.jdbc.ObjectResultSet
          extended by org.postgresql.pljava.jdbc.SingleRowResultSet
              extended by org.postgresql.pljava.jdbc.TriggerResultSet
All Implemented Interfaces:
java.sql.ResultSet

public class TriggerResultSet
extends SingleRowResultSet

A single row, updateable ResultSet specially made for triggers. The changes made to this ResultSet are remembered and converted to a SPI_modify_tuple call prior to function return.


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
TriggerResultSet(TupleDesc tupleDesc, Tuple tuple, boolean readOnly)
           
 
Method Summary
 void cancelRowUpdates()
          Cancel all changes made to the Tuple.
 java.lang.Object[] getChangeIndexesAndValues()
          Return a 2 element array describing the changes that has been made to the contained Tuple.
 int getConcurrency()
          Returns the concurrency for this ResultSet.
protected  java.lang.Object getObjectValue(int columnIndex)
           
protected  TupleDesc getTupleDesc()
           
 boolean rowUpdated()
          Returns true if this row has been updated.
 void updateObject(int columnIndex, java.lang.Object x)
          Store this change for later use
 
Methods inherited from class org.postgresql.pljava.jdbc.SingleRowResultSet
absolute, afterLast, beforeFirst, close, deleteRow, findColumn, first, getFetchDirection, getFetchSize, getRow, getType, insertRow, isAfterLast, isBeforeFirst, isFirst, isLast, last, moveToCurrentRow, moveToInsertRow, next, previous, relative, rowDeleted, rowInserted, setFetchDirection, setFetchSize, updateObject, updateRow
 
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, getMetaData, getNumber, getObject, getObject, 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
 

Constructor Detail

TriggerResultSet

public TriggerResultSet(TupleDesc tupleDesc,
                        Tuple tuple,
                        boolean readOnly)
                 throws java.sql.SQLException
Throws:
java.sql.SQLException
Method Detail

cancelRowUpdates

public void cancelRowUpdates()
                      throws java.sql.SQLException
Cancel all changes made to the Tuple.

Throws:
java.sql.SQLException

getConcurrency

public int getConcurrency()
                   throws java.sql.SQLException
Returns the concurrency for this ResultSet.

Specified by:
getConcurrency in interface java.sql.ResultSet
Overrides:
getConcurrency in class SingleRowResultSet
Throws:
java.sql.SQLException
See Also:
ResultSet.getConcurrency()

rowUpdated

public boolean rowUpdated()
                   throws java.sql.SQLException
Returns true if this row has been updated.

Throws:
java.sql.SQLException

updateObject

public void updateObject(int columnIndex,
                         java.lang.Object x)
                  throws java.sql.SQLException
Store this change for later use

Throws:
java.sql.SQLException

getChangeIndexesAndValues

public java.lang.Object[] getChangeIndexesAndValues()
Return a 2 element array describing the changes that has been made to the contained Tuple. The first element is an int[] containing the index of each changed value. The second element is an Object[] with containing the corresponding values.

Returns:
The 2 element array or null if no change has been made.

getObjectValue

protected java.lang.Object getObjectValue(int columnIndex)
                                   throws java.sql.SQLException
Specified by:
getObjectValue in class ObjectResultSet
Throws:
java.sql.SQLException

getTupleDesc

protected final TupleDesc getTupleDesc()
Specified by:
getTupleDesc in class SingleRowResultSet


Copyright (c) 2003, 2004, 2005 TADA AB - Taby Sweden. Distributed under the terms shown in COPYRIGHT