Kea  1.9.9-git
d2_simple_parser.h
Go to the documentation of this file.
1 // Copyright (C) 2017-2018 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 D2_SIMPLE_PARSER_H
8 #define D2_SIMPLE_PARSER_H
9 
10 #include <cc/simple_parser.h>
11 #include <d2/d2_cfg_mgr.h>
12 
13 namespace isc {
14 namespace d2 {
15 
23 public:
24 
31  static size_t setAllDefaults(data::ElementPtr global);
32 
33  // see d2_simple_parser.cc for comments for those parameters
35 
36  // Defaults for tsig-keys list elements, TSIGKeyInfos
38 
39  // Defaults for <forward|reverse>-ddns elements, DdnsDomainListMgrs
41 
42  // Defaults for ddns-domains list elements, DdnsDomains
44 
45  // Defaults for dns-servers list elements, DnsServerInfos
47 
57  static size_t setDdnsDomainDefaults(data::ElementPtr domain,
59  domain_defaults);
60 
77  static size_t setManagerDefaults(data::ElementPtr global,
78  const std::string& mgr_name,
79  const data::SimpleDefaults& mgr_defaults);
80 
88  void parse(const D2CfgContextPtr& ctx,
89  const isc::data::ConstElementPtr& config,
90  bool check_only);
91 };
92 
93 };
94 };
95 
96 #endif
static const data::SimpleDefaults DNS_SERVER_DEFAULTS
Supplies defaults for optional values DdnsDomain entries.
static size_t setAllDefaults(data::ElementPtr global)
Sets all defaults for D2 configuration.
void parse(const D2CfgContextPtr &ctx, const isc::data::ConstElementPtr &config, bool check_only)
Parses the whole D2 configuration.
std::vector< SimpleDefault > SimpleDefaults
This specifies all default values in a given scope (e.g. a subnet).
boost::shared_ptr< Element > ElementPtr
Definition: data.h:20
static size_t setManagerDefaults(data::ElementPtr global, const std::string &mgr_name, const data::SimpleDefaults &mgr_defaults)
Adds default values to a DDNS Domain List Manager.
static const data::SimpleDefaults TSIG_KEY_DEFAULTS
Supplies defaults for ddns-domains list elements (i.e. DdnsDomains)
static const data::SimpleDefaults D2_GLOBAL_DEFAULTS
This table defines default global values for D2.
static const data::SimpleDefaults DDNS_DOMAIN_DEFAULTS
Supplies defaults for ddns-domains list elements (i.e. DdnsDomains)
boost::shared_ptr< const Element > ConstElementPtr
Definition: data.h:23
boost::shared_ptr< D2CfgContext > D2CfgContextPtr
Pointer to a configuration context.
Definition: d2_cfg_mgr.h:23
Defines the logger used by the top-level component of kea-dhcp-ddns.
static const data::SimpleDefaults DDNS_DOMAIN_MGR_DEFAULTS
Supplies defaults for optional values in DDNS domain managers (e.g.
static size_t setDdnsDomainDefaults(data::ElementPtr domain, const data::SimpleDefaults &domain_defaults)
Adds default values to a DDNS Domain element.