net.sf.farrago.runtime
Class FarragoTupleIterResultSet

java.lang.Object
  extended by org.eigenbase.jdbc4.Unwrappable
      extended by org.eigenbase.util14.AbstractResultSet
          extended by org.eigenbase.runtime.AbstractIterResultSet
              extended by org.eigenbase.runtime.TupleIterResultSet
                  extended by net.sf.farrago.runtime.FarragoTupleIterResultSet
All Implemented Interfaces:
ResultSet
Direct Known Subclasses:
FennelOnlyResultSet

public class FarragoTupleIterResultSet
extends TupleIterResultSet

FarragoTupleIterResultSet is a refinement of TupleIterResultSet which exposes Farrago datatype semantics.

Version:
$Id: //open/dev/farrago/src/net/sf/farrago/runtime/FarragoTupleIterResultSet.java#20 $
Author:
John V. Sichi, Stephan Zuercher

Nested Class Summary
 
Nested classes/interfaces inherited from class org.eigenbase.runtime.AbstractIterResultSet
AbstractIterResultSet.ColumnGetter, AbstractIterResultSet.FieldGetter, AbstractIterResultSet.MetaData, AbstractIterResultSet.SingletonColumnGetter, AbstractIterResultSet.SqlTimeoutException, AbstractIterResultSet.SyntheticColumnGetter
 
Field Summary
private static Logger jdbcTracer
           
private  RelDataType rowType
           
private  FarragoSessionRuntimeContext runtimeContext
           
protected static Logger tracer
           
 
Fields inherited from class org.eigenbase.runtime.AbstractIterResultSet
current, row, timeoutMillis
 
Fields inherited from class org.eigenbase.util14.AbstractResultSet
fetchSize, maxRows, wasNull
 
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
FarragoTupleIterResultSet(TupleIter tupleIter, Class<?> clazz, RelDataType rowType, FarragoSessionRuntimeContext runtimeContext)
           
FarragoTupleIterResultSet(TupleIter tupleIter, Class<?> clazz, RelDataType rowType, FarragoSessionRuntimeContext runtimeContext, AbstractIterResultSet.ColumnGetter columnGetter)
          Creates a new FarragoTupleIterResultSet object.
 
Method Summary
 void close()
           
 ResultSetMetaData getMetaData()
           
protected  Object getRaw(int columnIndex)
          Returns the raw value of a column as an object.
 boolean next()
           
 void setOpened()
          Signals that all aspects of opening this ResultSet have completed successfully.
 
Methods inherited from class org.eigenbase.runtime.TupleIterResultSet
setTimeout
 
Methods inherited from class org.eigenbase.runtime.AbstractIterResultSet
getFetchSize, getRow, isAfterLast, isBeforeFirst, isFirst, isLast, setFetchSize
 
Methods inherited from class org.eigenbase.util14.AbstractResultSet
absolute, afterLast, beforeFirst, cancelRowUpdates, clearWarnings, deleteRow, findColumn, first, getArray, getArray, getAsciiStream, getAsciiStream, getBigDecimal, getBigDecimal, getBigDecimal, getBigDecimal, getBinaryStream, getBinaryStream, getBlob, getBlob, getBoolean, getBoolean, getByte, getByte, getBytes, getBytes, getCharacterStream, getCharacterStream, getClob, getClob, getConcurrency, getCursorName, getDate, getDate, getDate, getDate, getDouble, getDouble, getFetchDirection, getFloat, getFloat, getHoldability, getInt, getInt, getLong, getLong, getNCharacterStream, getNCharacterStream, getNClob, getNClob, getNString, getNString, getObject, getObject, getObject, getObject, getRaw, getRef, getRef, getRowId, getRowId, getShort, getShort, getSQLXML, getSQLXML, getStatement, getString, getString, getTime, getTime, getTime, getTime, getTimestamp, getTimestamp, getTimestamp, getTimestamp, getType, getUnicodeStream, getUnicodeStream, getURL, getURL, getWarnings, insertRow, isClosed, last, moveToCurrentRow, moveToInsertRow, newConversionError, newConversionError, newDirectionError, newFetchError, newUpdatabilityError, previous, refreshRow, relative, rowDeleted, rowInserted, rowUpdated, setFetchDirection, setMaxRows, updateArray, updateArray, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateAsciiStream, updateBigDecimal, updateBigDecimal, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBinaryStream, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBlob, updateBoolean, updateBoolean, updateByte, updateByte, updateBytes, updateBytes, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateCharacterStream, updateClob, updateClob, updateClob, updateClob, updateClob, updateClob, updateDate, updateDate, updateDouble, updateDouble, updateFloat, updateFloat, updateInt, updateInt, updateLong, updateLong, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNCharacterStream, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNClob, updateNString, updateNString, updateNull, updateNull, updateObject, updateObject, updateObject, updateObject, updateRef, updateRef, updateRow, updateRowId, updateRowId, updateShort, updateShort, updateSQLXML, updateSQLXML, updateString, updateString, updateTime, updateTime, updateTimestamp, updateTimestamp, wasNull
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

tracer

protected static final Logger tracer

jdbcTracer

private static final Logger jdbcTracer

runtimeContext

private FarragoSessionRuntimeContext runtimeContext

rowType

private RelDataType rowType
Constructor Detail

FarragoTupleIterResultSet

public FarragoTupleIterResultSet(TupleIter tupleIter,
                                 Class<?> clazz,
                                 RelDataType rowType,
                                 FarragoSessionRuntimeContext runtimeContext)

FarragoTupleIterResultSet

public FarragoTupleIterResultSet(TupleIter tupleIter,
                                 Class<?> clazz,
                                 RelDataType rowType,
                                 FarragoSessionRuntimeContext runtimeContext,
                                 AbstractIterResultSet.ColumnGetter columnGetter)
Creates a new FarragoTupleIterResultSet object.

Parameters:
tupleIter - underlying iterator
clazz - Class for objects which iterator will produce
rowType - type info for rows produced
runtimeContext - runtime context for this execution
columnGetter - object used to read individual columns from the the underlying iterator
Method Detail

setOpened

public void setOpened()
Signals that all aspects of opening this ResultSet have completed successfully. After this method is called, the ResultSet must (eventually) be closed or else resources may be leaked.


next

public boolean next()
             throws SQLException
Specified by:
next in interface ResultSet
Overrides:
next in class TupleIterResultSet
Throws:
SQLException

getMetaData

public ResultSetMetaData getMetaData()
                              throws SQLException
Specified by:
getMetaData in interface ResultSet
Overrides:
getMetaData in class AbstractIterResultSet
Throws:
SQLException

close

public void close()
           throws SQLException
Specified by:
close in interface ResultSet
Overrides:
close in class TupleIterResultSet
Throws:
SQLException

getRaw

protected Object getRaw(int columnIndex)
Description copied from class: AbstractIterResultSet
Returns the raw value of a column as an object.

Overrides:
getRaw in class AbstractIterResultSet
Parameters:
columnIndex - Column index, 1-based