Package mondrian.rolap.aggmatcher
Class AggStar.Table
java.lang.Object
mondrian.rolap.aggmatcher.AggStar.Table
- Direct Known Subclasses:
AggStar.DimTable,AggStar.FactTable
- Enclosing class:
- AggStar
Base Table class for the FactTable and DimTable classes.
This class parallels the RolapStar.Table class.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclassBase class for Level and Measure classesclassThe query join condition between a base table and this table (the table that owns the join condition).final classThis class is used for holding dimension level information. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected List<AggStar.DimTable>protected final List<AggStar.Table.Level> -
Method Summary
Modifier and TypeMethodDescriptionprotected voidaddLevel(AggStar.Table.Level level) Add a Level column.protected voidaddTable(AggStar.DimTable child) Add a child DimTable table.voidThis is a copy of the code found in RolapStar used to generate an SQL query.protected voidconvertChildren(RolapStar.Table rTable) Convert the child tables of a RolapStar.Table into child AggStar.DimTable tables.protected voidconvertColumns(RolapStar.Table rTable) Convert a RolapStar.Table table's columns into AggStar.Table.Level columns.protected AggStar.DimTableconvertTable(RolapStar.Table rTable, JdbcSchema.Table.Column.Usage usage) Converts aRolapStar.Tableinto aAggStar.DimTableas well as converting all columns and child tables.findDescendant(String name) Find descendant of fact table with given name or return null.protected AggStarGet this table's enclosing AggStar.Returns a list of childAggStar.Tableobjects.abstract AggStar.Table.JoinConditionReturns all level columns.getName()Return the name of the table in the database.abstract AggStar.TableGet the parent table (returns null if this table is a FactTable).protected SqlQueryGet a SqlQuery object.booleanReturn true if this table has one or more child tables.abstract booleanReturn true if this table has a join condition (only DimTables have join conditions, FactTable instances do not).booleanReturn true if table has levels.abstract booleanReturn true if this table has a parent table (FactTable instances do not have parent tables, all other do).abstract voidprint(PrintWriter pw, String prefix) toString()
-
Field Details
-
levels
-
children
-
-
Method Details
-
getName
Return the name of the table in the database. -
hasParent
public abstract boolean hasParent()Return true if this table has a parent table (FactTable instances do not have parent tables, all other do). -
getParent
Get the parent table (returns null if this table is a FactTable). -
hasJoinCondition
public abstract boolean hasJoinCondition()Return true if this table has a join condition (only DimTables have join conditions, FactTable instances do not). -
getJoinCondition
-
getRelation
-
getAggStar
Get this table's enclosing AggStar. -
getSqlQuery
Get a SqlQuery object. -
addLevel
Add a Level column. -
getLevels
Returns all level columns. -
hasLevels
public boolean hasLevels()Return true if table has levels. -
addTable
Add a child DimTable table. -
getChildTables
Returns a list of childAggStar.Tableobjects. -
findDescendant
Find descendant of fact table with given name or return null.- Parameters:
name- the child table name (alias).- Returns:
- the child table or null.
-
hasChildren
public boolean hasChildren()Return true if this table has one or more child tables. -
convertTable
protected AggStar.DimTable convertTable(RolapStar.Table rTable, JdbcSchema.Table.Column.Usage usage) Converts aRolapStar.Tableinto aAggStar.DimTableas well as converting all columns and child tables. If the rightJoinConditionColumnName parameter is null, then the table's namd and the rTable parameter's condition left condition's column name are used to form the join condition's left expression. -
convertColumns
Convert a RolapStar.Table table's columns into AggStar.Table.Level columns. -
convertChildren
Convert the child tables of a RolapStar.Table into child AggStar.DimTable tables. -
addToFrom
This is a copy of the code found in RolapStar used to generate an SQL query. -
toString
-
print
-