35 KVRemoteDataSetManager::~KVRemoteDataSetManager()
94 fRepository->GetName()),
"");
96 Warning(
"OpenAvailableDatasetsFile()",
97 "%s.DataRepository.RemoteAvailableRuns.url is not defined. See $KVROOT/KVFiles/.kvrootrc",
98 fRepository->GetName());
102 url.
Form(
"%s/%s", http.
Data(), fCacheFileName.Data());
107 (
"%s.DataRepository.RemoteAvailableRuns.protocol",
108 fRepository->GetName()),
"curl");
110 Error(
"OpenAvailableDatasetsFile",
111 "Executable for file transfer \"%s\" not found. You cannot use remote data repository.",
116 cmd.
Form(
"%s -oremote.available.datasets %s", fCurl.Data(), url.
Data());
119 fDatasets.open(
"remote.available.datasets");
120 if (fCurl.Contains(
"curl")) {
123 line.ReadLine(fDatasets);
124 if (
line.Contains(
"<")) {
125 Error(
"OpenAvailableDatasetsFile",
126 "Remote available datasets file transferred by curl contains HTML code :");
128 cout <<
line.Data() << endl;
129 line.ReadLine(fDatasets);
130 while (fDatasets.good()) {
131 cout <<
line.Data() << endl;
132 line.ReadLine(fDatasets);
134 Error(
"OpenAvailableDatasetsFile",
135 "You cannot use this remote data repository");
141 fDatasets.seekg(0, ios::beg);
179 ReadAvailableDatasetsFile();
ClassImp(KVPartitionList) void KVPartitionList
Initialisation.
char * Form(const char *fmt,...)
R__EXTERN TSystem * gSystem
static Bool_t FindExecutable(TString &exec, const Char_t *path="$(PATH)")
Manage datasets stored in a remote data repository.
Bool_t OpenAvailableDatasetsFile()
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 * Data() const
void Form(const char *fmt,...)
virtual Int_t Exec(const char *shellcmd)