package eu.leads.processor.sql;
import java.util.Collection;
public interface Plan {
public void setOutput(PlanNode node);
public PlanNode getOutput();
public void addSource(PlanNode node);
public void addTo(String node, Plan subPlan) throws Exception;
public void addTo(String node, PlanNode subnode) throws Exception;
public void addAfter();
public void addAfterCurrent(PlanNode node) throws Exception;
public void addAfterCurrent();
public void addToCurrent(PlanNode node) throws Exception;
public void addToCurrent();
public void merge(Plan extracted) throws Exception;
public Collection<PlanNode> getNodes();
public PlanNode getCurrent();
public void setCurrent(String nodeId) throws Exception;
public void setCurrent(PlanNode node) throws Exception;
public PlanNode getNode(String nodeId);
public PlanNode createNode();
public Collection<String> getSources();
public void computeSources();
}