com.metamatrix.query.optimizer.relational.rules
Class RuleRemoveOptionalJoins

java.lang.Object
  extended by com.metamatrix.query.optimizer.relational.rules.RuleRemoveOptionalJoins
All Implemented Interfaces:
OptimizerRule

public class RuleRemoveOptionalJoins
extends java.lang.Object
implements OptimizerRule

Removes optional join nodes if elements originating from that join are not used in the top level project symbols.


Constructor Summary
RuleRemoveOptionalJoins()
           
 
Method Summary
 PlanNode execute(PlanNode plan, QueryMetadataInterface metadata, CapabilitiesFinder capFinder, RuleStack rules, AnalysisRecord analysisRecord, CommandContext context)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RuleRemoveOptionalJoins

public RuleRemoveOptionalJoins()
Method Detail

execute

public PlanNode execute(PlanNode plan,
                        QueryMetadataInterface metadata,
                        CapabilitiesFinder capFinder,
                        RuleStack rules,
                        AnalysisRecord analysisRecord,
                        CommandContext context)
                 throws QueryPlannerException,
                        QueryMetadataException,
                        MetaMatrixComponentException
Specified by:
execute in interface OptimizerRule
Throws:
QueryPlannerException
QueryMetadataException
MetaMatrixComponentException

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object


Copyright © 2009. All Rights Reserved.