org.eigenbase.relopt
Class RelOptCluster

java.lang.Object
  extended by org.eigenbase.relopt.RelOptCluster

public class RelOptCluster
extends Object

A RelOptCluster is a collection of relational expressions which have the same environment.

See the comment against net.sf.saffron.oj.xlat.QueryInfo on why you should put fields in that class, not this one.

Since:
27 September, 2001
Version:
$Id: //open/dev/farrago/src/org/eigenbase/relopt/RelOptCluster.java#15 $
Author:
jhyde

Field Summary
private  Environment env
           
private  RelMetadataProvider metadataProvider
           
private  RexNode originalExpression
           
private  RelOptPlanner planner
           
private  RelOptQuery query
           
private  RexBuilder rexBuilder
           
private  RelDataTypeFactory typeFactory
           
 
Constructor Summary
RelOptCluster(RelOptQuery query, Environment env, RelOptPlanner planner, RelDataTypeFactory typeFactory, RexBuilder rexBuilder)
          Creates a cluster.
 
Method Summary
 Environment getEnv()
           
 RelMetadataProvider getMetadataProvider()
           
 RexNode getOriginalExpression()
           
 RelOptPlanner getPlanner()
           
 RelOptQuery getQuery()
           
 RexBuilder getRexBuilder()
           
 RelDataTypeFactory getTypeFactory()
           
 void setMetadataProvider(RelMetadataProvider metadataProvider)
          Overrides the default metadata provider for this cluster.
 void setOriginalExpression(RexNode originalExpression)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

env

private final Environment env

typeFactory

private final RelDataTypeFactory typeFactory

query

private final RelOptQuery query

planner

private final RelOptPlanner planner

originalExpression

private RexNode originalExpression

rexBuilder

private final RexBuilder rexBuilder

metadataProvider

private RelMetadataProvider metadataProvider
Constructor Detail

RelOptCluster

RelOptCluster(RelOptQuery query,
              Environment env,
              RelOptPlanner planner,
              RelDataTypeFactory typeFactory,
              RexBuilder rexBuilder)
Creates a cluster.

"Precondition:"
planner != null, typeFactory != null
Method Detail

getEnv

public Environment getEnv()

getQuery

public RelOptQuery getQuery()

getOriginalExpression

public RexNode getOriginalExpression()

setOriginalExpression

public void setOriginalExpression(RexNode originalExpression)

getPlanner

public RelOptPlanner getPlanner()

getTypeFactory

public RelDataTypeFactory getTypeFactory()

getRexBuilder

public RexBuilder getRexBuilder()

getMetadataProvider

public RelMetadataProvider getMetadataProvider()

setMetadataProvider

public void setMetadataProvider(RelMetadataProvider metadataProvider)
Overrides the default metadata provider for this cluster.

Parameters:
metadataProvider - custom provider