Back to index

nordugrid-arc-nox  1.1.0~rc6
Static Public Member Functions | Private Member Functions
Arc::FinderLoader Class Reference

#include <FinderLoader.h>

List of all members.

Static Public Member Functions

static const std::list
< std::string > 
GetLibrariesList (void)

Private Member Functions

 FinderLoader ()
 ~FinderLoader ()

Detailed Description

Definition at line 16 of file FinderLoader.h.


Constructor & Destructor Documentation

Arc::FinderLoader::FinderLoader ( ) [inline, private]

Definition at line 19 of file FinderLoader.h.

{}
Arc::FinderLoader::~FinderLoader ( ) [inline, private]

Definition at line 20 of file FinderLoader.h.

{}

Member Function Documentation

const std::list< std::string > Arc::FinderLoader::GetLibrariesList ( void  ) [static]

Definition at line 26 of file FinderLoader.cpp.

                                                              {
    BaseConfig basecfg;
    NS ns;
    Config cfg(ns);
    basecfg.MakeConfig(cfg);
    std::list<std::string> names;

    for (XMLNode n = cfg["ModuleManager"]; n; ++n) {
      for (XMLNode m = n["Path"]; m; ++m) {
        // Protect against insane configurations...
        if ((std::string)m == "/usr/lib" || (std::string)m == "/usr/lib64" ||
            (std::string)m == "/usr/bin" || (std::string)m == "/usr/libexec")
          continue;
        try {
          Glib::Dir dir((std::string)m);
          for (Glib::DirIterator file = dir.begin();
                                file != dir.end(); file++) {
            std::string name = *file;
            if(name_is_plugin(name)) names.push_back(name);
          }
        } catch (Glib::FileError) {}
      }
    }
    return names;
  }

Here is the call graph for this function:

Here is the caller graph for this function:


The documentation for this class was generated from the following files: