Elektra  0.8.12
Public Member Functions
kdb::tools::Backend Class Reference

A representation of the backend (= set of plugins) that can be mounted. More...

#include <backend.hpp>

Public Member Functions

 Backend ()
 Creates a new backend with a given name and mountpoint.
void setMountpoint (Key mountpoint, KeySet mountConf)
 Sets the mountpoint for the backend.
void setBackendConfig (KeySet const &ks)
 Backend Config to add to.
void addPlugin (std::string name, KeySet pluginConf=KeySet())
 Add a plugin that can be loaded, meets all constraints.
void useConfigFile (std::string file)
bool validated () const
void serialize (kdb::KeySet &ret)

Detailed Description

A representation of the backend (= set of plugins) that can be mounted.


Constructor & Destructor Documentation

Creates a new backend with a given name and mountpoint.

Parameters are needed for serialisation only, so you can keep them empty if you do not want to serialise.


Member Function Documentation

void kdb::tools::Backend::addPlugin ( std::string  pluginName,
KeySet  pluginConf = KeySet() 
)

Add a plugin that can be loaded, meets all constraints.

Note:
that this does not mean that the backend validates after it is added. It only means that the situation is not getting worse.
Exceptions:
PluginCheckExceptionor its subclasses if it was not possible to load the plugin

For validation

See also:
validated().
Precondition:
name and mountpoint set Add plugin serialization into keyset ret.

Only can be done once! (see firstRef in Plugin)

Backend Config to add to.

Parameters:
ksthe config to add, should be below system/
void kdb::tools::Backend::setMountpoint ( Key  mountpoint,
KeySet  mountConf 
)

Sets the mountpoint for the backend.

Exceptions:
MountpointInvalidException
MountpointAlreadyInUseException
Parameters:
mountpointthe key name will be used as mountpoint. It is allowed to pass a key with a KEY_CASCADING_NAME
mountConfneeds to include the keys below system/elektra/mountpoints
void kdb::tools::Backend::useConfigFile ( std::string  file)
Precondition:
: resolver needs to be loaded first Will check the filename and use it as configFile for this backend.
Exceptions:
FileNotValidExceptionif filename is not valid
Returns:
true if backend is validated
false if more plugins are needed to be valided

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