public abstract static class ExplicitRules.TableDef extends Object
Modifier and Type | Field and Description |
---|---|
protected ExplicitRules.Group |
aggGroup |
protected int |
approxRowCount |
protected String |
factCountName |
protected int |
id |
protected boolean |
ignoreCase |
protected List<String> |
ignoreColumnNames |
protected Map<String,String> |
measuresFactCount |
Modifier | Constructor and Description |
---|---|
protected |
TableDef(boolean ignoreCase,
ExplicitRules.Group aggGroup) |
Modifier and Type | Method and Description |
---|---|
protected void |
add(mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Level level)
Adds a Level.
|
protected void |
add(mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Measure measure)
Adds a Measure.
|
protected void |
addFK(MondrianDef.AggForeignKey fk)
Add foreign key mapping entry (maps from fact table foreign key
column name to aggregate table foreign key column name).
|
protected void |
addIgnoreColumnName(String ignoreName)
Adds the name of an aggregate table column that is to be ignored.
|
static void |
addLevelTo(ExplicitRules.TableDef tableDef,
String name,
String columnName,
boolean collapsed,
String ordinalColumn,
String captionColumn,
MondrianDef.AggLevelProperty[] properties) |
static void |
addMeasureTo(ExplicitRules.TableDef tableDef,
String name,
String column,
String rollupType) |
boolean |
columnsOK(RolapStar star,
JdbcSchema.Table dbFactTable,
JdbcSchema.Table dbTable,
MessageRecorder msgRecorder)
Checks that ALL of the columns in the dbTable have a mapping in the
tableDef.
|
ExplicitRules.Group |
getAggGroup()
Get the Group with which is a part.
|
protected String |
getAggregateFK(String baseFK)
Get the name of the aggregate table's foreign key column that matches
the base fact table's foreign key column or return null.
|
int |
getApproxRowCount()
Returns an approximate number of rows in this table.
|
protected Recognizer.Matcher |
getFactCountMatcher()
Get Matcher for the fact count column.
|
protected String |
getFactCountName()
Get the name of the fact count column.
|
protected Iterator<String> |
getIgnoreColumnNames()
Get an Iterator over all ignore column name entries.
|
protected Recognizer.Matcher |
getIgnoreMatcher()
Get Matcher for ignore columns.
|
List<mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Level> |
getLevels()
Gets all level mappings.
|
protected Recognizer.Matcher |
getMeasureFactCountMatcher() |
List<mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Measure> |
getMeasures()
Gets all level mappings.
|
Map<String,String> |
getMeasuresFactCount() |
RolapStar |
getStar()
Get the RolapStar associated with this cube.
|
boolean |
isIgnoreCase()
Return true if this name/pattern matching ignores case.
|
abstract boolean |
matches(String tableName)
Does the TableDef match a table with name tableName.
|
void |
print(PrintWriter pw,
String prefix) |
protected void |
setFactCountName(String factCountName)
Set the name of the fact count column.
|
String |
toString() |
void |
validate(MessageRecorder msgRecorder)
Validate the Levels and Measures, also make sure each definition
is different, both name and column.
|
protected final int id
protected final boolean ignoreCase
protected final ExplicitRules.Group aggGroup
protected String factCountName
protected int approxRowCount
protected TableDef(boolean ignoreCase, ExplicitRules.Group aggGroup)
public static void addLevelTo(ExplicitRules.TableDef tableDef, String name, String columnName, boolean collapsed, String ordinalColumn, String captionColumn, MondrianDef.AggLevelProperty[] properties)
public static void addMeasureTo(ExplicitRules.TableDef tableDef, String name, String column, String rollupType)
public int getApproxRowCount()
public boolean isIgnoreCase()
public RolapStar getStar()
public ExplicitRules.Group getAggGroup()
protected String getFactCountName()
protected void setFactCountName(String factCountName)
protected Iterator<String> getIgnoreColumnNames()
public List<mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Level> getLevels()
public List<mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Measure> getMeasures()
protected Recognizer.Matcher getIgnoreMatcher()
protected Recognizer.Matcher getFactCountMatcher()
protected Recognizer.Matcher getMeasureFactCountMatcher()
public boolean columnsOK(RolapStar star, JdbcSchema.Table dbFactTable, JdbcSchema.Table dbTable, MessageRecorder msgRecorder)
It is an error if there is a column that does not have a mapping.
protected void addIgnoreColumnName(String ignoreName)
protected void addFK(MondrianDef.AggForeignKey fk)
protected String getAggregateFK(String baseFK)
protected void add(mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Level level)
protected void add(mondrian.rolap.aggmatcher.ExplicitRules.TableDef.Measure measure)
public abstract boolean matches(String tableName)
public void validate(MessageRecorder msgRecorder)
public void print(PrintWriter pw, String prefix)
Copyright © 2020 Hitachi Vantara. All rights reserved.