Skip to content
Snippets Groups Projects
Commit 392ce9c5 authored by Christian Wulf's avatar Christian Wulf
Browse files

renamed IStageVisitor to IPipeVisitor;

minor refactorings in Traversor
parent f469e582
No related branches found
No related tags found
No related merge requests found
#FindBugs User Preferences
#Thu Apr 16 10:58:21 CEST 2015
#Mon Apr 20 12:33:48 CEST 2015
detector_threshold=3
effort=max
excludefilter0=.fbExcludeFilterFile|true
......
......@@ -320,7 +320,7 @@ public final class Analysis<T extends AnalysisConfiguration> implements Uncaught
}
private Set<Stage> traverseIntraStages(final Stage stage) {
final Traversor traversor = new Traversor(new IntraStageVisitor());
final Traversor traversor = new Traversor(new IntraStageCollector());
traversor.traverse(stage);
return traversor.getVisitedStage();
}
......
......@@ -17,12 +17,12 @@ package teetime.framework;
import teetime.framework.pipe.IPipe;
public interface IStageVisitor {
public interface IPipeVisitor {
public enum VisitorBehavior {
CONTINUE, STOP
}
VisitorBehavior visit(IPipe inputPipe);
VisitorBehavior visit(IPipe outputPipe);
}
......@@ -17,13 +17,13 @@ package teetime.framework;
import teetime.framework.pipe.IPipe;
public class IntraStageVisitor implements IStageVisitor {
public class IntraStageCollector implements IPipeVisitor {
public IntraStageVisitor() {}
public IntraStageCollector() {}
@Override
public VisitorBehavior visit(final IPipe inputPipe) {
if (inputPipe instanceof AbstractIntraThreadPipe) {
public VisitorBehavior visit(final IPipe outputPipe) {
if (outputPipe instanceof AbstractIntraThreadPipe) {
return VisitorBehavior.CONTINUE;
}
return VisitorBehavior.STOP;
......
......@@ -18,20 +18,19 @@ package teetime.framework;
import java.util.HashSet;
import java.util.Set;
import teetime.framework.IStageVisitor.VisitorBehavior;
import teetime.framework.IPipeVisitor.VisitorBehavior;
import teetime.framework.pipe.IPipe;
public class Traversor {
private final IStageVisitor stageVisitor;
private final IPipeVisitor pipeVisitor;
private final Set<Stage> visitedStage = new HashSet<Stage>();
public Traversor(final IStageVisitor stageVisitor) {
this.stageVisitor = stageVisitor;
public Traversor(final IPipeVisitor pipeVisitor) {
this.pipeVisitor = pipeVisitor;
}
public void traverse(final Stage stage) {
if (!visitedStage.add(stage)) {
return;
}
......@@ -39,7 +38,7 @@ public class Traversor {
OutputPort<?>[] outputPorts = stage.getOutputPorts();
for (OutputPort<?> outputPort : outputPorts) {
IPipe pipe = outputPort.getPipe();
if (null != pipe && stageVisitor.visit(pipe) == VisitorBehavior.CONTINUE) {
if (null != pipe && pipeVisitor.visit(pipe) == VisitorBehavior.CONTINUE) {
Stage owningStage = pipe.getTargetPort().getOwningStage();
traverse(owningStage); // recursive call
}
......
......@@ -38,7 +38,7 @@ import teetime.stage.util.CountingMap;
public class TraversorTest {
private final Traversor traversor = new Traversor(new IntraStageVisitor());
private final Traversor traversor = new Traversor(new IntraStageCollector());
@Test
public void traverse() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment