vishnu.model.algebra.optimizer
Class ParentVisitorTranslationStage

java.lang.Object
  extended by vishnu.model.algebra.optimizer.AbstractTranslationStage
      extended by vishnu.model.algebra.optimizer.ParentVisitorTranslationStage
All Implemented Interfaces:
TranslationStage, VisitorTranslationStage
Direct Known Subclasses:
AttributeInferringStage, ColumnInferringStage

public abstract class ParentVisitorTranslationStage
extends AbstractTranslationStage
implements VisitorTranslationStage

notes: this stage only works over a relation get from a CannonicalPlanner since it doesn't expect projections above the root relation. TODO refactor this class and VisitorTranslationStage

 

Constructor Summary
ParentVisitorTranslationStage()
           
 
Method Summary
 Relation perform(Relation r, UserContext uc)
          Contract: subclasses should return super.perform(result)
 Relation visitAll(Relation r, UserContext uc)
          notes: visits first childs and then parent.
 
Methods inherited from class vishnu.model.algebra.optimizer.AbstractTranslationStage
attach
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface vishnu.model.algebra.optimizer.VisitorTranslationStage
visit
 

Constructor Detail

ParentVisitorTranslationStage

public ParentVisitorTranslationStage()
Method Detail

perform

public Relation perform(Relation r,
                        UserContext uc)
Description copied from class: AbstractTranslationStage
Contract: subclasses should return super.perform(result)

Specified by:
perform in interface TranslationStage
Overrides:
perform in class AbstractTranslationStage

visitAll

public Relation visitAll(Relation r,
                         UserContext uc)
notes: visits first childs and then parent.