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

Moved PipeFactoryRegistry to AnalysisConfiguration

parent 8d35f40d
No related branches found
No related tags found
No related merge requests found
......@@ -3,8 +3,12 @@ package teetime.framework;
import java.util.LinkedList;
import java.util.List;
import teetime.framework.pipe.PipeFactoryRegistry;
public class AnalysisConfiguration {
protected static final PipeFactoryRegistry PIPE_FACTORY_REGISTRY = PipeFactoryRegistry.INSTANCE;
private final List<HeadStage> consumerStages = new LinkedList<HeadStage>();
private final List<HeadStage> finiteProducerStages = new LinkedList<HeadStage>();
private final List<HeadStage> infiniteProducerStages = new LinkedList<HeadStage>();
......
......@@ -2,20 +2,15 @@ package teetime.examples.loopStage;
import teetime.framework.AnalysisConfiguration;
import teetime.framework.pipe.IPipeFactory;
import teetime.framework.pipe.PipeFactoryRegistry;
import teetime.framework.pipe.PipeFactoryRegistry.PipeOrdering;
import teetime.framework.pipe.PipeFactoryRegistry.ThreadCommunication;
import teetime.examples.loopStage.Countdown;
public class LoopStageAnalysisConfiguration extends AnalysisConfiguration {
private final PipeFactoryRegistry pipeFactory = PipeFactoryRegistry.INSTANCE;
public LoopStageAnalysisConfiguration() {
Countdown countdown = new Countdown(10);
IPipeFactory factory = this.pipeFactory.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.QUEUE_BASED, true);
IPipeFactory factory = PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.QUEUE_BASED, true);
factory.create(countdown.getNewCountdownOutputPort(), countdown.getCountdownInputPort());
this.getFiniteProducerStages().add(countdown);
......
......@@ -21,7 +21,6 @@ import java.util.List;
import teetime.framework.AnalysisConfiguration;
import teetime.framework.HeadStage;
import teetime.framework.pipe.PipeFactoryRegistry;
import teetime.framework.pipe.PipeFactoryRegistry.PipeOrdering;
import teetime.framework.pipe.PipeFactoryRegistry.ThreadCommunication;
import teetime.stage.CollectorSink;
......@@ -39,7 +38,6 @@ import kieker.common.record.IMonitoringRecord;
public class RecordReaderConfiguration extends AnalysisConfiguration {
private final List<IMonitoringRecord> elementCollection = new LinkedList<IMonitoringRecord>();
private final PipeFactoryRegistry pipeFactory = PipeFactoryRegistry.INSTANCE;
public RecordReaderConfiguration() {
this.buildConfiguration();
......@@ -59,10 +57,10 @@ public class RecordReaderConfiguration extends AnalysisConfiguration {
CollectorSink<IMonitoringRecord> collector = new CollectorSink<IMonitoringRecord>(this.elementCollection);
// connect stages
this.pipeFactory.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(initialElementProducer.getOutputPort(), dir2RecordsFilter.getInputPort());
this.pipeFactory.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(dir2RecordsFilter.getOutputPort(), collector.getInputPort());
return initialElementProducer;
......
......@@ -3,7 +3,6 @@ package teetime.examples.cipher;
import java.io.File;
import teetime.framework.AnalysisConfiguration;
import teetime.framework.pipe.PipeFactoryRegistry;
import teetime.framework.pipe.PipeFactoryRegistry.PipeOrdering;
import teetime.framework.pipe.PipeFactoryRegistry.ThreadCommunication;
import teetime.stage.CipherByteArray;
......@@ -16,8 +15,6 @@ import teetime.stage.io.File2ByteArray;
public class CipherConfiguration extends AnalysisConfiguration {
private static final PipeFactoryRegistry pipeFactoryRegistry = PipeFactoryRegistry.INSTANCE;
private final File input, output;
private final String password;
......@@ -34,17 +31,17 @@ public class CipherConfiguration extends AnalysisConfiguration {
CipherByteArray decrypt = new CipherByteArray(this.password, CipherMode.DECRYPT);
ByteArrayFileWriter writer = new ByteArrayFileWriter(output);
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(init.getOutputPort(), f2b.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(f2b.getOutputPort(), enc.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(enc.getOutputPort(), comp.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(comp.getOutputPort(), decomp.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(decomp.getOutputPort(), decrypt.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false)
.create(decrypt.getOutputPort(), writer.getInputPort());
this.getFiniteProducerStages().add(init);
......
......@@ -3,7 +3,6 @@ package teetime.examples.tokenizer;
import java.io.File;
import teetime.framework.AnalysisConfiguration;
import teetime.framework.pipe.PipeFactoryRegistry;
import teetime.framework.pipe.PipeFactoryRegistry.PipeOrdering;
import teetime.framework.pipe.PipeFactoryRegistry.ThreadCommunication;
import teetime.stage.ByteArray2String;
......@@ -18,7 +17,6 @@ import teetime.stage.io.File2ByteArray;
public class TokenizerConfiguration extends AnalysisConfiguration {
private static final PipeFactoryRegistry pipeFactoryRegistry = PipeFactoryRegistry.INSTANCE;
private final File input;
private final String password;
private final Counter<String> counter;
......@@ -35,17 +33,17 @@ public class TokenizerConfiguration extends AnalysisConfiguration {
Tokenizer tokenizer = new Tokenizer(" ");
counter = new Counter<String>();
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
init.getOutputPort(), f2b.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
f2b.getOutputPort(), decomp.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
decomp.getOutputPort(), decrypt.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
decrypt.getOutputPort(), b2s.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
b2s.getOutputPort(), tokenizer.getInputPort());
pipeFactoryRegistry.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
PIPE_FACTORY_REGISTRY.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false).create(
tokenizer.getOutputPort(), counter.getInputPort());
this.getFiniteProducerStages().add(init);
......
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