Kea 1.5.0
netconf_process.h
Go to the documentation of this file.
1// Copyright (C) 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 NETCONF_PROCESS_H
8#define NETCONF_PROCESS_H
9
10#include <netconf/netconf.h>
11#include <process/d_process.h>
12#include <vector>
13
14namespace isc {
15namespace netconf {
16
25public:
32 NetconfProcess(const char* name, const asiolink::IOServicePtr& io_service);
33
35 virtual ~NetconfProcess();
36
44 virtual void init();
45
49 virtual void run();
50
66
82 bool check_only = false);
83
86
88 static bool shut_down;
89
90private:
91
96 size_t runIO();
97
99 NetconfAgent agent_;
100};
101
103typedef boost::shared_ptr<NetconfProcess> NetconfProcessPtr;
104
105}; // namespace isc::netconf
106}; // namespace isc
107
108#endif // NETCONF_PROCESS_H
Netconf agent.
Definition: netconf.h:45
Kea Netconf Application Process.
virtual ~NetconfProcess()
Destructor.
NetconfCfgMgrPtr getNetconfCfgMgr()
Returns a pointer to the configuration manager.
virtual void run()
Implements the process's event loop.
static bool shut_down
Global (globally visible) shutdown flag.
virtual void init()
Initialize the Netconf process.
virtual isc::data::ConstElementPtr configure(isc::data::ConstElementPtr config_set, bool check_only=false)
Processes the given configuration.
virtual isc::data::ConstElementPtr shutdown(isc::data::ConstElementPtr args)
Initiates the process's shutdown process.
Application Process Interface.
Definition: d_process.h:67
boost::shared_ptr< const Element > ConstElementPtr
Definition: data.h:23
boost::shared_ptr< NetconfProcess > NetconfProcessPtr
Defines a shared pointer to NetconfProcess.
boost::shared_ptr< NetconfCfgMgr > NetconfCfgMgrPtr
Defines a shared pointer to NetconfCfgMgr.
Defines the logger used by the top-level component of kea-dhcp-ddns.