Quadcap Embeddable Database

com.quadcap.sql.FilterCursor Class Reference

Inheritance diagram for com.quadcap.sql.FilterCursor:

com.quadcap.sql.CursorImpl com.quadcap.sql.TupleImpl com.quadcap.sql.Cursor com.quadcap.sql.Tuple Externalizable com.quadcap.sql.Tuple com.quadcap.sql.AggregateCursor com.quadcap.sql.GroupByCursor com.quadcap.sql.HavingCursor com.quadcap.sql.MultiCursor com.quadcap.sql.PredicateCursor com.quadcap.sql.RenameCursor List of all members.

Detailed Description

Base class for all filter cursor types.

Author:
Stan Bailes

Definition at line 50 of file FilterCursor.java.

Public Member Functions

 FilterCursor (Session session)
 FilterCursor (Session session, String name, Cursor cursor) throws SQLException
 FilterCursor (Session session, Cursor cursor) throws SQLException
Row getRow () throws SQLException
 Derived class implements this function to return the current cursor row.

long getRowId ()
 Some cursors have rows where the rows can be identified by row id, and sometimes the cursors even know the row id for the current row.

void updateRow (Row row) throws SQLException
 Replace the current cursor row with the specified row.

void insertRow (Row row) throws SQLException
 Handle insert.

void deleteRow () throws SQLException
 Delete the current cursor row.

void beforeFirst () throws SQLException
 Position the cursor before the first row.

void afterLast () throws SQLException
 Position the cursor after the last row.

boolean absolute (int row) throws SQLException
 Position the cursor to the specified absolute row.

boolean next () throws SQLException
 Advance the cursor and return true if we advanced to a valid row.

boolean prev () throws SQLException
 Move the cursor back one row and return true if we moved back to a valid row.

boolean isWritable (int column) throws SQLException
 Return true if the specified column is writable.

void setOuterCursor (Cursor c)
 Set the cursor context in which this subquery is executing.

void close () throws SQLException
 Close the cursor and free up any resources (including closing the cursor's transaction if that is feasible) used by the cursor.

long size () throws SQLException
 If the underlying implementation knows, or can compute cheaply, the actual size of the ResultSet, it should return a non-negative number here.

String toString ()
 Return a string representation for debugging.


Protected Member Functions

void setCursor (Cursor cursor)

Package Attributes

Cursor cursor


Constructor & Destructor Documentation

com.quadcap.sql.FilterCursor.FilterCursor Session  session  ) 
 

Definition at line 53 of file FilterCursor.java.

com.quadcap.sql.FilterCursor.FilterCursor Session  session,
String  name,
Cursor  cursor
throws SQLException
 

Definition at line 57 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor.

com.quadcap.sql.FilterCursor.FilterCursor Session  session,
Cursor  cursor
throws SQLException
 

Definition at line 65 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, com.quadcap.sql.Tuple.getName(), and com.quadcap.sql.Cursor.getOuterCursor().


Member Function Documentation

boolean com.quadcap.sql.FilterCursor.absolute int  row  )  throws SQLException
 

Position the cursor to the specified absolute row.

The first row is row '1', and the last row is '-1', as in JDBC.

Reimplemented from com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.PredicateCursor.

Definition at line 105 of file FilterCursor.java.

References com.quadcap.sql.Cursor.absolute(), com.quadcap.sql.FilterCursor.absolute(), and com.quadcap.sql.FilterCursor.cursor.

Referenced by com.quadcap.sql.FilterCursor.absolute().

void com.quadcap.sql.FilterCursor.afterLast  )  throws SQLException [virtual]
 

Position the cursor after the last row.

Implements com.quadcap.sql.CursorImpl.

Definition at line 101 of file FilterCursor.java.

References com.quadcap.sql.Cursor.afterLast(), and com.quadcap.sql.FilterCursor.cursor.

Referenced by com.quadcap.sql.PredicateCursor.absolute().

void com.quadcap.sql.FilterCursor.beforeFirst  )  throws SQLException [virtual]
 

Position the cursor before the first row.

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.GroupByCursor, and com.quadcap.sql.MultiCursor.

Definition at line 97 of file FilterCursor.java.

References com.quadcap.sql.Cursor.beforeFirst(), and com.quadcap.sql.FilterCursor.cursor.

Referenced by com.quadcap.sql.PredicateCursor.absolute().

void com.quadcap.sql.FilterCursor.close  )  throws SQLException [virtual]
 

Close the cursor and free up any resources (including closing the cursor's transaction if that is feasible) used by the cursor.

Exceptions:
SQLException may be thrown

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.GroupByCursor, and com.quadcap.sql.MultiCursor.

Definition at line 126 of file FilterCursor.java.

References com.quadcap.sql.Cursor.close(), and com.quadcap.sql.FilterCursor.cursor.

void com.quadcap.sql.FilterCursor.deleteRow  )  throws SQLException [virtual]
 

Delete the current cursor row.

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, and com.quadcap.sql.GroupByCursor.

Definition at line 93 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, and com.quadcap.sql.Cursor.deleteRow().

Row com.quadcap.sql.FilterCursor.getRow  )  throws SQLException [virtual]
 

Derived class implements this function to return the current cursor row.

Implementation required.

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.HavingCursor, and com.quadcap.sql.PredicateCursor.

Definition at line 77 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, and com.quadcap.sql.Cursor.getRow().

long com.quadcap.sql.FilterCursor.getRowId  ) 
 

Some cursors have rows where the rows can be identified by row id, and sometimes the cursors even know the row id for the current row.

If you know, tell us here! If you don't know, just return 0.

Reimplemented from com.quadcap.sql.CursorImpl.

Definition at line 81 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, and com.quadcap.sql.Cursor.getRowId().

void com.quadcap.sql.FilterCursor.insertRow Row  row  )  throws SQLException
 

Handle insert.

Reimplemented from com.quadcap.sql.CursorImpl.

Definition at line 89 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, com.quadcap.sql.Cursor.insertRow(), and com.quadcap.sql.FilterCursor.insertRow().

Referenced by com.quadcap.sql.FilterCursor.insertRow().

boolean com.quadcap.sql.FilterCursor.isWritable int  column  )  throws SQLException [virtual]
 

Return true if the specified column is writable.

Parameters:
column the (one-based) column number
Exceptions:
SQLException may be thrown

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, and com.quadcap.sql.GroupByCursor.

Definition at line 117 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, com.quadcap.sql.Cursor.isWritable(), and com.quadcap.sql.FilterCursor.isWritable().

Referenced by com.quadcap.sql.FilterCursor.isWritable().

boolean com.quadcap.sql.FilterCursor.next  )  throws SQLException [virtual]
 

Advance the cursor and return true if we advanced to a valid row.

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.GroupByCursor, com.quadcap.sql.HavingCursor, com.quadcap.sql.MultiCursor, and com.quadcap.sql.PredicateCursor.

Definition at line 109 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, and com.quadcap.sql.Cursor.next().

boolean com.quadcap.sql.FilterCursor.prev  )  throws SQLException
 

Move the cursor back one row and return true if we moved back to a valid row.

Reimplemented from com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.MultiCursor, and com.quadcap.sql.PredicateCursor.

Definition at line 113 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, and com.quadcap.sql.Cursor.prev().

void com.quadcap.sql.FilterCursor.setCursor Cursor  cursor  )  [protected]
 

Definition at line 73 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.setCursor().

Referenced by com.quadcap.sql.FilterCursor.setCursor().

void com.quadcap.sql.FilterCursor.setOuterCursor Cursor  c  ) 
 

Set the cursor context in which this subquery is executing.

Parameters:
outer the cursor from the outer context

Reimplemented from com.quadcap.sql.CursorImpl.

Definition at line 121 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, com.quadcap.sql.Cursor.setOuterCursor(), and com.quadcap.sql.FilterCursor.setOuterCursor().

Referenced by com.quadcap.sql.FilterCursor.setOuterCursor().

long com.quadcap.sql.FilterCursor.size  )  throws SQLException
 

If the underlying implementation knows, or can compute cheaply, the actual size of the ResultSet, it should return a non-negative number here.

If the size is unknown and it would be expensive to compute it (i.e., on the order of while next()) size++), then the implementation should return -1

Implements com.quadcap.sql.Cursor.

Reimplemented in com.quadcap.sql.AggregateCursor, and com.quadcap.sql.GroupByCursor.

Definition at line 130 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, and com.quadcap.sql.Cursor.size().

String com.quadcap.sql.FilterCursor.toString  ) 
 

Return a string representation for debugging.

Reimplemented from com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.PredicateCursor.

Definition at line 135 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor.

void com.quadcap.sql.FilterCursor.updateRow Row  row  )  throws SQLException [virtual]
 

Replace the current cursor row with the specified row.

Implements com.quadcap.sql.CursorImpl.

Reimplemented in com.quadcap.sql.AggregateCursor, com.quadcap.sql.GroupByCursor, and com.quadcap.sql.HavingCursor.

Definition at line 85 of file FilterCursor.java.

References com.quadcap.sql.FilterCursor.cursor, com.quadcap.sql.Cursor.updateRow(), and com.quadcap.sql.FilterCursor.updateRow().

Referenced by com.quadcap.sql.FilterCursor.updateRow().


Member Data Documentation

Cursor com.quadcap.sql.FilterCursor.cursor [package]
 

Definition at line 51 of file FilterCursor.java.

Referenced by com.quadcap.sql.FilterCursor.absolute(), com.quadcap.sql.FilterCursor.afterLast(), com.quadcap.sql.FilterCursor.beforeFirst(), com.quadcap.sql.FilterCursor.close(), com.quadcap.sql.FilterCursor.deleteRow(), com.quadcap.sql.FilterCursor.FilterCursor(), com.quadcap.sql.FilterCursor.getRow(), com.quadcap.sql.FilterCursor.getRowId(), com.quadcap.sql.FilterCursor.insertRow(), com.quadcap.sql.FilterCursor.isWritable(), com.quadcap.sql.FilterCursor.next(), com.quadcap.sql.FilterCursor.prev(), com.quadcap.sql.FilterCursor.setOuterCursor(), com.quadcap.sql.FilterCursor.size(), com.quadcap.sql.FilterCursor.toString(), and com.quadcap.sql.FilterCursor.updateRow().