10 #include "KVRemoteDataRepository.h"
11 #include "KVRemoteDataSetManager.h"
34 KVRemoteDataRepository::~KVRemoteDataRepository()
56 "Always returns false for remote data repository");
89 "Always returns false for remote data repository");
119 "Always returns false for remote data repository");
141 Info(
"CopyFileFromRepository",
"Not implemented yet");
160 Info(
"CopyFileToRepository",
"Not implemented yet");
176 Info(
"MakeSubdirectory",
"Impossible on remote data repositories");
191 Info(
"GetDirectoryListing",
"Impossible on remote data repositories");
209 Info(
"DeleteFile",
"Impossible on remote data repositories");
268 if (fLocalrootdir.Contains(
"/"))
271 else if (fLocalrootdir.Contains(
"\\"))
303 if (fLocalrootdir.Contains(
"/"))
305 else if (fLocalrootdir.Contains(
"\\"))
358 TString command =
"xterm -e \"ssh -X -L";
359 command += fXRDtunSpec;
361 command +=
Form(
"%s@%s\" &", fXRDtunUser.Data(), fXRDtunHost.Data());
363 cout <<
"Waiting for connection to xrootd server via SSH tunnel ";
364 while (!sock->
IsValid() && iRetry < fXRDtunRetry) {
370 sock =
new TSocket(
"localhost", fXRDtunPort);
377 if (iRetry == fXRDtunRetry) {
378 cout <<
"Connection timeout " << endl;
char * Form(const char *fmt,...)
R__EXTERN TSystem * gSystem
virtual const Char_t * GetFullPathToTransferFile(const KVDataSet *dataset, const Char_t *datatype, const Char_t *runfile)
virtual const Char_t * GetFullPathToOpenFile(const KVDataSet *dataset, const Char_t *datatype, const Char_t *runfile)
Manage all datasets contained in a given data repository.
Manage an experimental dataset corresponding to a given experiment or campaign.
Manage a collection of data files on a remote machine.
void DeleteFile(const KVDataSet *ds, const Char_t *datatype, const Char_t *filename, Bool_t confirm=kTRUE) override
Bool_t CheckSubdirExists(const Char_t *dir, const Char_t *subdir=0) override
int CopyFileToRepository(const Char_t *source, const KVDataSet *ds, const Char_t *datatype, const Char_t *filename) override
std::unique_ptr< KVUniqueNameList > GetDirectoryListing(const KVDataSet *ds, const Char_t *datatype="", const Char_t *subdir="") override
const Char_t * GetFullPathToOpenFile(const KVDataSet *dataset, const Char_t *datatype, const Char_t *runfile) override
const Char_t * GetFullPathToTransferFile(const KVDataSet *dataset, const Char_t *datatype, const Char_t *runfile) override
Bool_t GetFileInfo(const KVDataSet *ds, const Char_t *datatype, const Char_t *runfile, FileStat_t &fs) override
void MakeSubdirectory(const KVDataSet *ds, const Char_t *datatype="") override
KVDataSetManager * NewDataSetManager() override
Create and return pointer to new data set manager.
Bool_t IsConnected() override
void CopyFileFromRepository(const KVDataSet *ds, const Char_t *datatype, const Char_t *filename, const Char_t *destination) override
Bool_t CheckFileStatus(const KVDataSet *ds, const Char_t *datatype, const Char_t *runfile) override
Manage datasets stored in a remote data repository.
virtual void Close(Option_t *opt="")
virtual Bool_t IsValid() const
const char * Data() const
TString & ReplaceAll(const char *s1, const char *s2)
virtual Int_t Exec(const char *shellcmd)
virtual const char * UnixPathName(const char *unixpathname)
virtual void Sleep(UInt_t milliSec)