- All Superinterfaces:
- com.google.common.util.concurrent.Service
- All Known Subinterfaces:
- ArchiveTmPacketProvider, CommandReleaser, ParameterProvider, TmPacketProvider
- All Known Implementing Classes:
- AlgorithmManager, ReplayService, SoftwareParameterManager, StreamParameterProvider, StreamTcCommandReleaser, StreamTmPacketProvider, SystemParametersProvider, XtceTmProcessor
public interface ProcessorService
extends com.google.common.util.concurrent.Service
This interface has to be implemented by all services that run as part of a processor.
The implementing classes need to have a constructor with one or two arguments:
MyProcessorService (String yamcsInstance)
or
MyProcessorService (String yamcsInstance, Map<String, Object> config)
The second one will be called if the service is declared in the processor.yaml with "args". For example:
services:
- class: a.b.c.MyProcessorService
args:
x: 3
y: "my y config"
Additional config may be passed by the user when the processor is created using the spec parameter in the init method