![]() |
Kea 2.2.0
|
A translator class for converting a database access list between YANG and JSON. More...
#include <translator_database.h>
Inheritance diagram for isc::yang::TranslatorDatabases:Public Member Functions | |
| TranslatorDatabases (sysrepo::S_Session session, const std::string &model) | |
| Constructor. More... | |
| virtual | ~TranslatorDatabases () |
| Destructor. More... | |
| isc::data::ConstElementPtr | getDatabases (const std::string &xpath) |
| Get and translate database accesses from YANG to JSON. More... | |
| void | setDatabases (const std::string &xpath, isc::data::ConstElementPtr elem) |
| Translate and set database accesses from JSON to YANG. More... | |
Public Member Functions inherited from isc::yang::TranslatorDatabase | |
| TranslatorDatabase (sysrepo::S_Session session, const std::string &model) | |
| Constructor. More... | |
| virtual | ~TranslatorDatabase () |
| Destructor. More... | |
| isc::data::ElementPtr | getDatabase (const std::string &xpath) |
| Get and translate a database access from YANG to JSON. More... | |
| void | setDatabase (const std::string &xpath, isc::data::ConstElementPtr elem, bool skip=false) |
| Translate and set database access from JSON to YANG. More... | |
Public Member Functions inherited from isc::yang::TranslatorBasic | |
| TranslatorBasic (sysrepo::S_Session session, const std::string &model) | |
| Constructor. More... | |
| virtual | ~TranslatorBasic () |
| Destructor. More... | |
| void | checkAndGetLeaf (isc::data::ElementPtr &storage, const std::string &xpath, const std::string &name) |
| Retrieves an item and stores it in the specified storage. More... | |
| void | checkAndSetLeaf (isc::data::ConstElementPtr const &from, std::string const &xpath, std::string const &name, sr_type_t const type) |
| Get an element from given ElementPtr node and set it in sysrepo at given xpath. More... | |
| void | delItem (const std::string &xpath) |
| Delete basic value from YANG. More... | |
| template<typename functor_t > | |
| void | forAll (std::string const &xpath, functor_t f) |
| Run a function for a node and all its children. More... | |
| isc::data::ElementPtr | getItem (const std::string &xpath) |
| Get and translate basic value from YANG to JSON. More... | |
| isc::data::ElementPtr | getItems (const std::string &xpath) |
| Get and translate a list of basic values from YANG to JSON. More... | |
| template<typename T > | |
| isc::data::ElementPtr | getList (std::string const &xpath, T &t, isc::data::ElementPtr(T::*f)(std::string const &xpath)) |
| Retrieve a list as ElementPtr from sysrepo from a certain xpath. More... | |
| sysrepo::S_Vals | getValuesFromItems (std::string const &xpath) |
| Get the values of all siblings at a certain xpath. More... | |
| void | setItem (const std::string &xpath, isc::data::ConstElementPtr elem, sr_type_t type) |
| Translate and set basic value from JSON to YANG. More... | |
Protected Member Functions | |
| isc::data::ElementPtr | getDatabasesKea (const std::string &xpath) |
| getDatabases JSON for kea-dhcp[46]-server models. More... | |
| void | setDatabasesKea (const std::string &xpath, isc::data::ConstElementPtr elem) |
| setDatabases for kea-dhcp[46]-server models. More... | |
Protected Member Functions inherited from isc::yang::TranslatorDatabase | |
| isc::data::ElementPtr | getDatabaseKea (const std::string &xpath) |
| getDatabase JSON for kea-dhcp[46]-server models. More... | |
| void | setDatabaseKea (const std::string &xpath, isc::data::ConstElementPtr elem, bool skip) |
| setDatabase for kea-dhcp[46]-server models. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from isc::yang::TranslatorBasic | |
| static sysrepo::S_Val | value (isc::data::ConstElementPtr elem, sr_type_t type) |
| Translate basic value from JSON to YANG. More... | |
| static isc::data::ElementPtr | value (sysrepo::S_Val s_val) |
| Translate basic value from YANG to JSON. More... | |
Protected Attributes inherited from isc::yang::TranslatorBasic | |
| std::string | model_ |
| The model. More... | |
| sysrepo::S_Session | session_ |
| The sysrepo session. More... | |
A translator class for converting a database access list between YANG and JSON.
Supports kea-dhcp[46]-server, does not exist in ietf-dhcpv6-server.
Definition at line 157 of file translator_database.h.
| isc::yang::TranslatorDatabases::TranslatorDatabases | ( | sysrepo::S_Session | session, |
| const std::string & | model | ||
| ) |
Constructor.
| session | Sysrepo session. |
| model | Model name. |
Definition at line 135 of file translator_database.cc.
|
virtual |
Destructor.
Definition at line 141 of file translator_database.cc.
| ConstElementPtr isc::yang::TranslatorDatabases::getDatabases | ( | const std::string & | xpath | ) |
Get and translate database accesses from YANG to JSON.
| xpath | The xpath of databases including the list name. |
| SysrepoError | when sysrepo raises an error. |
Definition at line 145 of file translator_database.cc.
References getDatabasesKea(), isc_throw, isc::yang::TranslatorBasic::model_, and isc::Exception::what().
Referenced by isc::yang::TranslatorConfig::getConfigControlKea(), and isc::yang::TranslatorConfig::getServerKeaDhcpCommon().
Here is the call graph for this function:
|
protected |
getDatabases JSON for kea-dhcp[46]-server models.
| xpath | The xpath of databases including the list name. |
| SysrepoError | when sysrepo raises an error. |
Definition at line 161 of file translator_database.cc.
References isc::yang::TranslatorDatabase::getDatabase().
Referenced by getDatabases().
Here is the call graph for this function:| void isc::yang::TranslatorDatabases::setDatabases | ( | const std::string & | xpath, |
| isc::data::ConstElementPtr | elem | ||
| ) |
Translate and set database accesses from JSON to YANG.
Null elem argument removes the database list.
| xpath | The xpath of databases including the list name. |
| elem | The JSON element. |
Definition at line 167 of file translator_database.cc.
References isc_throw, isc::yang::TranslatorBasic::model_, setDatabasesKea(), and isc::Exception::what().
Referenced by isc::yang::TranslatorConfig::setServerKeaDhcpCommon().
Here is the call graph for this function:
|
protected |
setDatabases for kea-dhcp[46]-server models.
| xpath | The xpath of databases including the list name. |
| elem | The JSON element. |
| BadValue | on database without type, |
Definition at line 185 of file translator_database.cc.
References isc::yang::TranslatorBasic::delItem(), isc_throw, and isc::yang::TranslatorDatabase::setDatabase().
Referenced by setDatabases().
Here is the call graph for this function: