Kea  2.5.3
http_control_socket.h
Go to the documentation of this file.
1 // Copyright (C) 2018-2022 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 HTTP_CONTROL_SOCKET_H
11 #define HTTP_CONTROL_SOCKET_H
12 
13 #include <netconf/control_socket.h>
14 
15 namespace isc {
16 namespace netconf {
17 
24 public:
29 
31  virtual ~HttpControlSocket() = default;
32 
40  data::ConstElementPtr configGet(const std::string& service) override final;
41 
51  const std::string& service) override final;
52 
62  const std::string& service) override final;
63 
64 private:
72  data::ConstElementPtr sendCommand(data::ConstElementPtr command);
73 }; // HttpControlSocket
74 
76 using HttpControlSocketPtr = std::shared_ptr<HttpControlSocket>;
77 
82 template <> ControlSocketBasePtr
83 createControlSocket<CfgControlSocket::Type::HTTP>(CfgControlSocketPtr ctrl_sock);
84 
85 } // namespace netconf
86 } // namespace isc
87 
88 #endif // HTTP_CONTROL_SOCKET_H
Base class for control socket communication.
Class for control socket communication over HTTP socket.
data::ConstElementPtr configTest(data::ElementPtr config, const std::string &service) override final
Test configuration.
data::ConstElementPtr configSet(data::ElementPtr config, const std::string &service) override final
Set configuration.
data::ConstElementPtr configGet(const std::string &service) override final
Get configuration.
virtual ~HttpControlSocket()=default
Destructor (does nothing).
HttpControlSocket(CfgControlSocketPtr ctrl_sock)
Constructor.
Contains declarations for control socket communication.
boost::shared_ptr< const Element > ConstElementPtr
Definition: data.h:29
boost::shared_ptr< Element > ElementPtr
Definition: data.h:26
std::shared_ptr< HttpControlSocket > HttpControlSocketPtr
Type definition for the pointer to the HttpControlSocket.
std::shared_ptr< CfgControlSocket > CfgControlSocketPtr
Defines a pointer for CfgControlSocket instances.
std::shared_ptr< ControlSocketBase > ControlSocketBasePtr
Type definition for the pointer to the ControlSocketBase.
Defines the logger used by the top-level component of kea-lfc.