java.lang.Object
com.google.common.util.concurrent.AbstractService
org.yamcs.tctm.AbstractLink
org.yamcs.tctm.ccsds.AbstractTmFrameLink
org.yamcs.sle.AbstractTmSleLink
- All Implemented Interfaces:
com.google.common.util.concurrent.Service,org.yamcs.jsle.user.FrameConsumer,SystemParametersProducer,SleLink,AggregatedDataLink,Link,LinkActionProvider,ParameterDataLink
- Direct Known Subclasses:
OfflineTmSleLink,TmSleLink
public abstract class AbstractTmSleLink
extends AbstractTmFrameLink
implements org.yamcs.jsle.user.FrameConsumer, SleLink, ParameterDataLink
Abstract class for the TM SLE links.
It implements the common functionality for Offline and Online links.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.yamcs.tctm.Link
Link.StatusNested classes/interfaces inherited from interface com.google.common.util.concurrent.Service
com.google.common.util.concurrent.Service.Listener, com.google.common.util.concurrent.Service.State -
Field Summary
FieldsFields inherited from class org.yamcs.tctm.ccsds.AbstractTmFrameLink
errFrameCount, frameHandler, invalidFrameCount, rawFrameDecoder, subLinks, TM_FRAME_CONFIG_SECTION, validFrameCountFields inherited from class org.yamcs.tctm.AbstractLink
config, dataInCount, dataOutCount, disabled, eventProducer, LINK_NAMESPACE, linkName, log, timeService, yamcsInstance -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidacceptFrame(org.yamcs.jsle.CcsdsTime ert, org.yamcs.jsle.AntennaId antennaId, int dataLinkContinuity, org.yamcs.jsle.Constants.FrameQuality frameQuality, byte[] privAnn, byte[] data) protected voidcollectSystemParameters(long time, List<ParameterValue> list) protected voidconnectAndBind(boolean startSle) protected Link.StatusVerifies that the requested state is the same as the current stateCompletableFuture<org.yamcs.jsle.SleParameter> getParameter(org.yamcs.jsle.ParameterName paraName) Retrieve the value for the parameter from the SLE providervoidinit(String instance, String name, YConfiguration config, org.yamcs.jsle.Constants.DeliveryMode deliveryMode) parses and validates configurationbooleanvoidvoidonLossFrameSync(org.yamcs.jsle.CcsdsTime time, org.yamcs.jsle.Constants.LockStatus carrier, org.yamcs.jsle.Constants.LockStatus subcarrier, org.yamcs.jsle.Constants.LockStatus symbolSync) voidonProductionStatusChange(org.yamcs.jsle.Constants.ProductionStatus productionStatusChange) voidsetParameterSink(ParameterSink parameterSink) voidMethods inherited from class org.yamcs.tctm.ccsds.AbstractTmFrameLink
addDefaultOptions, getSubLinks, handleFrame, init, resetCountersMethods inherited from class org.yamcs.tctm.AbstractLink
addAction, dataIn, dataOut, disable, doDisable, doEnable, enable, getAction, getActions, getConfig, getCurrentTime, getDataInCount, getDataOutCount, getEventLoop, getLinkStatus, getName, getParent, getSystemParameters, getYamcsInstance, isDisabled, isRunningAndEnabled, setParentMethods inherited from class com.google.common.util.concurrent.AbstractService
addListener, awaitRunning, awaitRunning, awaitRunning, awaitTerminated, awaitTerminated, awaitTerminated, doCancelStart, doStart, doStop, failureCause, isRunning, notifyFailed, notifyStarted, notifyStopped, startAsync, state, stopAsync, toStringMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.yamcs.jsle.user.FrameConsumer
onEndOfDataMethods inherited from interface org.yamcs.tctm.Link
disable, enable, getConfig, getDataInCount, getDataOutCount, getLinkStatus, getName, getParent, getSpec, init, isDisabled, isEffectivelyDisabled, resetCounters, setParentMethods inherited from interface org.yamcs.parameter.SystemParametersProducer
getFrequency
-
Field Details
-
parameterSink
-
-
Constructor Details
-
AbstractTmSleLink
public AbstractTmSleLink()
-
-
Method Details
-
getDefaultSpec
- Specified by:
getDefaultSpecin interfaceLink- Overrides:
getDefaultSpecin classAbstractTmFrameLink
-
init
public void init(String instance, String name, YConfiguration config, org.yamcs.jsle.Constants.DeliveryMode deliveryMode) throws ConfigurationException parses and validates configuration- Parameters:
deliveryMode-- Throws:
ConfigurationException- if port is not defined in the configuration
-
connectAndBind
protected void connectAndBind(boolean startSle) -
connectionStatus
Verifies that the requested state is the same as the current state- Specified by:
connectionStatusin classAbstractLink- Returns:
- Status.OK or Status.UNAVAIL
-
getDetailedStatus
- Specified by:
getDetailedStatusin interfaceLink- Overrides:
getDetailedStatusin classAbstractLink
-
getExtraInfo
- Specified by:
getExtraInfoin interfaceLink
-
acceptFrame
public void acceptFrame(org.yamcs.jsle.CcsdsTime ert, org.yamcs.jsle.AntennaId antennaId, int dataLinkContinuity, org.yamcs.jsle.Constants.FrameQuality frameQuality, byte[] privAnn, byte[] data) - Specified by:
acceptFramein interfaceorg.yamcs.jsle.user.FrameConsumer
-
onExcessiveDataBacklog
public void onExcessiveDataBacklog()- Specified by:
onExcessiveDataBacklogin interfaceorg.yamcs.jsle.user.FrameConsumer
-
onProductionStatusChange
public void onProductionStatusChange(org.yamcs.jsle.Constants.ProductionStatus productionStatusChange) - Specified by:
onProductionStatusChangein interfaceorg.yamcs.jsle.user.FrameConsumer
-
onLossFrameSync
public void onLossFrameSync(org.yamcs.jsle.CcsdsTime time, org.yamcs.jsle.Constants.LockStatus carrier, org.yamcs.jsle.Constants.LockStatus subcarrier, org.yamcs.jsle.Constants.LockStatus symbolSync) - Specified by:
onLossFrameSyncin interfaceorg.yamcs.jsle.user.FrameConsumer
-
setupSystemParameters
- Specified by:
setupSystemParametersin interfaceLink- Overrides:
setupSystemParametersin classAbstractLink
-
collectSystemParameters
- Overrides:
collectSystemParametersin classAbstractLink
-
getParameter
public CompletableFuture<org.yamcs.jsle.SleParameter> getParameter(org.yamcs.jsle.ParameterName paraName) Description copied from interface:SleLinkRetrieve the value for the parameter from the SLE provider- Specified by:
getParameterin interfaceSleLink
-
isParameterDataLinkImplemented
public boolean isParameterDataLinkImplemented()- Specified by:
isParameterDataLinkImplementedin interfaceParameterDataLink
-
setParameterSink
- Specified by:
setParameterSinkin interfaceParameterDataLink
-