10#include "KVRemoteDataSetManager.h"
11#include "KVDataRepository.h"
96 Warning(
"OpenAvailableDatasetsFile()",
97 "%s.DataRepository.RemoteAvailableRuns.url is not defined. See $KVROOT/KVFiles/.kvrootrc",
107 (
"%s.DataRepository.RemoteAvailableRuns.protocol",
110 Error(
"OpenAvailableDatasetsFile",
111 "Executable for file transfer \"%s\" not found. You cannot use remote data repository.",
119 fDatasets.open(
"remote.available.datasets");
124 if (
line.Contains(
"<")) {
125 Error(
"OpenAvailableDatasetsFile",
126 "Remote available datasets file transferred by curl contains HTML code :");
128 cout <<
line.Data() << endl;
131 cout <<
line.Data() << endl;
134 Error(
"OpenAvailableDatasetsFile",
135 "You cannot use this remote data repository");
char * Form(const char *fmt,...)
R__EXTERN TSystem * gSystem
static Bool_t FindExecutable(TString &exec, const Char_t *path="$(PATH)")
TString fCacheFileName
name of cache file ( = [repository name].available.datasets)
KVDataRepository * fRepository
the repository for which data sets are handled
Int_t fNavailable
number of available datasets
virtual Bool_t ReadAvailableDatasetsFile()
std::ifstream fDatasets
for reading cached repository available datasets file
Manage datasets stored in a remote data repository.
virtual ~KVRemoteDataSetManager()
Destructor.
Bool_t OpenAvailableDatasetsFile()
TString fCurl
full path to executable used to copy files
virtual void CheckAvailability()
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
virtual const char * GetValue(const char *name, const char *dflt) const
const char * GetName() const override
const char * Data() const
void Form(const char *fmt,...)
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
virtual Int_t Exec(const char *shellcmd)