blob: 4182a1908e52cb380a6aee75cb4009a97828a94b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
// Copyright (C) 2018 Internet Systems Consortium, Inc. ("ISC")
//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
#ifndef PROCESS_CONFIG_CONTROL_PARSER_H
#define PROCESS_CONFIG_CONTROL_PARSER_H
#include <cc/data.h>
#include <cc/simple_parser.h>
#include <process/config_ctl_info.h>
namespace isc {
namespace process {
/// @brief Implements parser for config control information, "config-control"
class ConfigControlParser : isc::data::SimpleParser {
public:
/// @brief Parses a configuration control Element
///
/// @param config_control Element holding the config control content
/// to be parsed.
///
/// @return Pointer to newly created ConfigControlInfo instance
/// @throw DhcpConfigError when config control content is invalid.
ConfigControlInfoPtr
parse(const data::ConstElementPtr& config_control);
};
} // enf of namespace isc::process
} // end of namespace isc
#endif // PROCESS_CONFIG_CONTROL_PARSER_H
|