void plugin_add(PluginDir::info_ptr p) { auto lock(cor::wlock(*this)); trace() << "Plugin " << p->value() << std::endl; auto d = std::make_shared<PluginDir>(this, p); add_dir(p->value(), mk_dir_entry(d)); }
void plugin_add(PluginDir::info_ptr p) { auto lock(cor::wlock(*this)); auto name = p->value(); trace() << "Plugin " << name << std::endl; if (dirs.find(name)) { std::cerr << "There is already a plugin " << name << "...skipping\n"; return; } auto d = std::make_shared<PluginDir>(this, p); add_dir(p->value(), mk_dir_entry(d)); }
NamespaceDir::NamespaceDir (PluginDir::info_ptr p, PluginNsDir::info_ptr ns) { Path path = {"..", "..", "providers", p->value(), ns->value()}; for (auto prop : ns->props_) { path.push_back(prop->value()); add_symlink(prop->value(), boost::algorithm::join(path, "/")); path.pop_back(); } }