00001 #ifndef DATADELIVERYLOCALCOMM_H_
00002 #define DATADELIVERYLOCALCOMM_H_
00003
00004 #include <arc/Run.h>
00005
00006 #include "DataDeliveryComm.h"
00007
00008 namespace DataStaging {
00009
00011 class DataDeliveryLocalComm : public DataDeliveryComm {
00012 public:
00013
00015 DataDeliveryLocalComm(DTR_ptr dtr, const TransferParameters& params);
00017 virtual ~DataDeliveryLocalComm();
00018
00020 virtual void PullStatus();
00021
00023 static bool CheckComm(DTR_ptr dtr, std::vector<std::string>& allowed_dirs);
00024
00026 virtual operator bool() const { return (child_ != NULL); };
00028 virtual bool operator!() const { return (child_ == NULL); };
00029
00030 private:
00032 Arc::Run* child_;
00034 std::string tmp_proxy_;
00036 Arc::Time last_comm;
00037 };
00038
00039 }
00040
00041 #endif