ARC SDK
|
This class contacts a remote service to make a Delivery request. More...
#include <arc/data-staging/DataDeliveryRemoteComm.h>
Public Member Functions | |
DataDeliveryRemoteComm (DTR_ptr dtr, const TransferParameters ¶ms) | |
Send the transfer request to the remote service. | |
virtual | ~DataDeliveryRemoteComm () |
If transfer is still ongoing, sends a cancellation message to the service. | |
virtual void | PullStatus () |
Read status from service. | |
virtual | operator bool () const |
Returns true if service is still processing request. | |
virtual bool | operator! () const |
Returns true if service is not processing request or down. | |
![]() | |
virtual | ~DataDeliveryComm () |
Destroy object. This stops any ongoing transfer and cleans up resources. | |
Status | GetStatus () const |
Obtain status of transfer. | |
std::string | GetError () const |
Get explanation of error. | |
Static Public Member Functions | |
static bool | CheckComm (DTR_ptr dtr, std::vector< std::string > &allowed_dirs) |
Pings service to find allowed dirs. | |
![]() | |
static DataDeliveryComm * | CreateInstance (DTR_ptr dtr, const TransferParameters ¶ms) |
Factory method to get DataDeliveryComm instance. | |
static bool | CheckComm (DTR_ptr dtr, std::vector< std::string > &allowed_dirs) |
Check the delivery method is available. Calls CheckComm of the appropriate subclass. More... | |
Additional Inherited Members | |
![]() | |
enum | CommStatusType { CommInit, CommNoError, CommTimeout, CommClosed, CommExited, CommFailed } |
Communication status with transfer. More... | |
![]() | |
DataDeliveryComm (DTR_ptr dtr, const TransferParameters ¶ms) | |
Start transfer with parameters taken from DTR and supplied transfer limits. More... | |
![]() | |
Status | status_ |
Current status of transfer. | |
Status | status_buf_ |
Latest status of transfer is read into this buffer. | |
unsigned int | status_pos_ |
Reading position of Status buffer. | |
Glib::Mutex | lock_ |
Lock to protect access to status. | |
DataDeliveryCommHandler * | handler_ |
Pointer to singleton handler of all DataDeliveryComm objects. | |
std::string | dtr_id |
ID of the DTR this object is handling. Used in log messages. | |
TransferParameters | transfer_params |
Transfer limits. | |
Arc::Time | start_ |
Time transfer was started. | |
DTRLogger | logger_ |
Logger object. Pointer to DTR's Logger. | |
This class contacts a remote service to make a Delivery request.