Quadcap Embeddable Database

com.quadcap.sql.JoinCursor Class Reference

Inheritance diagram for com.quadcap.sql.JoinCursor:

com.quadcap.sql.CursorImpl com.quadcap.sql.TupleImpl com.quadcap.sql.Cursor com.quadcap.sql.Tuple Externalizable com.quadcap.sql.Tuple com.quadcap.sql.JoinCrossCursor com.quadcap.sql.JoinInnerCursor com.quadcap.sql.JoinUnionCursor List of all members.

Detailed Description

Cursor implementation of cross-join (cartesion product).

Author:
Stan Bailes

Definition at line 61 of file JoinCursor.java.

Public Member Functions

 JoinCursor (Session session, Cursor outer, Cursor ca, Cursor cb, Expression where, Tuple tuple, JoinMapRow row, boolean left, boolean inner) throws SQLException
Row getRow ()
 Derived class implements this function to return the current cursor row.

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

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

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

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

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

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

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.


Protected Member Functions

boolean anext () throws SQLException
void bfirst () throws SQLException
boolean bnext () throws SQLException

Package Functions

final boolean passRow (Cursor c, Expression w) throws SQLException

Package Attributes

Cursor ca
Cursor cb
JoinMapRow row
Expression where
boolean left
boolean inner
Row ra
Row rb
Expression aWhere


Constructor & Destructor Documentation

com.quadcap.sql.JoinCursor.JoinCursor Session  session,
Cursor  outer,
Cursor  ca,
Cursor  cb,
Expression  where,
Tuple  tuple,
JoinMapRow  row,
boolean  left,
boolean  inner
throws SQLException
 

Definition at line 73 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.ca, com.quadcap.sql.JoinCursor.cb, com.quadcap.sql.JoinCursor.inner, com.quadcap.sql.JoinCursor.left, com.quadcap.sql.JoinCursor.row, and com.quadcap.sql.JoinCursor.where.


Member Function Documentation

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

Position the cursor after the last row.

Implements com.quadcap.sql.CursorImpl.

Definition at line 112 of file JoinCursor.java.

boolean com.quadcap.sql.JoinCursor.anext  )  throws SQLException [protected]
 

Definition at line 128 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.aWhere, com.quadcap.sql.JoinCursor.ca, com.quadcap.sql.Cursor.getRow(), com.quadcap.sql.Cursor.next(), com.quadcap.sql.JoinCursor.passRow(), com.quadcap.sql.JoinCursor.ra, com.quadcap.sql.JoinCursor.row, and com.quadcap.sql.JoinMapRow.setA().

Referenced by com.quadcap.sql.JoinUnionCursor.next(), and com.quadcap.sql.JoinCursor.next().

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

Position the cursor before the first row.

Implements com.quadcap.sql.CursorImpl.

Definition at line 119 of file JoinCursor.java.

References com.quadcap.sql.Cursor.beforeFirst(), com.quadcap.sql.JoinCursor.ca, com.quadcap.sql.JoinCursor.cb, com.quadcap.sql.JoinCursor.ra, com.quadcap.sql.JoinCursor.rb, com.quadcap.sql.JoinCursor.row, com.quadcap.sql.JoinMapRow.setA(), and com.quadcap.sql.JoinMapRow.setB().

void com.quadcap.sql.JoinCursor.bfirst  )  throws SQLException [protected]
 

Reimplemented in com.quadcap.sql.JoinInnerCursor.

Definition at line 143 of file JoinCursor.java.

References com.quadcap.sql.Cursor.beforeFirst(), and com.quadcap.sql.JoinCursor.cb.

Referenced by com.quadcap.sql.JoinCursor.next().

boolean com.quadcap.sql.JoinCursor.bnext  )  throws SQLException [protected]
 

Reimplemented in com.quadcap.sql.JoinInnerCursor.

Definition at line 147 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.cb, com.quadcap.sql.Cursor.getRow(), com.quadcap.sql.Cursor.next(), com.quadcap.sql.JoinCursor.rb, com.quadcap.sql.JoinCursor.row, and com.quadcap.sql.JoinMapRow.setB().

Referenced by com.quadcap.sql.JoinUnionCursor.next(), and com.quadcap.sql.JoinCursor.next().

void com.quadcap.sql.JoinCursor.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.JoinInnerCursor.

Definition at line 199 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.ca, com.quadcap.sql.JoinCursor.cb, and com.quadcap.sql.Cursor.close().

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

Delete the current cursor row.

Implements com.quadcap.sql.CursorImpl.

Definition at line 108 of file JoinCursor.java.

Row com.quadcap.sql.JoinCursor.getRow  )  [virtual]
 

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

Implementation required.

Implements com.quadcap.sql.CursorImpl.

Definition at line 100 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.row.

boolean com.quadcap.sql.JoinCursor.isWritable int  column  )  [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.

Definition at line 117 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.isWritable().

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

boolean com.quadcap.sql.JoinCursor.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.JoinUnionCursor.

Definition at line 159 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.anext(), com.quadcap.sql.JoinCursor.bfirst(), com.quadcap.sql.JoinCursor.bnext(), com.quadcap.sql.JoinCursor.inner, com.quadcap.sql.JoinCursor.left, and com.quadcap.sql.JoinCursor.ra.

final boolean com.quadcap.sql.JoinCursor.passRow Cursor  c,
Expression  w
throws SQLException [package]
 

Definition at line 183 of file JoinCursor.java.

References com.quadcap.sql.types.ValueBoolean.isTrue(), and com.quadcap.sql.JoinCursor.passRow().

Referenced by com.quadcap.sql.JoinCursor.anext(), and com.quadcap.sql.JoinCursor.passRow().

long com.quadcap.sql.JoinCursor.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.

Definition at line 218 of file JoinCursor.java.

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

Replace the current cursor row with the specified row.

Implements com.quadcap.sql.CursorImpl.

Definition at line 104 of file JoinCursor.java.

References com.quadcap.sql.JoinCursor.updateRow().

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


Member Data Documentation

Expression com.quadcap.sql.JoinCursor.aWhere [package]
 

Definition at line 71 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.anext().

Cursor com.quadcap.sql.JoinCursor.ca [package]
 

Definition at line 62 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.anext(), com.quadcap.sql.JoinCursor.beforeFirst(), com.quadcap.sql.JoinCursor.close(), and com.quadcap.sql.JoinCursor.JoinCursor().

Cursor com.quadcap.sql.JoinCursor.cb [package]
 

Definition at line 63 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.beforeFirst(), com.quadcap.sql.JoinCursor.bfirst(), com.quadcap.sql.JoinCursor.bnext(), com.quadcap.sql.JoinCursor.close(), and com.quadcap.sql.JoinCursor.JoinCursor().

boolean com.quadcap.sql.JoinCursor.inner [package]
 

Definition at line 67 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.JoinCursor(), and com.quadcap.sql.JoinCursor.next().

boolean com.quadcap.sql.JoinCursor.left [package]
 

Definition at line 66 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.JoinCursor(), and com.quadcap.sql.JoinCursor.next().

Row com.quadcap.sql.JoinCursor.ra [package]
 

Definition at line 69 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.anext(), com.quadcap.sql.JoinCursor.beforeFirst(), and com.quadcap.sql.JoinCursor.next().

Row com.quadcap.sql.JoinCursor.rb [package]
 

Definition at line 70 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.beforeFirst(), and com.quadcap.sql.JoinCursor.bnext().

JoinMapRow com.quadcap.sql.JoinCursor.row [package]
 

Definition at line 64 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.anext(), com.quadcap.sql.JoinCursor.beforeFirst(), com.quadcap.sql.JoinCursor.bnext(), com.quadcap.sql.JoinCursor.getRow(), and com.quadcap.sql.JoinCursor.JoinCursor().

Expression com.quadcap.sql.JoinCursor.where [package]
 

Definition at line 65 of file JoinCursor.java.

Referenced by com.quadcap.sql.JoinCursor.JoinCursor().