TableDataSourcepublic class VirtualTable extends JoinedTable
We use the VirtualTable to represent temporary tables created from select, join, etc operations.
An important note about VirtualTables: When we perform a 'select' operation on a virtual table, unlike a DataTable that permanently stores information about column cell relations, we must resolve column relations between the sub-set at select time. This involves asking the tables parent(s) for a scheme to describe relations in a sub-set.
| Modifier and Type | Field | Description |
|---|---|---|
protected IntegerVector[] |
row_list |
Array of IntegerVectors that represent the rows taken from the given
parents.
|
column_filter, column_scheme, column_table, reference_listDEBUG_QUERY| Modifier | Constructor | Description |
|---|---|---|
protected |
VirtualTable() |
| Modifier and Type | Method | Description |
|---|---|---|
protected IntegerVector[] |
getReferenceRows() |
Returns the list of IntegerVector that represents the rows that this
VirtualTable references.
|
int |
getRowCount() |
Returns the number of rows stored in the table.
|
protected void |
init(Table[] tables) |
Helper function for the constructor.
|
protected void |
resolveAllRowsForTableAt(IntegerVector row_set,
int table_num) |
Given an IntegerVector that represents a list of pointers to rows in this
table, this resolves the rows to row indexes in the given parent table.
|
protected int |
resolveRowForTableAt(int row_number,
int table_num) |
Given a row and a table index (to a parent reference table), this will
return the row index in the given parent table for the given row.
|
findFieldName, getCellContents, getColumnCount, getDatabase, getDataTableDef, getReferenceTables, getResolvedVariable, hasRootsLocked, lockRoot, printGraph, rowEnumeration, unlockRootclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitall, allColumnMatchesValue, any, columnContainsCell, columnContainsValue, columnMatchesValue, columnMerge, compareCells, Debug, distinct, distinct, dumpTo, emptySelect, exhaustiveSelect, fastFindFieldName, getColumnDefAt, getColumnScheme, getFirstCellContent, getFirstCellContent, getLastCellContent, getLastCellContent, getSingleCellContent, getSingleCellContent, getSystem, getTableAccessState, getTTypeForColumn, getTTypeForColumn, join, orderByColumn, orderByColumn, orderByColumn, orderByColumns, orderedRowList, outside, rangeSelect, selectAll, selectAll, selectFirst, selectLast, selectRange, selectRest, simpleJoin, simpleSelect, singleRowSelect, toMap, toString, unionprotected IntegerVector[] row_list
protected void init(Table[] tables)
init in class JoinedTableprotected IntegerVector[] getReferenceRows()
public int getRowCount()
getRowCount in interface TableDataSourcegetRowCount in class Tableprotected int resolveRowForTableAt(int row_number,
int table_num)
JoinedTableresolveRowForTableAt in class JoinedTableprotected void resolveAllRowsForTableAt(IntegerVector row_set, int table_num)
JoinedTableresolveAllRowsForTableAt in class JoinedTableCopyright © 2018. All rights reserved.