dmlite::PluginManager Class Reference
CatalogInterface can only be instantiated through this class.
More...
#include <dmlite.h>
List of all members.
Detailed Description
CatalogInterface can only be instantiated through this class.
Constructor & Destructor Documentation
dmlite::PluginManager::PluginManager |
( |
|
) |
throw () |
dmlite::PluginManager::~PluginManager |
( |
|
) |
|
dmlite::PluginManager::PluginManager |
( |
const PluginManager & |
|
) |
[private] |
Member Function Documentation
void dmlite::PluginManager::configure |
( |
const std::string & |
key, |
|
|
const std::string & |
value | |
|
) |
| | |
Set a configuration parameter. It will be passed to the loaded plugins.
- Parameters:
-
| key | The configuration parameter. |
| value | The value for the configuration parameter. |
Get the AuthnFactory implementation on top of the plugin stack.
std::string dmlite::PluginManager::getConfiguration |
( |
const std::string & |
key |
) |
|
Return an entry from the loaded configuration.
- Parameters:
-
| key | The configuration parameter. |
Get the IOFactory implementation on top of the plugin stack.
PoolDriverFactory* dmlite::PluginManager::getPoolDriverFactory |
( |
const std::string & |
pooltype |
) |
|
Get the appropiate pool driver factory for the pool.
Get the PoolFactory implementation on top of the plugin stack.
void dmlite::PluginManager::loadConfiguration |
( |
const std::string & |
file |
) |
|
Load a configuration file, with plugins and parameters.
- Parameters:
-
| file | The configuration file. |
void dmlite::PluginManager::loadPlugin |
( |
const std::string & |
lib, |
|
|
const std::string & |
id | |
|
) |
| | |
Load a plugin. Previously instantiated interfaces won't be affected.
- Parameters:
-
| lib | The .so file. Usually, (path)/plugin_name.so. |
| id | The plugin ID. Usually, plugin_name. |
void dmlite::PluginManager::registerAuthnFactory |
( |
AuthnFactory * |
factory |
) |
|
Register a Authn factory. To be used by concrete implementations
- Parameters:
-
| factory | The UserDbGroup concrete factory. |
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
void dmlite::PluginManager::registerCatalogFactory |
( |
CatalogFactory * |
factory |
) |
|
Register a catalog factory. To be used by concrete implementations (i.e. Plugins)
- Parameters:
-
| factory | The catalog concrete factory. |
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
void dmlite::PluginManager::registerConfigureFactory |
( |
BaseFactory * |
factory |
) |
|
Register a bare BaseFactory. Only the configure method will be called.
- Parameters:
-
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
void dmlite::PluginManager::registerINodeFactory |
( |
INodeFactory * |
factory |
) |
|
Register a INode factory. To be used by concrete implementations (i.e. Plugins)
- Parameters:
-
| factory | The INode concrete factory. |
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
void dmlite::PluginManager::registerIODriverFactory |
( |
IODriverFactory * |
factory |
) |
|
Register a IODriver factory.
- Parameters:
-
| factory | The IO concrete factory. |
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
void dmlite::PluginManager::registerPoolDriverFactory |
( |
PoolDriverFactory * |
factory |
) |
|
Register a PoolDriver factory.
- Parameters:
-
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
Register a pool factory.
- Parameters:
-
| factory | The pool concrete factory. |
- Note:
- The same object can be passed to other register functions. DMLite will take care of freeing it only once.
Member Data Documentation
Internal list of loaded plug-ins.
Keep pointers returned by dlopen at hand to free on destruction.
The documentation for this class was generated from the following file: