From 47aed75685d0963121fce5c880549fa80d741036 Mon Sep 17 00:00:00 2001 From: Christian Wulf <chw@informatik.uni-kiel.de> Date: Fri, 5 Dec 2014 18:22:32 +0100 Subject: [PATCH] moved StringBufferFilter; declared some stages as final; added EveryXthPrinter; removed logging from CollectorSink; moved id and logger from AbstractStage to Stage --- .../java/teetime/framework/AbstractStage.java | 37 ------------ src/main/java/teetime/framework/Stage.java | 28 ++++++++- .../java/teetime/stage/CollectorSink.java | 30 +++------- src/main/java/teetime/stage/Counter.java | 2 +- .../java/teetime/stage/EveryXthStage.java | 29 +++++++++ .../teetime/stage/FileExtensionSwitch.java | 7 ++- .../java/teetime/stage/InstanceCounter.java | 2 +- .../java/teetime/stage/InstanceOfFilter.java | 4 +- .../java/teetime/stage/IterableProducer.java | 2 +- src/main/java/teetime/stage/NoopFilter.java | 4 +- .../java/teetime/stage/ObjectProducer.java | 6 +- src/main/java/teetime/stage/Relay.java | 4 +- .../teetime/stage/StartTimestampFilter.java | 2 +- .../teetime/stage/StopTimestampFilter.java | 2 +- src/main/java/teetime/stage/ZipByteArray.java | 2 +- src/main/java/teetime/stage/basic/Delay.java | 2 +- src/main/java/teetime/stage/basic/Sink.java | 2 +- .../distributor/CopyByReferenceStrategy.java | 4 +- .../stage/basic/distributor/Distributor.java | 2 +- .../teetime/stage/basic/merger/Merger.java | 2 +- .../teetime/stage/io/EveryXthPrinter.java | 59 +++++++++++++++++++ .../teetime/stage/{ => string}/Tokenizer.java | 4 +- .../buffer}/StringBufferFilter.java | 8 +-- .../handler/AbstractDataTypeHandler.java | 4 +- .../buffer}/handler/StringHandler.java | 2 +- .../buffer}/util/KiekerHashMap.java | 2 +- .../java/teetime/framework/OldPipeline.java | 24 +------- .../tokenizer/TokenizerConfiguration.java | 2 +- 28 files changed, 161 insertions(+), 117 deletions(-) create mode 100644 src/main/java/teetime/stage/EveryXthStage.java create mode 100644 src/main/java/teetime/stage/io/EveryXthPrinter.java rename src/main/java/teetime/stage/{ => string}/Tokenizer.java (85%) rename src/main/java/teetime/stage/{stringBuffer => string/buffer}/StringBufferFilter.java (91%) rename src/main/java/teetime/stage/{stringBuffer => string/buffer}/handler/AbstractDataTypeHandler.java (93%) rename src/main/java/teetime/stage/{stringBuffer => string/buffer}/handler/StringHandler.java (96%) rename src/main/java/teetime/stage/{stringBuffer => string/buffer}/util/KiekerHashMap.java (99%) diff --git a/src/main/java/teetime/framework/AbstractStage.java b/src/main/java/teetime/framework/AbstractStage.java index b541b0aa..5bb58812 100644 --- a/src/main/java/teetime/framework/AbstractStage.java +++ b/src/main/java/teetime/framework/AbstractStage.java @@ -4,10 +4,6 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.List; import java.util.Set; -import java.util.UUID; - -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import teetime.framework.pipe.DummyPipe; import teetime.framework.pipe.IPipe; @@ -16,14 +12,6 @@ import teetime.framework.validation.InvalidPortConnection; public abstract class AbstractStage extends Stage { - private final String id; - /** - * A unique logger instance per stage instance - */ - protected final Logger logger; // NOPMD - - private Stage parentStage; - private final List<InputPort<?>> inputPortList = new ArrayList<InputPort<?>>(); private final List<OutputPort<?>> outputPortList = new ArrayList<OutputPort<?>>(); @@ -35,11 +23,6 @@ public abstract class AbstractStage extends Stage { private final Set<ISignal> triggeredSignals = new HashSet<ISignal>(); private boolean shouldTerminate; - public AbstractStage() { - this.id = UUID.randomUUID().toString(); // the id should only be represented by a UUID, not additionally by the class name - this.logger = LoggerFactory.getLogger(this.getClass().getName() + "(" + this.id + ")"); - } - private void connectUnconnectedOutputPorts() { for (OutputPort<?> outputPort : this.cachedOutputPorts) { if (null == outputPort.getPipe()) { // if port is unconnected @@ -57,21 +40,6 @@ public abstract class AbstractStage extends Stage { return this.cachedOutputPorts; } - @Override - public Stage getParentStage() { - return this.parentStage; - } - - @Override - public void setParentStage(final Stage parentStage, final int index) { - this.parentStage = parentStage; - } - - @Override - public String getId() { - return this.id; - } - /** * May not be invoked outside of IPipe implementations */ @@ -141,11 +109,6 @@ public abstract class AbstractStage extends Stage { } } - @Override - public String toString() { - return this.getClass().getName() + ": " + this.id; - } - @Override public void terminate() { this.shouldTerminate = true; diff --git a/src/main/java/teetime/framework/Stage.java b/src/main/java/teetime/framework/Stage.java index d490bc63..99f6c0b8 100644 --- a/src/main/java/teetime/framework/Stage.java +++ b/src/main/java/teetime/framework/Stage.java @@ -1,17 +1,39 @@ package teetime.framework; import java.util.List; +import java.util.UUID; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import teetime.framework.signal.ISignal; import teetime.framework.validation.InvalidPortConnection; public abstract class Stage { - public abstract String getId(); + private final String id; + /** + * A unique logger instance per stage instance + */ + protected final Logger logger; // NOPMD + + protected Stage() { + this.id = UUID.randomUUID().toString(); // the id should only be represented by a UUID, not additionally by the class name + this.logger = LoggerFactory.getLogger(this.getClass().getName() + "(" + this.id + ")"); + } + + public String getId() { + return this.id; + } - public abstract Stage getParentStage(); + @Override + public String toString() { + return this.getClass().getName() + ": " + this.getId(); + } - public abstract void setParentStage(Stage parentStage, int index); + // public abstract Stage getParentStage(); + // + // public abstract void setParentStage(Stage parentStage, int index); /** * diff --git a/src/main/java/teetime/stage/CollectorSink.java b/src/main/java/teetime/stage/CollectorSink.java index a18f597d..eb4f3a0c 100644 --- a/src/main/java/teetime/stage/CollectorSink.java +++ b/src/main/java/teetime/stage/CollectorSink.java @@ -15,6 +15,7 @@ ***************************************************************************/ package teetime.stage; +import java.util.ArrayList; import java.util.List; import teetime.framework.AbstractConsumerStage; @@ -24,39 +25,24 @@ import teetime.framework.AbstractConsumerStage; * * @since 1.0 */ -public class CollectorSink<T> extends AbstractConsumerStage<T> { +public final class CollectorSink<T> extends AbstractConsumerStage<T> { private final List<T> elements; - private final int threshold; - public CollectorSink(final List<T> list, final int threshold) { - this.elements = list; - this.threshold = threshold; + /** + * Creates a new {@link CollectorSink} with an {@link ArrayList}. + */ + public CollectorSink() { + this(new ArrayList<T>()); } public CollectorSink(final List<T> list) { - this(list, 100000); - } - - @Override - public void onTerminating() throws Exception { - logNumElements(); - super.onTerminating(); + this.elements = list; } @Override protected void execute(final T element) { this.elements.add(element); - - if ((this.elements.size() % this.threshold) == 0) { - logNumElements(); - } - } - - private void logNumElements() { - if (logger.isInfoEnabled()) { - logger.info("size: " + this.elements.size()); - } } } diff --git a/src/main/java/teetime/stage/Counter.java b/src/main/java/teetime/stage/Counter.java index 10632de7..0a9b1c88 100644 --- a/src/main/java/teetime/stage/Counter.java +++ b/src/main/java/teetime/stage/Counter.java @@ -12,7 +12,7 @@ public class Counter<T> extends AbstractConsumerStage<T> { @Override protected void execute(final T element) { this.numElementsPassed++; - // this.logger.debug("count: " + this.numElementsPassed); + outputPort.send(element); } diff --git a/src/main/java/teetime/stage/EveryXthStage.java b/src/main/java/teetime/stage/EveryXthStage.java new file mode 100644 index 00000000..3ff9319d --- /dev/null +++ b/src/main/java/teetime/stage/EveryXthStage.java @@ -0,0 +1,29 @@ +package teetime.stage; + +import teetime.framework.AbstractConsumerStage; +import teetime.framework.OutputPort; + +public class EveryXthStage<T> extends AbstractConsumerStage<T> { + + private final OutputPort<T> outputPort = createOutputPort(); + private final int threshold; + + private int counter; + + public EveryXthStage(final int threshold) { + this.threshold = threshold; + } + + @Override + protected void execute(final T element) { + counter++; + if (counter % threshold == 0) { + outputPort.send(element); + } + } + + public OutputPort<T> getOutputPort() { + return outputPort; + } + +} diff --git a/src/main/java/teetime/stage/FileExtensionSwitch.java b/src/main/java/teetime/stage/FileExtensionSwitch.java index b58f2e90..3824d223 100644 --- a/src/main/java/teetime/stage/FileExtensionSwitch.java +++ b/src/main/java/teetime/stage/FileExtensionSwitch.java @@ -9,14 +9,17 @@ import teetime.framework.OutputPort; import com.google.common.io.Files; -public class FileExtensionSwitch extends AbstractConsumerStage<File> { +public final class FileExtensionSwitch extends AbstractConsumerStage<File> { private final Map<String, OutputPort<File>> fileExtensions = new HashMap<String, OutputPort<File>>(); @Override protected void execute(final File file) { String fileExtension = Files.getFileExtension(file.getAbsolutePath()); - this.logger.debug("fileExtension: " + fileExtension); + if (logger.isDebugEnabled()) { + this.logger.debug("fileExtension: " + fileExtension); + } + OutputPort<File> outputPort = this.fileExtensions.get(fileExtension); outputPort.send(file); } diff --git a/src/main/java/teetime/stage/InstanceCounter.java b/src/main/java/teetime/stage/InstanceCounter.java index 7b5b4a0d..16a57baa 100644 --- a/src/main/java/teetime/stage/InstanceCounter.java +++ b/src/main/java/teetime/stage/InstanceCounter.java @@ -3,7 +3,7 @@ package teetime.stage; import teetime.framework.AbstractConsumerStage; import teetime.framework.OutputPort; -public class InstanceCounter<T, C extends T> extends AbstractConsumerStage<T> { +public final class InstanceCounter<T, C extends T> extends AbstractConsumerStage<T> { private final OutputPort<T> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/InstanceOfFilter.java b/src/main/java/teetime/stage/InstanceOfFilter.java index a32b6963..710ea79f 100644 --- a/src/main/java/teetime/stage/InstanceOfFilter.java +++ b/src/main/java/teetime/stage/InstanceOfFilter.java @@ -5,9 +5,9 @@ import teetime.framework.OutputPort; /** * @author Jan Waller, Nils Christian Ehmke, Christian Wulf - * + * */ -public class InstanceOfFilter<I, O> extends AbstractConsumerStage<I> { +public final class InstanceOfFilter<I, O> extends AbstractConsumerStage<I> { private final OutputPort<O> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/IterableProducer.java b/src/main/java/teetime/stage/IterableProducer.java index f83f1201..b66245ca 100644 --- a/src/main/java/teetime/stage/IterableProducer.java +++ b/src/main/java/teetime/stage/IterableProducer.java @@ -2,7 +2,7 @@ package teetime.stage; import teetime.framework.AbstractProducerStage; -public class IterableProducer<O extends Iterable<T>, T> extends AbstractProducerStage<T> { +public final class IterableProducer<O extends Iterable<T>, T> extends AbstractProducerStage<T> { private O iter = null; diff --git a/src/main/java/teetime/stage/NoopFilter.java b/src/main/java/teetime/stage/NoopFilter.java index f42247ff..1b777bf0 100644 --- a/src/main/java/teetime/stage/NoopFilter.java +++ b/src/main/java/teetime/stage/NoopFilter.java @@ -21,9 +21,9 @@ import teetime.framework.OutputPort; /** * @author Christian Wulf * - * @since 1.10 + * @since 1.0 */ -public class NoopFilter<T> extends AbstractConsumerStage<T> { +public final class NoopFilter<T> extends AbstractConsumerStage<T> { private final OutputPort<T> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/ObjectProducer.java b/src/main/java/teetime/stage/ObjectProducer.java index 63b4a9c4..b4969d4a 100644 --- a/src/main/java/teetime/stage/ObjectProducer.java +++ b/src/main/java/teetime/stage/ObjectProducer.java @@ -21,15 +21,15 @@ import teetime.util.ConstructorClosure; /** * @author Christian Wulf * - * @since 1.10 + * @since 1.0 */ -public class ObjectProducer<T> extends AbstractProducerStage<T> { +public final class ObjectProducer<T> extends AbstractProducerStage<T> { private long numInputObjects; private ConstructorClosure<T> inputObjectCreator; /** - * @since 1.10 + * @since 1.0 */ public ObjectProducer(final long numInputObjects, final ConstructorClosure<T> inputObjectCreator) { this.numInputObjects = numInputObjects; diff --git a/src/main/java/teetime/stage/Relay.java b/src/main/java/teetime/stage/Relay.java index 08d2ac81..96e30334 100644 --- a/src/main/java/teetime/stage/Relay.java +++ b/src/main/java/teetime/stage/Relay.java @@ -1,11 +1,11 @@ package teetime.stage; import teetime.framework.AbstractInterThreadPipe; -import teetime.framework.InputPort; import teetime.framework.AbstractProducerStage; +import teetime.framework.InputPort; import teetime.framework.signal.TerminatingSignal; -public class Relay<T> extends AbstractProducerStage<T> { +public final class Relay<T> extends AbstractProducerStage<T> { private final InputPort<T> inputPort = this.createInputPort(); diff --git a/src/main/java/teetime/stage/StartTimestampFilter.java b/src/main/java/teetime/stage/StartTimestampFilter.java index 67a0cb5d..a229af16 100644 --- a/src/main/java/teetime/stage/StartTimestampFilter.java +++ b/src/main/java/teetime/stage/StartTimestampFilter.java @@ -24,7 +24,7 @@ import teetime.util.TimestampObject; * * @since 1.10 */ -public class StartTimestampFilter extends AbstractConsumerStage<TimestampObject> { +public final class StartTimestampFilter extends AbstractConsumerStage<TimestampObject> { private final OutputPort<TimestampObject> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/StopTimestampFilter.java b/src/main/java/teetime/stage/StopTimestampFilter.java index 03eb0573..253ea8b0 100644 --- a/src/main/java/teetime/stage/StopTimestampFilter.java +++ b/src/main/java/teetime/stage/StopTimestampFilter.java @@ -24,7 +24,7 @@ import teetime.util.TimestampObject; * * @since 1.10 */ -public class StopTimestampFilter extends AbstractConsumerStage<TimestampObject> { +public final class StopTimestampFilter extends AbstractConsumerStage<TimestampObject> { private final OutputPort<TimestampObject> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/ZipByteArray.java b/src/main/java/teetime/stage/ZipByteArray.java index ea3d3d9d..8b251ce6 100644 --- a/src/main/java/teetime/stage/ZipByteArray.java +++ b/src/main/java/teetime/stage/ZipByteArray.java @@ -15,7 +15,7 @@ import teetime.framework.OutputPort; * @author Nelson Tavares de Sousa * */ -public class ZipByteArray extends AbstractConsumerStage<byte[]> { +public final class ZipByteArray extends AbstractConsumerStage<byte[]> { private final OutputPort<byte[]> outputPort = this.createOutputPort(); private final ZipMode mode; diff --git a/src/main/java/teetime/stage/basic/Delay.java b/src/main/java/teetime/stage/basic/Delay.java index d2cf63b4..29f152d0 100644 --- a/src/main/java/teetime/stage/basic/Delay.java +++ b/src/main/java/teetime/stage/basic/Delay.java @@ -7,7 +7,7 @@ import teetime.framework.AbstractStage; import teetime.framework.InputPort; import teetime.framework.OutputPort; -public class Delay<T> extends AbstractStage { +public final class Delay<T> extends AbstractStage { private final InputPort<T> inputPort = this.createInputPort(); private final InputPort<Long> timestampTriggerInputPort = this.createInputPort(); diff --git a/src/main/java/teetime/stage/basic/Sink.java b/src/main/java/teetime/stage/basic/Sink.java index 1b790990..87ee070d 100644 --- a/src/main/java/teetime/stage/basic/Sink.java +++ b/src/main/java/teetime/stage/basic/Sink.java @@ -2,7 +2,7 @@ package teetime.stage.basic; import teetime.framework.AbstractConsumerStage; -public class Sink<T> extends AbstractConsumerStage<T> { +public final class Sink<T> extends AbstractConsumerStage<T> { // PERFORMANCE let the sink remove all available input at once by using a new method receiveAll() that clears the pipe's buffer diff --git a/src/main/java/teetime/stage/basic/distributor/CopyByReferenceStrategy.java b/src/main/java/teetime/stage/basic/distributor/CopyByReferenceStrategy.java index d5f26972..3a31976e 100644 --- a/src/main/java/teetime/stage/basic/distributor/CopyByReferenceStrategy.java +++ b/src/main/java/teetime/stage/basic/distributor/CopyByReferenceStrategy.java @@ -26,8 +26,8 @@ public final class CopyByReferenceStrategy<T> implements IDistributorStrategy<T> @Override public boolean distribute(final OutputPort<T>[] outputPorts, final T element) { - for (final OutputPort<T> port : outputPorts) { - port.send(element); + for (final OutputPort<T> outputPort : outputPorts) { + outputPort.send(element); } return true; diff --git a/src/main/java/teetime/stage/basic/distributor/Distributor.java b/src/main/java/teetime/stage/basic/distributor/Distributor.java index 1f2ed53e..5fecfe44 100644 --- a/src/main/java/teetime/stage/basic/distributor/Distributor.java +++ b/src/main/java/teetime/stage/basic/distributor/Distributor.java @@ -22,7 +22,7 @@ import teetime.framework.OutputPort; /** * @author Christian Wulf * - * @since 1.10 + * @since 1.0 * * @param T * the type of the input port and the output ports diff --git a/src/main/java/teetime/stage/basic/merger/Merger.java b/src/main/java/teetime/stage/basic/merger/Merger.java index 92d37046..69b778a4 100644 --- a/src/main/java/teetime/stage/basic/merger/Merger.java +++ b/src/main/java/teetime/stage/basic/merger/Merger.java @@ -38,7 +38,7 @@ import teetime.framework.signal.ISignal; * @param <T> * the type of both the input and output ports */ -public class Merger<T> extends AbstractStage { +public final class Merger<T> extends AbstractStage { private final OutputPort<T> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/io/EveryXthPrinter.java b/src/main/java/teetime/stage/io/EveryXthPrinter.java new file mode 100644 index 00000000..1b17337f --- /dev/null +++ b/src/main/java/teetime/stage/io/EveryXthPrinter.java @@ -0,0 +1,59 @@ +package teetime.stage.io; + +import java.util.List; + +import teetime.framework.InputPort; +import teetime.framework.Stage; +import teetime.framework.TerminationStrategy; +import teetime.framework.pipe.IPipeFactory; +import teetime.framework.pipe.PipeFactoryRegistry; +import teetime.framework.pipe.PipeFactoryRegistry.PipeOrdering; +import teetime.framework.pipe.PipeFactoryRegistry.ThreadCommunication; +import teetime.framework.signal.ISignal; +import teetime.framework.validation.InvalidPortConnection; +import teetime.stage.EveryXthStage; + +public final class EveryXthPrinter<T> extends Stage { + + private final EveryXthStage<T> everyXthStage; + private final Printer<T> printer; + + public EveryXthPrinter(final int threshold) { + everyXthStage = new EveryXthStage<T>(threshold); + printer = new Printer<T>(); + + IPipeFactory pipeFactory = PipeFactoryRegistry.INSTANCE.getPipeFactory(ThreadCommunication.INTRA, PipeOrdering.ARBITRARY, false); + pipeFactory.create(everyXthStage.getOutputPort(), printer.getInputPort()); + } + + @Override + protected void executeWithPorts() { + everyXthStage.executeWithPorts(); + } + + @Override + public void validateOutputPorts(final List<InvalidPortConnection> invalidPortConnections) { + printer.validateOutputPorts(invalidPortConnections); + } + + @Override + protected void onSignal(final ISignal signal, final InputPort<?> inputPort) { + everyXthStage.onSignal(signal, inputPort); + } + + @Override + protected TerminationStrategy getTerminationStrategy() { + return everyXthStage.getTerminationStrategy(); + } + + @Override + protected void terminate() { + everyXthStage.terminate(); + } + + @Override + protected boolean shouldBeTerminated() { + return everyXthStage.shouldBeTerminated(); + } + +} diff --git a/src/main/java/teetime/stage/Tokenizer.java b/src/main/java/teetime/stage/string/Tokenizer.java similarity index 85% rename from src/main/java/teetime/stage/Tokenizer.java rename to src/main/java/teetime/stage/string/Tokenizer.java index 2cbb80b0..812dedf4 100644 --- a/src/main/java/teetime/stage/Tokenizer.java +++ b/src/main/java/teetime/stage/string/Tokenizer.java @@ -1,11 +1,11 @@ -package teetime.stage; +package teetime.stage.string; import java.util.StringTokenizer; import teetime.framework.AbstractConsumerStage; import teetime.framework.OutputPort; -public class Tokenizer extends AbstractConsumerStage<String> { +public final class Tokenizer extends AbstractConsumerStage<String> { private final OutputPort<String> outputPort = this.createOutputPort(); private final String regex; diff --git a/src/main/java/teetime/stage/stringBuffer/StringBufferFilter.java b/src/main/java/teetime/stage/string/buffer/StringBufferFilter.java similarity index 91% rename from src/main/java/teetime/stage/stringBuffer/StringBufferFilter.java rename to src/main/java/teetime/stage/string/buffer/StringBufferFilter.java index 24d030f5..6b20b26f 100644 --- a/src/main/java/teetime/stage/stringBuffer/StringBufferFilter.java +++ b/src/main/java/teetime/stage/string/buffer/StringBufferFilter.java @@ -13,22 +13,22 @@ * See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************/ -package teetime.stage.stringBuffer; +package teetime.stage.string.buffer; import java.util.Collection; import java.util.LinkedList; import teetime.framework.AbstractConsumerStage; import teetime.framework.OutputPort; -import teetime.stage.stringBuffer.handler.AbstractDataTypeHandler; -import teetime.stage.stringBuffer.util.KiekerHashMap; +import teetime.stage.string.buffer.handler.AbstractDataTypeHandler; +import teetime.stage.string.buffer.util.KiekerHashMap; /** * @author Christian Wulf * * @since 1.10 */ -public class StringBufferFilter<T> extends AbstractConsumerStage<T> { +public final class StringBufferFilter<T> extends AbstractConsumerStage<T> { private final OutputPort<T> outputPort = this.createOutputPort(); diff --git a/src/main/java/teetime/stage/stringBuffer/handler/AbstractDataTypeHandler.java b/src/main/java/teetime/stage/string/buffer/handler/AbstractDataTypeHandler.java similarity index 93% rename from src/main/java/teetime/stage/stringBuffer/handler/AbstractDataTypeHandler.java rename to src/main/java/teetime/stage/string/buffer/handler/AbstractDataTypeHandler.java index f58688df..da82bc87 100644 --- a/src/main/java/teetime/stage/stringBuffer/handler/AbstractDataTypeHandler.java +++ b/src/main/java/teetime/stage/string/buffer/handler/AbstractDataTypeHandler.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************/ -package teetime.stage.stringBuffer.handler; +package teetime.stage.string.buffer.handler; import org.slf4j.Logger; -import teetime.stage.stringBuffer.util.KiekerHashMap; +import teetime.stage.string.buffer.util.KiekerHashMap; /** * @author Christian Wulf diff --git a/src/main/java/teetime/stage/stringBuffer/handler/StringHandler.java b/src/main/java/teetime/stage/string/buffer/handler/StringHandler.java similarity index 96% rename from src/main/java/teetime/stage/stringBuffer/handler/StringHandler.java rename to src/main/java/teetime/stage/string/buffer/handler/StringHandler.java index 82c356fa..83e28fa6 100644 --- a/src/main/java/teetime/stage/stringBuffer/handler/StringHandler.java +++ b/src/main/java/teetime/stage/string/buffer/handler/StringHandler.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************/ -package teetime.stage.stringBuffer.handler; +package teetime.stage.string.buffer.handler; /** * @author Christian Wulf diff --git a/src/main/java/teetime/stage/stringBuffer/util/KiekerHashMap.java b/src/main/java/teetime/stage/string/buffer/util/KiekerHashMap.java similarity index 99% rename from src/main/java/teetime/stage/stringBuffer/util/KiekerHashMap.java rename to src/main/java/teetime/stage/string/buffer/util/KiekerHashMap.java index 82667eed..259265ab 100644 --- a/src/main/java/teetime/stage/stringBuffer/util/KiekerHashMap.java +++ b/src/main/java/teetime/stage/string/buffer/util/KiekerHashMap.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. ***************************************************************************/ -package teetime.stage.stringBuffer.util; +package teetime.stage.string.buffer.util; import java.lang.ref.SoftReference; import java.util.concurrent.locks.ReentrantLock; diff --git a/src/performancetest/java/teetime/framework/OldPipeline.java b/src/performancetest/java/teetime/framework/OldPipeline.java index 05bdb62f..56c8fffd 100644 --- a/src/performancetest/java/teetime/framework/OldPipeline.java +++ b/src/performancetest/java/teetime/framework/OldPipeline.java @@ -27,26 +27,11 @@ public class OldPipeline<FirstStage extends Stage, LastStage extends Stage> exte this.lastStage = lastStage; } - @Override - public String getId() { - return this.firstStage.getId(); - } - @Override public void executeWithPorts() { this.firstStage.executeWithPorts(); } - @Override - public Stage getParentStage() { - return this.firstStage.getParentStage(); - } - - @Override - public void setParentStage(final Stage parentStage, final int index) { - this.firstStage.setParentStage(parentStage, index); - } - @Override public void onSignal(final ISignal signal, final InputPort<?> inputPort) { this.firstStage.onSignal(signal, inputPort); @@ -59,20 +44,17 @@ public class OldPipeline<FirstStage extends Stage, LastStage extends Stage> exte @Override public TerminationStrategy getTerminationStrategy() { - // TODO Auto-generated method stub - return null; + return firstStage.getTerminationStrategy(); } @Override public void terminate() { - // TODO Auto-generated method stub - + firstStage.terminate(); } @Override public boolean shouldBeTerminated() { - // TODO Auto-generated method stub - return false; + return firstStage.shouldBeTerminated(); } } diff --git a/src/test/java/teetime/examples/tokenizer/TokenizerConfiguration.java b/src/test/java/teetime/examples/tokenizer/TokenizerConfiguration.java index d8c344e3..a7af1459 100644 --- a/src/test/java/teetime/examples/tokenizer/TokenizerConfiguration.java +++ b/src/test/java/teetime/examples/tokenizer/TokenizerConfiguration.java @@ -10,10 +10,10 @@ import teetime.stage.CipherByteArray; import teetime.stage.CipherByteArray.CipherMode; import teetime.stage.Counter; import teetime.stage.InitialElementProducer; -import teetime.stage.Tokenizer; import teetime.stage.ZipByteArray; import teetime.stage.ZipByteArray.ZipMode; import teetime.stage.io.File2ByteArray; +import teetime.stage.string.Tokenizer; public class TokenizerConfiguration extends AnalysisConfiguration { -- GitLab