|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sf.farrago.namespace.impl.MedAbstractColumnMetadata
public abstract class MedAbstractColumnMetadata
MedAbstractColumnMetadata is a base class that provides common logic for implementing certain metadata queries that relate to columns. Other classes should derive from this class to provide implementations specific to different data wrappers.
Constructor Summary | |
---|---|
MedAbstractColumnMetadata()
|
Method Summary | |
---|---|
private void |
addKeyCols(RelNode rel,
FarragoRepos repos,
List<FemAbstractColumn> keyCols,
boolean checkNulls,
Set<BitSet> keyList)
Forms bitmaps representing the columns in a constraint and adds them to a set |
Boolean |
areColumnsUnique(RelNode rel,
BitSet columns,
FarragoRepos repos)
Deprecated. |
Boolean |
areColumnsUnique(RelNode rel,
BitSet columns,
FarragoRepos repos,
boolean ignoreNulls)
|
static Boolean |
areColumnsUniqueForKeys(Set<BitSet> uniqueColSets,
BitSet columns)
|
Double |
getDistinctRowCount(RelNode rel,
BitSet groupKey,
RexNode predicate)
|
Double |
getPopulationSize(RelNode rel,
BitSet groupKey)
|
Set<BitSet> |
getUniqueKeys(RelNode rel,
FarragoRepos repos)
Deprecated. |
Set<BitSet> |
getUniqueKeys(RelNode rel,
FarragoRepos repos,
boolean ignoreNulls)
|
protected abstract int |
mapColumnToField(RelNode rel,
FemAbstractColumn keyCol)
Maps a FemAbstractColumn to its corresponding field reference in the RelNode. |
protected abstract FemAbstractColumn |
mapFieldToColumn(RelNode rel,
int fieldNo)
Maps a field reference to its underlying FemAbstractColumn |
protected abstract int |
mapFieldToColumnOrdinal(RelNode rel,
int fieldNo)
Maps a field reference to the underlying column ordinal corresponding to the FemAbstractColumn representing the column. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MedAbstractColumnMetadata()
Method Detail |
---|
public Set<BitSet> getUniqueKeys(RelNode rel, FarragoRepos repos)
public Set<BitSet> getUniqueKeys(RelNode rel, FarragoRepos repos, boolean ignoreNulls)
private void addKeyCols(RelNode rel, FarragoRepos repos, List<FemAbstractColumn> keyCols, boolean checkNulls, Set<BitSet> keyList)
rel
- RelNode that the constraint belongs torepos
- repositorykeyCols
- list of columns that make up a constraintcheckNulls
- if true, don't add the columns of the constraint if the
columns allow nullskeyList
- the set where the bitmaps will be addedprotected abstract int mapColumnToField(RelNode rel, FemAbstractColumn keyCol)
rel
- RelNode corresponding to the columnkeyCol
- the column whose field ordinal will be returned
public Boolean areColumnsUnique(RelNode rel, BitSet columns, FarragoRepos repos)
public Boolean areColumnsUnique(RelNode rel, BitSet columns, FarragoRepos repos, boolean ignoreNulls)
public static Boolean areColumnsUniqueForKeys(Set<BitSet> uniqueColSets, BitSet columns)
public Double getPopulationSize(RelNode rel, BitSet groupKey)
protected abstract int mapFieldToColumnOrdinal(RelNode rel, int fieldNo)
rel
- RelNode corresponding to the columnfieldNo
- the ordinal of the field reference
public Double getDistinctRowCount(RelNode rel, BitSet groupKey, RexNode predicate)
protected abstract FemAbstractColumn mapFieldToColumn(RelNode rel, int fieldNo)
rel
- RelNode corresponding to the fieldfieldNo
- the ordinal of the field reference
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |