org.apache.pig.newplan
Class PlanWalker
java.lang.Object
org.apache.pig.newplan.PlanWalker
- Direct Known Subclasses:
- DependencyOrderWalker, DepthFirstWalker, PreOrderDepthFirstWalker, ReverseDependencyOrderWalker, ReverseDependencyOrderWalkerWOSeenChk
public abstract class PlanWalker
- extends Object
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
plan
protected OperatorPlan plan
PlanWalker
public PlanWalker(OperatorPlan plan)
- Parameters:
plan
- Plan for this walker to traverse.
walk
public abstract void walk(PlanVisitor visitor)
throws FrontendException
- Begin traversing the graph.
- Parameters:
visitor
- Visitor this walker is being used by. This can't be set in
the constructor because the visitor is constructing this class, and does
not yet have a 'this' pointer to send as an argument.
- Throws:
VisitorException
- if an error is encountered while walking.
FrontendException
spawnChildWalker
public abstract PlanWalker spawnChildWalker(OperatorPlan plan)
- Return a new instance of this same type of walker for a subplan.
When this method is called the same type of walker with the
provided plan set as the plan, must be returned. This can then be
used to walk subplans. This allows abstract visitors to clone
walkers without knowning the type of walker their subclasses used.
- Parameters:
plan
- Plan for the new walker.
- Returns:
- Instance of the same type of walker with plan set to plan.
getPlan
public OperatorPlan getPlan()
setPlan
public void setPlan(OperatorPlan plan)
- Set the plan for this walker to operate on.
- Parameters:
plan
- to walk
Copyright © 2012 The Apache Software Foundation