The implementation of an Architecture is divided into its configuration and its execution.
Configuring the Architecture
When writing an own Architecture, i.e., a set of connected stages, you should inherit from Configuration to save you some work.
A configuration creates and connects the stages you want to execute.
Consider the following example configuration RecordReaderConfiguration. It represents a configuration for an analysis that reads monitoring records from a directory and collects them in a list.
The invoked buildProducerPipeline() creates three stages, namely an instance of InitialElementProducer, Dir2RecordsFilter and CollectorSink.
We then uses the method connectPorts to connect the stages' ports with each other.
where the classpath is set to the directory of the configuration and also the directory where TeeTime is located.
In order to enable this feature you need to add all dependencies to the classpath or you can simply make use of the provided "teetime-...-jar-with-dependencies.jar" file.
This feature only allows to execute configurations without any arguments in their constructor.
You can also run multiple configurations by adding them to the end of the command.