org.teiid.query.optimizer.relational
Class RelationalPlanner

java.lang.Object
  extended by org.teiid.query.optimizer.relational.RelationalPlanner

public class RelationalPlanner
extends java.lang.Object

This class generates a relational plan for query execution. The output of this class is a PlanNode object - this object then becomes the input to PlanToProcessConverter to produce a RelationalPlan.


Field Summary
static java.lang.String MAT_PREFIX
           
 
Constructor Summary
RelationalPlanner()
           
 
Method Summary
static RuleStack buildRules(PlanHints hints)
           
static Query createMatViewQuery(java.lang.Object matMetadataId, java.lang.String matTableName, java.util.List<? extends SelectSymbol> select, boolean isGlobal)
           
static PlanNode createSelectNode(Criteria crit, boolean isHaving)
           
 PlanNode generatePlan(Command cmd)
           
static java.lang.Object getGlobalTempTableMetadataId(GroupSymbol table, java.lang.String matTableName, CommandContext context, QueryMetadataInterface metadata, AnalysisRecord analysisRecord)
           
 void initialize(Command command, IDGenerator idGenerator, QueryMetadataInterface metadata, CapabilitiesFinder capFinder, AnalysisRecord analysisRecord, CommandContext context)
           
static boolean isNoCacheGroup(QueryMetadataInterface metadata, java.lang.Object metadataID, Option option)
           
 ProcessorPlan optimize(Command command)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

MAT_PREFIX

public static final java.lang.String MAT_PREFIX
See Also:
Constant Field Values
Constructor Detail

RelationalPlanner

public RelationalPlanner()
Method Detail

optimize

public ProcessorPlan optimize(Command command)
                       throws QueryPlannerException,
                              QueryMetadataException,
                              TeiidComponentException
Throws:
QueryPlannerException
QueryMetadataException
TeiidComponentException

initialize

public void initialize(Command command,
                       IDGenerator idGenerator,
                       QueryMetadataInterface metadata,
                       CapabilitiesFinder capFinder,
                       AnalysisRecord analysisRecord,
                       CommandContext context)

buildRules

public static RuleStack buildRules(PlanHints hints)

generatePlan

public PlanNode generatePlan(Command cmd)
                      throws TeiidComponentException,
                             TeiidProcessingException
Throws:
TeiidComponentException
TeiidProcessingException

createSelectNode

public static PlanNode createSelectNode(Criteria crit,
                                        boolean isHaving)

createMatViewQuery

public static Query createMatViewQuery(java.lang.Object matMetadataId,
                                       java.lang.String matTableName,
                                       java.util.List<? extends SelectSymbol> select,
                                       boolean isGlobal)

getGlobalTempTableMetadataId

public static java.lang.Object getGlobalTempTableMetadataId(GroupSymbol table,
                                                            java.lang.String matTableName,
                                                            CommandContext context,
                                                            QueryMetadataInterface metadata,
                                                            AnalysisRecord analysisRecord)
                                                     throws QueryMetadataException,
                                                            TeiidComponentException,
                                                            QueryResolverException,
                                                            QueryValidatorException
Throws:
QueryMetadataException
TeiidComponentException
QueryResolverException
QueryValidatorException

isNoCacheGroup

public static boolean isNoCacheGroup(QueryMetadataInterface metadata,
                                     java.lang.Object metadataID,
                                     Option option)
                              throws QueryMetadataException,
                                     TeiidComponentException
Throws:
QueryMetadataException
TeiidComponentException


Copyright © 2010. All Rights Reserved.