ARC SDK
Public Member Functions | Static Public Member Functions
DataStaging::DataDeliveryLocalComm Class Reference

This class starts, monitors and controls a local Delivery process. More...

#include <arc/data-staging/DataDeliveryLocalComm.h>

Inheritance diagram for DataStaging::DataDeliveryLocalComm:
DataStaging::DataDeliveryComm

Public Member Functions

 DataDeliveryLocalComm (DTR_ptr dtr, const TransferParameters &params)
 Starts child process. More...
 
virtual ~DataDeliveryLocalComm ()
 This stops the child process. More...
 
virtual void PullStatus ()
 Read from stdout of child to get status. More...
 
virtual operator bool () const
 Returns true if child process exists. More...
 
virtual bool operator! () const
 Returns true if child process does not exist. More...
 
- Public Member Functions inherited from DataStaging::DataDeliveryComm
virtual ~DataDeliveryComm ()
 Destroy object. This stops any ongoing transfer and cleans up resources. More...
 
Status GetStatus () const
 Obtain status of transfer. More...
 
std::string GetError () const
 Get explanation of error. More...
 

Static Public Member Functions

static bool CheckComm (DTR_ptr dtr, std::vector< std::string > &allowed_dirs)
 Returns "/" since local Delivery can access everywhere. More...
 
- Static Public Member Functions inherited from DataStaging::DataDeliveryComm
static DataDeliveryCommCreateInstance (DTR_ptr dtr, const TransferParameters &params)
 Factory method to get DataDeliveryComm instance. More...
 
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

- Public Types inherited from DataStaging::DataDeliveryComm
enum  CommStatusType {
  CommInit, CommNoError, CommTimeout, CommClosed,
  CommExited, CommFailed
}
 Communication status with transfer. More...
 
- Protected Member Functions inherited from DataStaging::DataDeliveryComm
 DataDeliveryComm (DTR_ptr dtr, const TransferParameters &params)
 Start transfer with parameters taken from DTR and supplied transfer limits. More...
 
- Protected Attributes inherited from DataStaging::DataDeliveryComm
Status status_
 Current status of transfer. More...
 
Status status_buf_
 Latest status of transfer is read into this buffer. More...
 
unsigned int status_pos_
 Reading position of Status buffer. More...
 
Glib::Mutex lock_
 Lock to protect access to status. More...
 
DataDeliveryCommHandlerhandler_
 Pointer to singleton handler of all DataDeliveryComm objects. More...
 
TransferParameters transfer_params
 Transfer limits. More...
 
Arc::Time start_
 Time transfer was started. More...
 
DTRLogger logger_
 Logger object. Pointer to DTR's Logger. More...
 

Detailed Description

This class starts, monitors and controls a local Delivery process.

Constructor & Destructor Documentation

DataStaging::DataDeliveryLocalComm::DataDeliveryLocalComm ( DTR_ptr  dtr,
const TransferParameters params 
)

Starts child process.

virtual DataStaging::DataDeliveryLocalComm::~DataDeliveryLocalComm ( )
virtual

This stops the child process.

Member Function Documentation

static bool DataStaging::DataDeliveryLocalComm::CheckComm ( DTR_ptr  dtr,
std::vector< std::string > &  allowed_dirs 
)
static

Returns "/" since local Delivery can access everywhere.

virtual DataStaging::DataDeliveryLocalComm::operator bool ( void  ) const
inlinevirtual

Returns true if child process exists.

Implements DataStaging::DataDeliveryComm.

virtual bool DataStaging::DataDeliveryLocalComm::operator! ( void  ) const
inlinevirtual

Returns true if child process does not exist.

Implements DataStaging::DataDeliveryComm.

virtual void DataStaging::DataDeliveryLocalComm::PullStatus ( )
virtual

Read from stdout of child to get status.

Implements DataStaging::DataDeliveryComm.


The documentation for this class was generated from the following file: