Quadcap Embeddable Database

com.quadcap.sql.MergeExpression Class Reference

Inheritance diagram for com.quadcap.sql.MergeExpression:

com.quadcap.sql.TableExpression Externalizable com.quadcap.sql.Expression List of all members.

Detailed Description

Table expression representing UNION or INTERSECTION operations.

Author:
Stan Bailes

Definition at line 69 of file MergeExpression.java.

Public Member Functions

 MergeExpression ()
 MergeExpression (int op, boolean all, TableExpression a, TableExpression b, Vector columns, boolean corr)
int rank ()
 Returns zero if this is a scalar expression, one if it's a vector type and 2 if it's a table/cursor type.

boolean isUpdatable ()
 Is this table expression updatable?

void getBaseTables (Vector v)
 Return a vector consisting of the names of the underlying base tables that are used to derive this table expression.

void setWhere (Expression where)
 Set the WHERE clause associated with this table expression.

Cursor getCursor (Session session, Cursor c) throws SQLException
 Return a cursor which can be used to access this table expression.

void invert ()
 Negate the logical value of the expression.

void readExternal (ObjectInput in) throws IOException, ClassNotFoundException
void writeExternal (ObjectOutput out) throws IOException
void visitSubExpressions (ExpressionVisitor ev)
 Give a visitor access to the parse tree.

String toString ()
String name ()

Package Functions

void checkCorresponding (Cursor ca, Cursor cb) throws SQLException

Package Attributes

int op
boolean all
boolean corr
TableExpression a
TableExpression b
Vector columns
TempTableMerge tempTable
MergeCursor mcursor = null
int[] amap = null
int[] bmap = null
Type[] typeMap = null


Constructor & Destructor Documentation

com.quadcap.sql.MergeExpression.MergeExpression  ) 
 

Definition at line 84 of file MergeExpression.java.

com.quadcap.sql.MergeExpression.MergeExpression int  op,
boolean  all,
TableExpression  a,
TableExpression  b,
Vector  columns,
boolean  corr
 

Definition at line 86 of file MergeExpression.java.


Member Function Documentation

void com.quadcap.sql.MergeExpression.checkCorresponding Cursor  ca,
Cursor  cb
throws SQLException [package]
 

Definition at line 150 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.amap, com.quadcap.sql.MergeExpression.bmap, com.quadcap.sql.MergeExpression.checkCorresponding(), com.quadcap.sql.MergeExpression.columns, com.quadcap.sql.MergeExpression.corr, com.quadcap.sql.Column.getColumn(), com.quadcap.sql.Column.getShortName(), com.quadcap.sql.MergeExpression.name(), and com.quadcap.sql.MergeExpression.op.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding(), and com.quadcap.sql.MergeExpression.getCursor().

void com.quadcap.sql.MergeExpression.getBaseTables Vector  v  )  [virtual]
 

Return a vector consisting of the names of the underlying base tables that are used to derive this table expression.

Implements com.quadcap.sql.TableExpression.

Definition at line 101 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.TableExpression.getBaseTables(), and com.quadcap.sql.MergeExpression.getBaseTables().

Referenced by com.quadcap.sql.MergeExpression.getBaseTables().

Cursor com.quadcap.sql.MergeExpression.getCursor Session  session,
Cursor  c
throws SQLException [virtual]
 

Return a cursor which can be used to access this table expression.

Implements com.quadcap.sql.TableExpression.

Definition at line 112 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.TupleImpl.addColumn(), com.quadcap.sql.TempTableMerge.addRows(), com.quadcap.sql.MergeExpression.all, com.quadcap.sql.MergeExpression.amap, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.MergeExpression.bmap, com.quadcap.sql.MergeExpression.checkCorresponding(), com.quadcap.sql.Cursor.close(), com.quadcap.sql.MergeExpression.corr, com.quadcap.sql.Tuple.getColumn(), com.quadcap.sql.Tuple.getColumnCount(), com.quadcap.sql.TableExpression.getCursor(), com.quadcap.sql.MergeExpression.getCursor(), com.quadcap.sql.Column.getName(), com.quadcap.sql.MergeExpression.mcursor, com.quadcap.sql.MergeExpression.op, com.quadcap.sql.MergeCursor.resolveColumns(), and com.quadcap.sql.MergeExpression.tempTable.

Referenced by com.quadcap.sql.MergeExpression.getCursor().

void com.quadcap.sql.MergeExpression.invert  ) 
 

Negate the logical value of the expression.

Reimplemented from com.quadcap.sql.Expression.

Definition at line 209 of file MergeExpression.java.

boolean com.quadcap.sql.MergeExpression.isUpdatable  )  [virtual]
 

Is this table expression updatable?

Implements com.quadcap.sql.TableExpression.

Definition at line 99 of file MergeExpression.java.

String com.quadcap.sql.MergeExpression.name  )  [virtual]
 

Implements com.quadcap.sql.TableExpression.

Definition at line 261 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.TableExpression.name(), and com.quadcap.sql.MergeExpression.op.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding().

int com.quadcap.sql.MergeExpression.rank  )  [virtual]
 

Returns zero if this is a scalar expression, one if it's a vector type and 2 if it's a table/cursor type.

Implements com.quadcap.sql.TableExpression.

Definition at line 97 of file MergeExpression.java.

void com.quadcap.sql.MergeExpression.readExternal ObjectInput  in  )  throws IOException, ClassNotFoundException
 

Definition at line 214 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.readExternal().

Referenced by com.quadcap.sql.MergeExpression.readExternal().

void com.quadcap.sql.MergeExpression.setWhere Expression  where  ) 
 

Set the WHERE clause associated with this table expression.

Reimplemented from com.quadcap.sql.TableExpression.

Definition at line 106 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.TableExpression.setWhere(), and com.quadcap.sql.MergeExpression.setWhere().

Referenced by com.quadcap.sql.MergeExpression.setWhere().

String com.quadcap.sql.MergeExpression.toString  )  [virtual]
 

Implements com.quadcap.sql.Expression.

Definition at line 239 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.MergeExpression.all, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.MergeExpression.columns, com.quadcap.sql.MergeExpression.corr, com.quadcap.sql.MergeExpression.op, and com.quadcap.sql.Expression.toString().

void com.quadcap.sql.MergeExpression.visitSubExpressions ExpressionVisitor  ev  ) 
 

Give a visitor access to the parse tree.

Reimplemented from com.quadcap.sql.Expression.

Definition at line 234 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.ExpressionVisitor.visit(), and com.quadcap.sql.MergeExpression.visitSubExpressions().

Referenced by com.quadcap.sql.MergeExpression.visitSubExpressions().

void com.quadcap.sql.MergeExpression.writeExternal ObjectOutput  out  )  throws IOException
 

Definition at line 225 of file MergeExpression.java.

References com.quadcap.sql.MergeExpression.a, com.quadcap.sql.MergeExpression.all, com.quadcap.sql.MergeExpression.b, com.quadcap.sql.MergeExpression.columns, com.quadcap.sql.MergeExpression.corr, com.quadcap.sql.MergeExpression.op, and com.quadcap.sql.MergeExpression.writeExternal().

Referenced by com.quadcap.sql.MergeExpression.writeExternal().


Member Data Documentation

TableExpression com.quadcap.sql.MergeExpression.a [package]
 

Definition at line 75 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.getBaseTables(), com.quadcap.sql.MergeExpression.getCursor(), com.quadcap.sql.MergeExpression.name(), com.quadcap.sql.MergeExpression.setWhere(), com.quadcap.sql.MergeExpression.toString(), com.quadcap.sql.MergeExpression.visitSubExpressions(), and com.quadcap.sql.MergeExpression.writeExternal().

boolean com.quadcap.sql.MergeExpression.all [package]
 

Definition at line 73 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.getCursor(), com.quadcap.sql.MergeExpression.toString(), and com.quadcap.sql.MergeExpression.writeExternal().

int [] com.quadcap.sql.MergeExpression.amap = null [package]
 

Definition at line 80 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding(), and com.quadcap.sql.MergeExpression.getCursor().

TableExpression com.quadcap.sql.MergeExpression.b [package]
 

Definition at line 76 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.getBaseTables(), com.quadcap.sql.MergeExpression.getCursor(), com.quadcap.sql.MergeExpression.name(), com.quadcap.sql.MergeExpression.setWhere(), com.quadcap.sql.MergeExpression.toString(), com.quadcap.sql.MergeExpression.visitSubExpressions(), and com.quadcap.sql.MergeExpression.writeExternal().

int [] com.quadcap.sql.MergeExpression.bmap = null [package]
 

Definition at line 81 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding(), and com.quadcap.sql.MergeExpression.getCursor().

Vector com.quadcap.sql.MergeExpression.columns [package]
 

Definition at line 77 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding(), com.quadcap.sql.MergeExpression.toString(), and com.quadcap.sql.MergeExpression.writeExternal().

boolean com.quadcap.sql.MergeExpression.corr [package]
 

Definition at line 74 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding(), com.quadcap.sql.MergeExpression.getCursor(), com.quadcap.sql.MergeExpression.toString(), and com.quadcap.sql.MergeExpression.writeExternal().

MergeCursor com.quadcap.sql.MergeExpression.mcursor = null [package]
 

Definition at line 79 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.getCursor().

int com.quadcap.sql.MergeExpression.op [package]
 

Definition at line 72 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.checkCorresponding(), com.quadcap.sql.MergeExpression.getCursor(), com.quadcap.sql.MergeExpression.name(), com.quadcap.sql.MergeExpression.toString(), and com.quadcap.sql.MergeExpression.writeExternal().

TempTableMerge com.quadcap.sql.MergeExpression.tempTable [package]
 

Definition at line 78 of file MergeExpression.java.

Referenced by com.quadcap.sql.MergeExpression.getCursor().

Type [] com.quadcap.sql.MergeExpression.typeMap = null [package]
 

Definition at line 82 of file MergeExpression.java.