Elektra  0.8.9
Public Member Functions
kdb::tools::Plugin Class Reference

#include <plugin.hpp>

Public Member Functions

void loadInfo ()
 
void parse ()
 
void check (std::vector< std::string > &warnings)
 
std::string lookupInfo (std::string item, std::string section="infos")
 
bool findInfo (std::string check, std::string item, std::string section="infos")
 
kdb::KeySet getInfo ()
 
kdb::KeySet getNeededConfig ()
 
func_t getSymbol (std::string which)
 
int open (kdb::Key &errorKey)
 
int close (kdb::Key &errorKey)
 
int get (kdb::KeySet &ks, kdb::Key &parentKey)
 
int set (kdb::KeySet &ks, kdb::Key &parentKey)
 
int error (kdb::KeySet &ks, kdb::Key &parentKey)
 
std::string name ()
 
std::string refname ()
 

Detailed Description

This is a C++ representation of a plugin.

It will load an Elektra plugin using the module loader from Elektra.

Then you can either check the plugins configuration using loadInfo(), parse() and check. Symbols can then be retrieved with getSymbol().

Or you can use the normal open(), close(), get(), set() and error() API which every plugin exports.

Member Function Documentation

void kdb::tools::Plugin::check ( std::vector< std::string > &  warnings)

Does various checks on the Plugin and throws exceptions if something is not ok.

  • Check if Plugin is compatible to current Version of Backend-API.
Exceptions
PluginCheckExceptionif there are errors
Parameters
warningsfor warnings
Precondition
parse()
int kdb::tools::Plugin::close ( kdb::Key errorKey)

Calls the close function of the plugin

Precondition
parse()
int kdb::tools::Plugin::error ( kdb::KeySet ks,
kdb::Key parentKey 
)

Calls the error function of the plugin

Precondition
parse()
bool kdb::tools::Plugin::findInfo ( std::string  check,
std::string  item,
std::string  section = "infos" 
)

Searches within a string of an information item.

Precondition
loadInfo()
int kdb::tools::Plugin::get ( kdb::KeySet ks,
kdb::Key parentKey 
)

Calls the get function of the plugin

Precondition
parse()
kdb::KeySet kdb::tools::Plugin::getInfo ( )
inline

Returns the whole keyset of information.

Precondition
loadInfo()
kdb::KeySet kdb::tools::Plugin::getNeededConfig ( )

In the plugin's contract there is a description of which config is needed in order to work together with a backend properly.

Returns
the keyset with the config needed for the backend.
Precondition
loadInfo()
func_t kdb::tools::Plugin::getSymbol ( std::string  which)
inline

Returns symbol to a function.

Precondition
parse()
void kdb::tools::Plugin::loadInfo ( )

Gets the configuration for the plugin.

std::string kdb::tools::Plugin::lookupInfo ( std::string  item,
std::string  section = "infos" 
)

Gets the whole string of an information item.

Precondition
loadInfo()
std::string kdb::tools::Plugin::name ( )
Returns
the name of the plugin
int kdb::tools::Plugin::open ( kdb::Key errorKey)

Calls the open function of the plugin

Precondition
parse()
void kdb::tools::Plugin::parse ( )

Creates symbol and info table.

std::string kdb::tools::Plugin::refname ( )
Returns
the name how it would be referred to in mountpoint
int kdb::tools::Plugin::set ( kdb::KeySet ks,
kdb::Key parentKey 
)

Calls the set function of the plugin

Precondition
parse()

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