Kea  1.9.9-git
translator_config.h
Go to the documentation of this file.
1 // Copyright (C) 2018-2019 Internet Systems Consortium, Inc. ("ISC")
2 //
3 // This Source Code Form is subject to the terms of the Mozilla Public
4 // License, v. 2.0. If a copy of the MPL was not distributed with this
5 // file, You can obtain one at http://mozilla.org/MPL/2.0/.
6 
7 #ifndef ISC_TRANSLATOR_CONFIG_H
8 #define ISC_TRANSLATOR_CONFIG_H 1
9 
10 #include <yang/translator.h>
13 #include <yang/translator_class.h>
15 #include <yang/translator_logger.h>
16 #include <list>
17 
18 namespace isc {
19 namespace yang {
20 
25 
178 
331 
373 
381  virtual public TranslatorDatabases,
382  virtual public TranslatorClasses,
383  virtual public TranslatorSharedNetworks,
384  virtual public TranslatorLoggers {
385 public:
386 
391 #ifndef HAVE_PRE_0_7_6_SYSREPO
392  TranslatorConfig(sysrepo::S_Session session, const std::string& model);
393 #else
394  TranslatorConfig(S_Session session, const std::string& model);
395 #endif
396 
398  virtual ~TranslatorConfig();
399 
406 
414 
415 protected:
424 
426  void delConfigIetf6();
427 
436 
442 
448 
453  isc::data::ElementPtr getServerKeaDhcpCommon(const std::string& xpath);
454 
460 
466 
468  void delConfigKea();
469 
474 
479 
484  void setServerKeaDhcpCommon(const std::string& xpath,
486 
491  isc::data::ElementPtr getHooksKea(const std::string& xpath);
492 
497  isc::data::ElementPtr getExpiredKea(const std::string& xpath);
498 
503  isc::data::ElementPtr getDdnsKea(const std::string& xpath);
504 
509  isc::data::ElementPtr getConfigControlKea(const std::string& xpath);
510 
515 
520 
529  void getParam(isc::data::ElementPtr& storage, const std::string& xpath,
530  const std::string& name);
531 };
532 
533 }; // end of namespace isc::yang
534 }; // end of namespace isc
535 
536 #endif // ISC_TRANSLATOR_CONFIG_H
void setConfigKea4(isc::data::ConstElementPtr elem)
setConfig for kea-dhcp[46]-server.
isc::data::ElementPtr getConfigKea6()
getConfig for kea-dhcp6-server.
DHCP configuration translation between YANG and JSON.
void setConfigIetf6(isc::data::ConstElementPtr elem)
setConfig for ietf-dhcpv6-server.
TranslatorConfig(sysrepo::S_Session session, const std::string &model)
Constructor.
void setServerKeaDhcp4(isc::data::ConstElementPtr elem)
setServer for kea-dhcp4-server:config.
isc::data::ElementPtr getConfigKea4()
getConfig for kea-dhcp4-server.
boost::shared_ptr< Element > ElementPtr
Definition: data.h:20
void setConfig(isc::data::ConstElementPtr elem)
Translate and sets the DHCP server configuration from JSON to YANG.
void getParam(isc::data::ElementPtr &storage, const std::string &xpath, const std::string &name)
Retrieves an item and stores in the specified storage.
void setConfigKea6(isc::data::ConstElementPtr elem)
setConfig for kea-dhcp6-server.
isc::data::ElementPtr getConfig()
Get and translate the whole DHCP server configuration from YANG to JSON.
Control socket translation between YANG and JSON.
isc::data::ElementPtr getConfigIetf6()
getConfig for ietf-dhcpv6-server.
A translator class for converting a logger list between YANG and JSON.
isc::data::ElementPtr getExpiredKea(const std::string &xpath)
Retrieves expired leases processing parameters from sysrepo.
virtual ~TranslatorConfig()
Destructor.
boost::shared_ptr< const Element > ConstElementPtr
Definition: data.h:23
A translator class for converting a shared network list between YANG and JSON.
isc::data::ElementPtr getDdnsKea(const std::string &xpath)
Retrieves DDNS configuration from sysrepo.
void setServerKeaDhcp6(isc::data::ConstElementPtr elem)
setServer for kea-dhcp6-server:config.
void delConfigIetf6()
delConfig for ietf-dhcpv6-server.
Defines the logger used by the top-level component of kea-dhcp-ddns.
void setServerKeaDhcpCommon(const std::string &xpath, isc::data::ConstElementPtr elem)
setServer common part for kea-dhcp[46]-server:config.
isc::data::ElementPtr getServerKeaDhcp4()
getServer for kea-dhcp4-server:config.
A translator class for converting a database access list between YANG and JSON.
A translator class for converting a client class list between YANG and JSON.
void delConfigKea()
delConfig for kea-dhcp[46]-server.
isc::data::ElementPtr getConfigControlKea(const std::string &xpath)
Retrieves configuration control from sysrepo.
isc::data::ElementPtr getServerKeaDhcpCommon(const std::string &xpath)
getServer common part for kea-dhcp[46]-server:config.
isc::data::ElementPtr getHooksKea(const std::string &xpath)
Retrieves hooks configuration from sysrepo.
isc::data::ElementPtr getServerKeaDhcp6()
getServer for kea-dhcp6-server:config.