A plugin database that works with installed modules.
More...
#include <plugindatabase.hpp>
A plugin database that works with installed modules.
◆ getSymbol()
PluginDatabase::func_t kdb::tools::ModulesPluginDatabase::getSymbol |
( |
PluginSpec const & |
whichplugin, |
|
|
std::string const & |
which |
|
) |
| const |
|
virtual |
get exported plugin symbol
- Parameters
-
whichplugin | from which plugin? |
which | which symbol would you like to look up? |
- Returns
- the function pointer to the exported symbol or NULL if the symbol was not found
Implements kdb::tools::PluginDatabase.
Reimplemented in kdb::tools::MockPluginDatabase.
◆ listAllPlugins()
std::vector< std::string > kdb::tools::ModulesPluginDatabase::listAllPlugins |
( |
| ) |
const |
|
virtual |
list all plugins
If Elektra is compiled with plugins, it will search for shared libraries. In any case, if no shared libraries were found it will fallback to an internal list (plugins that were compiled together with Elektra).
- Returns
- a list of all available plugins
Implements kdb::tools::PluginDatabase.
Reimplemented in kdb::tools::MockPluginDatabase.
◆ lookupAllProvides()
std::vector< PluginSpec > kdb::tools::ModulesPluginDatabase::lookupAllProvides |
( |
std::string const & |
provides | ) |
const |
|
virtual |
looks up all plugins which are a suitable provider
- Note
- in case a plugin name is provided, the plugin with the name will also be part of the result. But if there are other plugins providing the requirement, then they will also be part of the result. The ordering of the resulting vector has no special meaning.
- Parameters
-
provides | is the provider to find |
- Returns
- a vector of plugins offering the requirement or are named after it
Implements kdb::tools::PluginDatabase.
◆ lookupAllProvidesWithStatus()
std::map< int, PluginSpec > kdb::tools::ModulesPluginDatabase::lookupAllProvidesWithStatus |
( |
std::string const & |
provides | ) |
const |
|
virtual |
looks up all plugins which are a suitable provider
- Note
- in case a plugin name is provided, the plugin with the name will also be part of the result. But if there are other plugins providing the requirement, then they will also be part of the result.
- Parameters
-
provides | is the provider to find |
- Returns
- a map of plugins with their status offering the requirement or are named after it
Implements kdb::tools::PluginDatabase.
◆ lookupInfo()
std::string kdb::tools::ModulesPluginDatabase::lookupInfo |
( |
PluginSpec const & |
whichplugin, |
|
|
std::string const & |
which |
|
) |
| const |
|
virtual |
◆ lookupMetadata()
PluginSpec kdb::tools::ModulesPluginDatabase::lookupMetadata |
( |
std::string const & |
which | ) |
const |
|
virtual |
lookup which plugin handles metadata
- Parameters
-
which | the metadata of interest |
- Returns
- the best suited plugin specification which provides it
Implements kdb::tools::PluginDatabase.
◆ lookupProvides()
PluginSpec kdb::tools::ModulesPluginDatabase::lookupProvides |
( |
std::string const & |
provides | ) |
const |
|
virtual |
lookup which plugin is a provider for that plugin
- Note
- will return a PluginSpec with getName() == provides if the string provides actually is a plugin name.
- Parameters
-
provides | is the provider to find |
- Exceptions
-
NoPlugin | if no plugin that provides the functionality could be found |
- Returns
- the plugin itself or the best suited plugin specification which provides it
Implements kdb::tools::PluginDatabase.
The documentation for this class was generated from the following files: