Kea  1.9.9-git
isc::yang::TranslatorClasses Class Reference

A translator class for converting a client class list between YANG and JSON. More...

#include <translator_class.h>

+ Inheritance diagram for isc::yang::TranslatorClasses:

Public Member Functions

 TranslatorClasses (sysrepo::S_Session session, const std::string &model)
 Constructor. More...
 
virtual ~TranslatorClasses ()
 Destructor. More...
 
isc::data::ConstElementPtr getClasses (const std::string &xpath)
 Get and translate client classes from YANG to JSON. More...
 
void setClasses (const std::string &xpath, isc::data::ConstElementPtr elem)
 Translate and set client classes from JSON to YANG. More...
 
- Public Member Functions inherited from isc::yang::TranslatorClass
 TranslatorClass (sysrepo::S_Session session, const std::string &model)
 Constructor. More...
 
virtual ~TranslatorClass ()
 Destructor. More...
 
isc::data::ElementPtr getClass (const std::string &xpath)
 Get and translate a client class from YANG to JSON. More...
 
void setClass (const std::string &xpath, isc::data::ConstElementPtr elem)
 Translate and set client class from JSON to YANG. More...
 
- Public Member Functions inherited from isc::yang::TranslatorOptionDataList
 TranslatorOptionDataList (sysrepo::S_Session session, const std::string &model)
 Constructor. More...
 
virtual ~TranslatorOptionDataList ()
 Destructor. More...
 
isc::data::ConstElementPtr getOptionDataList (const std::string &xpath)
 Get and translate option data list from YANG to JSON. More...
 
void setOptionDataList (const std::string &xpath, isc::data::ConstElementPtr elem)
 Translate and set option data list from JSON to YANG. More...
 
- Public Member Functions inherited from isc::yang::TranslatorOptionData
 TranslatorOptionData (sysrepo::S_Session session, const std::string &model)
 Constructor. More...
 
virtual ~TranslatorOptionData ()
 Destructor. More...
 
isc::data::ElementPtr getOptionData (const std::string &xpath)
 Get and translate an option data from YANG to JSON. More...
 
void setOptionData (const std::string &xpath, isc::data::ConstElementPtr elem)
 Translate and set option data 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 delItem (const std::string &xpath)
 Delete basic value from YANG. 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...
 
sysrepo::S_Iter_Value getIter (const std::string &xpath)
 List iterator methods keeping the session private. More...
 
std::string getNext (sysrepo::S_Iter_Value iter)
 Get xpath of the next YANG list item. 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...
 
- Public Member Functions inherited from isc::yang::TranslatorOptionDefList
 TranslatorOptionDefList (sysrepo::S_Session session, const std::string &model)
 Constructor. More...
 
virtual ~TranslatorOptionDefList ()
 Destructor. More...
 
isc::data::ConstElementPtr getOptionDefList (const std::string &xpath)
 Get and translate option definition list from YANG to JSON. More...
 
void setOptionDefList (const std::string &xpath, isc::data::ConstElementPtr elem)
 Translate and set option definition list from JSON to YANG. More...
 
- Public Member Functions inherited from isc::yang::TranslatorOptionDef
 TranslatorOptionDef (sysrepo::S_Session session, const std::string &model)
 Constructor. More...
 
virtual ~TranslatorOptionDef ()
 Destructor. More...
 
isc::data::ElementPtr getOptionDef (const std::string &xpath)
 Get and translate an option definition from YANG to JSON. More...
 
void setOptionDef (const std::string &xpath, isc::data::ConstElementPtr elem)
 Translate and set option definition from JSON to YANG. More...
 

Protected Member Functions

isc::data::ElementPtr getClassesKea (const std::string &xpath)
 getClasses JSON for kea-dhcp[46]. More...
 
void setClassesKea (const std::string &xpath, isc::data::ConstElementPtr elem)
 setClasses for kea-dhcp[46]. More...
 
- Protected Member Functions inherited from isc::yang::TranslatorClass
isc::data::ElementPtr getClassKea (const std::string &xpath)
 getClass JSON for kea-dhcp[46]. More...
 
void setClassKea (const std::string &xpath, isc::data::ConstElementPtr elem)
 setClass for kea-dhcp[46]. More...
 
- Protected Member Functions inherited from isc::yang::TranslatorOptionDataList
isc::data::ConstElementPtr getOptionDataListKea (const std::string &xpath)
 getOptionDataList for kea-dhcp[46]. More...
 
void setOptionDataListKea (const std::string &xpath, isc::data::ConstElementPtr elem)
 setOptionDataList for kea-dhcp[46]. More...
 
- Protected Member Functions inherited from isc::yang::TranslatorOptionData
isc::data::ElementPtr getOptionDataKea (const std::string &xpath)
 getOptionData JSON for kea-dhcp[46]. More...
 
void setOptionDataKea (const std::string &xpath, isc::data::ConstElementPtr elem)
 setOptionData for kea-dhcp[46]. More...
 
- Protected Member Functions inherited from isc::yang::TranslatorOptionDefList
isc::data::ConstElementPtr getOptionDefListKea (const std::string &xpath)
 getOptionDefList implementation specific to kea-dhcp[46]-server models. More...
 
void setOptionDefListKea (const std::string &xpath, isc::data::ConstElementPtr elem)
 setOptionDefList implementation specific to kea-dhcp[46]-server models. More...
 
- Protected Member Functions inherited from isc::yang::TranslatorOptionDef
isc::data::ElementPtr getOptionDefKea (const std::string &xpath)
 getOptionDef implementation specific to kea-dhcp[46]-server models. More...
 
void setOptionDefKea (const std::string &xpath, isc::data::ConstElementPtr elem)
 setOptionDef implementation specific to kea-dhcp[46]-server models. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from isc::yang::TranslatorBasic
static isc::data::ElementPtr value (sysrepo::S_Val s_val)
 Translate basic value from YANG to JSON. More...
 
static sysrepo::S_Val value (isc::data::ConstElementPtr elem, sr_type_t type)
 Translate basic value from JSON to YANG. More...
 
- Protected Attributes inherited from isc::yang::TranslatorBasic
std::string model_
 The model. More...
 
sysrepo::S_Session session_
 The sysrepo session. More...
 

Detailed Description

A translator class for converting a client class list between YANG and JSON.

Currently supports only kea-dhcp[46]-server. Ietf-dhcpv6-server does not define client class contents.

Definition at line 123 of file translator_class.h.

Constructor & Destructor Documentation

isc::yang::TranslatorClasses::TranslatorClasses ( sysrepo::S_Session  session,
const std::string &  model 
)

Constructor.

Parameters
sessionSysrepo session.
modelModel name.

Definition at line 167 of file translator_class.cc.

isc::yang::TranslatorClasses::~TranslatorClasses ( )
virtual

Destructor.

Definition at line 176 of file translator_class.cc.

Member Function Documentation

ConstElementPtr isc::yang::TranslatorClasses::getClasses ( const std::string &  xpath)

Get and translate client classes from YANG to JSON.

Parameters
xpathThe xpath of classes.
Returns
JSON representation of classes.
Exceptions
SysrepoErrorwhen sysrepo raises an error.

Definition at line 180 of file translator_class.cc.

References getClassesKea(), isc_throw, isc::yang::TranslatorBasic::model_, and isc::Exception::what().

Referenced by isc::yang::TranslatorConfig::getServerKeaDhcpCommon().

+ Here is the call graph for this function:

ElementPtr isc::yang::TranslatorClasses::getClassesKea ( const std::string &  xpath)
protected

getClasses JSON for kea-dhcp[46].

Parameters
xpathThe xpath of classes.
Returns
JSON representation of classes.
Exceptions
SysrepoErrorwhen sysrepo raises an error.

Definition at line 196 of file translator_class.cc.

References isc::yang::TranslatorClass::getClass(), isc::yang::TranslatorBasic::getIter(), isc::yang::TranslatorBasic::getNext(), and isc_throw.

Referenced by getClasses().

+ Here is the call graph for this function:

void isc::yang::TranslatorClasses::setClasses ( const std::string &  xpath,
isc::data::ConstElementPtr  elem 
)

Translate and set client classes from JSON to YANG.

Parameters
xpathThe xpath of classes.
elemThe JSON element.

Definition at line 218 of file translator_class.cc.

References isc_throw, isc::yang::TranslatorBasic::model_, setClassesKea(), and isc::Exception::what().

Referenced by isc::yang::TranslatorConfig::setServerKeaDhcpCommon().

+ Here is the call graph for this function:

void isc::yang::TranslatorClasses::setClassesKea ( const std::string &  xpath,
isc::data::ConstElementPtr  elem 
)
protected

setClasses for kea-dhcp[46].

Parameters
xpathThe xpath of classes.
elemThe JSON element.
Exceptions
BadValueon client class without name.

Definition at line 235 of file translator_class.cc.

References isc_throw, and isc::yang::TranslatorClass::setClass().

Referenced by setClasses().

+ Here is the call graph for this function:


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