30 ClassImp(TAlienDirectoryEntry);
35 void TAlienDirectoryEntry::Browse(TBrowser* b)
38 TString alienname =
"alien://";
40 if (!fBrowserObjects.FindObject(alienname)) {
41 TFile *newfile = TFile::Open(alienname.Data());
43 fBrowserObjects.Add(
new TObjString(alienname.Data()), (TObject*) newfile);
49 ClassImp(TAlienDirectory);
54 TAlienDirectory::TAlienDirectory(
const char *ldn,
const char *name)
56 if (!gGrid->Cd(ldn)) {
62 SetName(gSystem->BaseName(ldn));
73 void TAlienDirectory::Fill()
75 if (!gGrid->Cd(GetTitle())) {
81 TGridResult *dirlist = gGrid->Ls(GetTitle(),
"-la");
85 while (dirlist->GetFileName(i)) {
86 if (!strcmp(
".",dirlist->GetFileName(i))) {
90 if (!strcmp(
"..",dirlist->GetFileName(i))) {
95 if (dirlist->GetKey(i,
"permissions")[0] ==
'd') {
96 fEntries.Add(
new TAlienDirectory(dirlist->GetFileNamePath(i)));
98 fEntries.Add(
new TAlienDirectoryEntry(dirlist->GetFileNamePath(i), dirlist->GetFileName(i)));
109 void TAlienDirectory::Browse(TBrowser *b)
113 TIter next(&fEntries);
116 while ((obj = next())) {
117 if (!(bobj = fBrowserObjects.FindObject(obj->GetName()))) {
118 b->Add(obj, obj->GetName());
119 fBrowserObjects.Add(
new TObjString(obj->GetName()), (TObject*) obj);
121 b->Add(bobj, bobj->GetName());
130 TAlienDirectory::~TAlienDirectory()