Class DefaultProcessorWorkerFactory<InputT,OutputT,MetricsT>

java.lang.Object
io.aleph0.yap.core.worker.DefaultProcessorWorkerFactory<InputT,OutputT,MetricsT>
Type Parameters:
InputT - the type of the input
OutputT - the type of the output
MetricsT - the type of the metrics
All Implemented Interfaces:
Measureable<MetricsT>, ProcessorWorkerFactory<InputT,OutputT,MetricsT>

public class DefaultProcessorWorkerFactory<InputT,OutputT,MetricsT> extends Object implements ProcessorWorkerFactory<InputT,OutputT,MetricsT>
A ProcessorWorkerFactory that creates and manages multiple MeasuredProcessorWorkers and tracks their metrics.

This factory uses a BinaryOperator to aggregate the metrics of all active workers. If there are no active workers, the metrics will be null. If there is one active worker, the metrics will be the metrics of that worker. If there are multiple active workers, the metrics will be the result of applying the BinaryOperator to the metrics of all active workers.