Kea 2.5.8
isc::netconf::HttpControlSocket Class Reference

Class for control socket communication over HTTP socket. More...

#include <http_control_socket.h>

+ Inheritance diagram for isc::netconf::HttpControlSocket:

Public Member Functions

 HttpControlSocket (CfgControlSocketPtr ctrl_sock)
 Constructor.
 
virtual ~HttpControlSocket ()=default
 Destructor (does nothing).
 
data::ConstElementPtr configGet (const std::string &service) override final
 Get configuration.
 
data::ConstElementPtr configSet (data::ElementPtr config, const std::string &service) override final
 Set configuration.
 
data::ConstElementPtr configTest (data::ElementPtr config, const std::string &service) override final
 Test configuration.
 
- Public Member Functions inherited from isc::netconf::ControlSocketBase
 ControlSocketBase (CfgControlSocketPtr ctrl_sock)
 Constructor.
 
virtual ~ControlSocketBase ()=default
 Destructor (does nothing).
 
virtual data::ConstElementPtr configGet (const std::string &service)=0
 Get configuration.
 
virtual data::ConstElementPtr configSet (data::ElementPtr config, const std::string &service)=0
 Set configuration.
 
virtual data::ConstElementPtr configTest (data::ElementPtr config, const std::string &service)=0
 Test configuration.
 
const std::string getName () const
 Returns the Unix socket name.
 
CfgControlSocket::Type getType () const
 Getter which returns the socket type.
 
const isc::http::Url getUrl () const
 Returns the HTTP server URL.
 

Additional Inherited Members

- Public Attributes inherited from isc::netconf::ControlSocketBase
CfgControlSocketPtr socket_cfg_
 The control socket configuration.
 

Detailed Description

Class for control socket communication over HTTP socket.

This class is the derived class for control socket communication over HTTP sockets. This class implements config-get, config-test and config-set.

Definition at line 23 of file http_control_socket.h.

Constructor & Destructor Documentation

◆ HttpControlSocket()

isc::netconf::HttpControlSocket::HttpControlSocket ( CfgControlSocketPtr  ctrl_sock)

Constructor.

Parameters
ctrl_sockThe control socket configuration.

Definition at line 36 of file http_control_socket.cc.

◆ ~HttpControlSocket()

virtual isc::netconf::HttpControlSocket::~HttpControlSocket ( )
virtualdefault

Destructor (does nothing).

Member Function Documentation

◆ configGet()

ConstElementPtr isc::netconf::HttpControlSocket::configGet ( const std::string &  service)
finaloverridevirtual

Get configuration.

Call config-get over the control socket.

Parameters
serviceThe target service.
Returns
The JSON element answer of config-get.
Exceptions
ControlSocketErrorwhen a communication error occurs.

Implements isc::netconf::ControlSocketBase.

Definition at line 41 of file http_control_socket.cc.

References isc::config::createCommand().

+ Here is the call graph for this function:

◆ configSet()

ConstElementPtr isc::netconf::HttpControlSocket::configSet ( data::ElementPtr  config,
const std::string &  service 
)
finaloverridevirtual

Set configuration.

Call config-set over the control socket.

Parameters
configThe configuration to set.
serviceThe target service.
Returns
The JSON element answer of config-set.
Exceptions
ControlSocketErrorwhen a communication error occurs.

Implements isc::netconf::ControlSocketBase.

Definition at line 59 of file http_control_socket.cc.

References isc::config::createCommand().

+ Here is the call graph for this function:

◆ configTest()

ConstElementPtr isc::netconf::HttpControlSocket::configTest ( data::ElementPtr  config,
const std::string &  service 
)
finaloverridevirtual

Test configuration.

Call config-test over the control socket.

Parameters
configThe configuration to test.
serviceThe target service.
Returns
The JSON element answer of config-test.
Exceptions
ControlSocketErrorwhen a communication error occurs.

Implements isc::netconf::ControlSocketBase.

Definition at line 50 of file http_control_socket.cc.

References isc::config::createCommand().

+ Here is the call graph for this function:

The documentation for this class was generated from the following files: