net.sf.farrago.namespace.mdr
Class MedMdrClassExtent

java.lang.Object
  extended by org.eigenbase.relopt.RelOptAbstractTable
      extended by net.sf.farrago.namespace.impl.MedAbstractColumnSet
          extended by net.sf.farrago.namespace.mdr.MedMdrClassExtent
All Implemented Interfaces:
FarragoMedColumnSet, FarragoQueryColumnSet, RelOptTable, SqlValidatorTable

 class MedMdrClassExtent
extends MedAbstractColumnSet

MedMdrClassExtent represents the relational mapping of a class's extent (stored by MDR) into a queryable set of rows.

Version:
$Id: //open/dev/farrago/src/net/sf/farrago/namespace/mdr/MedMdrClassExtent.java#13 $
Author:
John V. Sichi

Field Summary
(package private)  MedMdrNameDirectory directory
           
(package private)  RefClass refClass
           
 
Fields inherited from class org.eigenbase.relopt.RelOptAbstractTable
name, rowType, schema
 
Constructor Summary
MedMdrClassExtent(MedMdrNameDirectory directory, FarragoTypeFactory typeFactory, RefClass refClass, String[] foreignName, String[] localName, RelDataType rowType)
           
 
Method Summary
 double getRowCount()
          Returns an estimate of the number of rows in the table.
 RelNode toRel(RelOptCluster cluster, RelOptConnection connection)
          Converts this table into a relational expression.
 
Methods inherited from class net.sf.farrago.namespace.impl.MedAbstractColumnSet
getAllowedAccess, getColumnPropertyMap, getCwmColumnSet, getForeignName, getLocalName, getMonotonicity, getPreparingStmt, getQualifiedName, getTableProperties, setAllowedAccess, setCwmColumnSet, setPreparingStmt, toLenientRel, toUdxRel
 
Methods inherited from class org.eigenbase.relopt.RelOptAbstractTable
getCollationList, getName, getRelOptSchema, getRowType, setRowType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eigenbase.relopt.RelOptTable
getCollationList, getRelOptSchema, getRowType
 
Methods inherited from interface org.eigenbase.sql.validate.SqlValidatorTable
getRowType
 

Field Detail

directory

final MedMdrNameDirectory directory

refClass

final RefClass refClass
Constructor Detail

MedMdrClassExtent

MedMdrClassExtent(MedMdrNameDirectory directory,
                  FarragoTypeFactory typeFactory,
                  RefClass refClass,
                  String[] foreignName,
                  String[] localName,
                  RelDataType rowType)
Method Detail

getRowCount

public double getRowCount()
Description copied from interface: RelOptTable
Returns an estimate of the number of rows in the table.

Specified by:
getRowCount in interface RelOptTable
Overrides:
getRowCount in class RelOptAbstractTable

toRel

public RelNode toRel(RelOptCluster cluster,
                     RelOptConnection connection)
Description copied from interface: RelOptTable
Converts this table into a relational expression.

The planner calls this method to convert a table into an initial relational expression, generally something abstract, such as a TableAccessRel, then optimizes this expression by applying rules to transform it into more efficient access methods for this table.

Parameters:
cluster - the cluster the relational expression will belong to
connection - the parse tree of the expression which evaluates to a connection object