Package org.yamcs.tctm
Class StreamParameterProvider
- java.lang.Object
-
- com.google.common.util.concurrent.AbstractService
-
- org.yamcs.AbstractProcessorService
-
- org.yamcs.tctm.StreamParameterProvider
-
- All Implemented Interfaces:
com.google.common.util.concurrent.Service
,ParameterProvider
,ProcessorService
,StreamSubscriber
public class StreamParameterProvider extends AbstractProcessorService implements StreamSubscriber, ParameterProvider
Provides parameters from yarch streams (pp_realtime) to ParameterRequestManager.
-
-
Field Summary
-
Fields inherited from class org.yamcs.AbstractProcessorService
config, log, processor
-
-
Constructor Summary
Constructors Constructor Description StreamParameterProvider()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
canProvide(org.yamcs.protobuf.Yamcs.NamedObjectId id)
Returns whether or not a given parameter can be provided by this providerboolean
canProvide(Parameter p)
protected void
doStart()
protected void
doStop()
Parameter
getParameter(org.yamcs.protobuf.Yamcs.NamedObjectId id)
Returns the parameterDefinition corresponding to the parameter idvoid
init(Processor processor, YConfiguration config, Object spec)
void
onTuple(Stream s, Tuple tuple)
Make sure all parameters are defined in the XtceDB, otherwise the PRM will chokevoid
setParameterListener(ParameterListener paraListener)
Send parameters to this listener.void
startProviding(Parameter paramDef)
Adds a new parameter to the list of parameters that have to providedvoid
startProvidingAll()
start providing all known parametersvoid
stopProviding(Parameter paramDef)
Removes a parameter from the list of parameters that have to be providedvoid
streamClosed(Stream s)
-
Methods inherited from class org.yamcs.AbstractProcessorService
getConfig, getYamcsInstance
-
Methods inherited from class com.google.common.util.concurrent.AbstractService
addListener, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, failureCause, isRunning, notifyFailed, notifyStarted, notifyStopped, startAsync, state, stopAsync, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.yamcs.ProcessorService
getSpec
-
-
-
-
Method Detail
-
init
public void init(Processor processor, YConfiguration config, Object spec)
- Specified by:
init
in interfaceProcessorService
- Overrides:
init
in classAbstractProcessorService
config
- service configuration as specified in processor.yamlspec
- passed by the user when creating the processor (for instance via the REST API)
-
doStart
protected void doStart()
- Specified by:
doStart
in classcom.google.common.util.concurrent.AbstractService
-
doStop
protected void doStop()
- Specified by:
doStop
in classcom.google.common.util.concurrent.AbstractService
-
onTuple
public void onTuple(Stream s, Tuple tuple)
Make sure all parameters are defined in the XtceDB, otherwise the PRM will choke- Specified by:
onTuple
in interfaceStreamSubscriber
-
streamClosed
public void streamClosed(Stream s)
- Specified by:
streamClosed
in interfaceStreamSubscriber
-
setParameterListener
public void setParameterListener(ParameterListener paraListener)
Description copied from interface:ParameterProvider
Send parameters to this listener. Normally is the channel.parameterRequestManager but something different may be used for unit tests or special applications (PacketViewer)- Specified by:
setParameterListener
in interfaceParameterProvider
-
stopProviding
public void stopProviding(Parameter paramDef)
Description copied from interface:ParameterProvider
Removes a parameter from the list of parameters that have to be provided- Specified by:
stopProviding
in interfaceParameterProvider
-
canProvide
public boolean canProvide(org.yamcs.protobuf.Yamcs.NamedObjectId id)
Description copied from interface:ParameterProvider
Returns whether or not a given parameter can be provided by this provider- Specified by:
canProvide
in interfaceParameterProvider
- Returns:
-
canProvide
public boolean canProvide(Parameter p)
- Specified by:
canProvide
in interfaceParameterProvider
-
getParameter
public Parameter getParameter(org.yamcs.protobuf.Yamcs.NamedObjectId id) throws InvalidIdentification
Description copied from interface:ParameterProvider
Returns the parameterDefinition corresponding to the parameter id- Specified by:
getParameter
in interfaceParameterProvider
- Parameters:
id
- - id of the parameter that is returned- Returns:
- Throws:
InvalidIdentification
-
startProviding
public void startProviding(Parameter paramDef)
Description copied from interface:ParameterProvider
Adds a new parameter to the list of parameters that have to provided- Specified by:
startProviding
in interfaceParameterProvider
-
startProvidingAll
public void startProvidingAll()
Description copied from interface:ParameterProvider
start providing all known parameters- Specified by:
startProvidingAll
in interfaceParameterProvider
-
-