Package org.yamcs.cfdp
Class CfdpService
- java.lang.Object
-
- com.google.common.util.concurrent.AbstractService
-
- org.yamcs.AbstractYamcsService
-
- org.yamcs.cfdp.CfdpService
-
- All Implemented Interfaces:
com.google.common.util.concurrent.Service,TransferMonitor,YamcsService,StreamSubscriber
public class CfdpService extends AbstractYamcsService implements StreamSubscriber, TransferMonitor
Implements CCSDS File Delivery Protocol (CFDP) in Yamcs.The standard is specified in CCSDS 727.0-B-4
-
-
Field Summary
-
Fields inherited from class org.yamcs.AbstractYamcsService
config, log, yamcsInstance
-
-
Constructor Summary
Constructors Constructor Description CfdpService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddTransferListener(TransferMonitor listener)protected voiddoStart()protected voiddoStop()CfdpTransfergetCfdpTransfer(long id)CfdpTransfergetCfdpTransfer(CfdpTransactionId transferId)Collection<CfdpTransfer>getCfdpTransfers()SpecgetSpec()Returns the valid configuration options for this service.voidinit(String yamcsInstance, YConfiguration config)Initialize this service.voidonTuple(Stream stream, Tuple tuple)CfdpTransferprocessRequest(CfdpRequest request)voidremoveTransferListener(TransferMonitor listener)voidstateChanged(CfdpTransfer cfdpTransfer)voidstreamClosed(Stream stream)CfdpOutgoingTransferupload(String objName, String target, boolean overwrite, boolean acknowledged, boolean createpath, Bucket b, byte[] objData)-
Methods inherited from class org.yamcs.AbstractYamcsService
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
-
-
-
-
Method Detail
-
getSpec
public Spec getSpec()
Description copied from interface:YamcsServiceReturns the valid configuration options for this service.- Specified by:
getSpecin interfaceYamcsService- Returns:
- the argument specification, or null if the args should not be validated.
-
init
public void init(String yamcsInstance, YConfiguration config) throws InitException
Description copied from interface:YamcsServiceInitialize this service. This is called before the service is started. All operations should finish fast.- Specified by:
initin interfaceYamcsService- Overrides:
initin classAbstractYamcsService- Parameters:
yamcsInstance- The yamcs instance, or null if this is a global service.config- The configured arguments for this service. IfYamcsService.getSpec()is implemented then this contains the arguments after being validated (including any defaults).- Throws:
InitException- When something goes wrong during the execution of this method.
-
getCfdpTransfer
public CfdpTransfer getCfdpTransfer(CfdpTransactionId transferId)
-
getCfdpTransfer
public CfdpTransfer getCfdpTransfer(long id)
-
getCfdpTransfers
public Collection<CfdpTransfer> getCfdpTransfers()
-
processRequest
public CfdpTransfer processRequest(CfdpRequest request)
-
onTuple
public void onTuple(Stream stream, Tuple tuple)
- Specified by:
onTuplein interfaceStreamSubscriber
-
addTransferListener
public void addTransferListener(TransferMonitor listener)
-
removeTransferListener
public void removeTransferListener(TransferMonitor listener)
-
doStart
protected void doStart()
- Specified by:
doStartin classcom.google.common.util.concurrent.AbstractService
-
doStop
protected void doStop()
- Specified by:
doStopin classcom.google.common.util.concurrent.AbstractService
-
streamClosed
public void streamClosed(Stream stream)
- Specified by:
streamClosedin interfaceStreamSubscriber
-
upload
public CfdpOutgoingTransfer upload(String objName, String target, boolean overwrite, boolean acknowledged, boolean createpath, Bucket b, byte[] objData)
-
stateChanged
public void stateChanged(CfdpTransfer cfdpTransfer)
- Specified by:
stateChangedin interfaceTransferMonitor
-
-