Elektra  0.8.13
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. More...
 
void setMountpoint (Key mountpoint, KeySet mountConf)
 Sets the mountpoint for the backend. More...
 
void setBackendConfig (KeySet const &ks)
 Backend Config to add to. More...
 
void addPlugin (std::string name, KeySet pluginConf=KeySet())
 Add a plugin that can be loaded, meets all constraints. More...
 
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

kdb::tools::Backend::Backend ( )

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().
void kdb::tools::Backend::serialize ( kdb::KeySet ret)
Precondition
name and mountpoint set Add plugin serialization into keyset ret.

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

void kdb::tools::Backend::setBackendConfig ( KeySet const &  ks)

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
bool kdb::tools::Backend::validated ( ) const
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: