- All Superinterfaces:
Link
- All Known Implementing Classes:
AbstractTcDataLink,AbstractTcFrameLink,AbstractTcTmParamLink,AbstractThreadedTcDataLink,Cop1TcPacketHandler,TcPacketHandler,TcpTcDataLink,TcpTcTmDataLink,UdpTcDataLink,UdpTcFrameLink,UdpTcTmDataLink,YamcsTcLink
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.yamcs.tctm.Link
Link.Status -
Method Summary
Modifier and TypeMethodDescriptiondefault booleandefault booleanThis method has been introduced to allow classes that implement multiple links (e.g.booleansendCommand(PreparedCommand preparedCommand) Attempt to send the command and return true if the command has been sent or its processing has finished.voidsetCommandHistoryPublisher(CommandHistoryPublisher commandHistoryPublisher) Methods inherited from interface org.yamcs.tctm.Link
disable, enable, getConfig, getDataInCount, getDataOutCount, getDefaultSpec, getDetailedStatus, getExtraInfo, getLinkStatus, getName, getParent, getSpec, init, isDisabled, isEffectivelyDisabled, resetCounters, setParent, setupSystemParameters
-
Method Details
-
sendCommand
Attempt to send the command and return true if the command has been sent or its processing has finished.If false is returned, the
LinkManagerwill attempt to send the command via the next TC link (if any).The link is expected to update the
CommandHistoryPublisher.AcknowledgeSent_KEYack in the command history if the method returned true. If it returned false, the ack should not be updated (it will be updated by the next link or by the Link Manager if there is other no link).The link can update the
CommandHistoryPublisher.AcknowledgeSent_KEYack with a negative ack and return true (i.e. the command has not been really sent but it has finished processing).The return true/false has been introduced in Yamcs 5.6.0. Before that version, the old method sendTc was implicitly returning true. As of Yamcs 5.6.0 most links return true even when they cannot send the command (setting the negative Sent ack).
Throwing an exception is equivalent with returning false, except a error log will be printed (this is considered a bug)
- Parameters:
preparedCommand-- Returns:
-
setCommandHistoryPublisher
-
isCommandingAvailable
default boolean isCommandingAvailable() -
isTcDataLinkImplemented
default boolean isTcDataLinkImplemented()This method has been introduced to allow classes that implement multiple links (e.g. TM and TC) to not effectively support one ore more of them (depending on configuration)If this method returns false, the
LinkManagerskips the link configuration for TC purposes
-