Kea  1.9.9-git
unix_control_socket.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 
9 
10 #ifndef UNIX_CONTROL_SOCKET_H
11 #define UNIX_CONTROL_SOCKET_H
12 
13 #include <netconf/control_socket.h>
14 
15 namespace isc {
16 namespace netconf {
17 
24 public:
25 
30 
32  virtual ~UnixControlSocket();
33 
41  virtual data::ConstElementPtr configGet(const std::string& service);
42 
52  const std::string& service);
53 
63  const std::string& service);
64 
65 private:
73  data::ConstElementPtr sendCommand(data::ConstElementPtr command);
74 };
75 
77 typedef boost::shared_ptr<UnixControlSocket> UnixControlSocketPtr;
78 
83 template <> ControlSocketBasePtr
84 createControlSocket<CfgControlSocket::Type::UNIX>(CfgControlSocketPtr ctrl_sock);
85 
86 } // namespace netconf
87 } // namespace isc
88 
89 #endif // UNIX_CONTROL_SOCKET_H
boost::shared_ptr< ControlSocketBase > ControlSocketBasePtr
Type definition for the pointer to the ControlSocketBase.
UnixControlSocket(CfgControlSocketPtr ctrl_sock)
Constructor.
Base class for control socket communication.
boost::shared_ptr< UnixControlSocket > UnixControlSocketPtr
Type definition for the pointer to the UnixControlSocket.
virtual ~UnixControlSocket()
Destructor (does nothing).
virtual data::ConstElementPtr configTest(data::ConstElementPtr config, const std::string &service)
Test configuration.
virtual data::ConstElementPtr configSet(data::ConstElementPtr config, const std::string &service)
Set configuration.
boost::shared_ptr< const Element > ConstElementPtr
Definition: data.h:23
Class for control socket communication over UNIX socket.
virtual data::ConstElementPtr configGet(const std::string &service)
Get configuration.
Defines the logger used by the top-level component of kea-dhcp-ddns.
Contains declarations for control socket communication.
boost::shared_ptr< CfgControlSocket > CfgControlSocketPtr
Defines a pointer for CfgControlSocket instances.