Kea 2.7.6
|
HTTP Commands Manager implementation for the Kea servers. More...
#include <http_command_mgr.h>
Public Member Functions | |
void | addExternalSockets (bool use_external=true) |
Use external sockets flag. | |
void | close (bool remove=true) |
Close http control socket. | |
void | configure (HttpCommandConfigPtr config) |
Configure http control socket from configuration. | |
void | garbageCollectListeners () |
Removes listeners which are no longer in use. | |
isc::http::ConstHttpListenerPtr | getHttpListener () const |
Returns a const pointer to the HTTP listener. | |
void | setConnectionTimeout (const long timeout) |
Override default connection timeout. | |
void | setIdleConnectionTimeout (const long timeout) |
Override default idle connection timeout. | |
void | setIOService (const asiolink::IOServicePtr &io_service) |
Sets IO service to be used by the http command manager. | |
Static Public Member Functions | |
static HttpCommandMgr & | instance () |
HttpCommandMgr is a singleton class. | |
HTTP Commands Manager implementation for the Kea servers.
Similar to UnixCommandMgr
but using HTTP/HTTPS instead of UNIX sockets.
Definition at line 24 of file http_command_mgr.h.
void isc::config::HttpCommandMgr::addExternalSockets | ( | bool | use_external = true | ) |
Use external sockets flag.
Add sockets as external sockets of the interface manager so available I/O on them makes a waiting select to return.
use_external | True (default) add external sockets. |
Definition at line 237 of file http_command_mgr.cc.
Referenced by isc::d2::D2Process::init().
void isc::config::HttpCommandMgr::close | ( | bool | remove = true | ) |
Close http control socket.
garbageCollectListeners
must be called after.remove | When true remove the listeners immediately. |
Definition at line 247 of file http_command_mgr.cc.
Referenced by isc::dhcp::ControlledDhcpv4Srv::~ControlledDhcpv4Srv(), isc::dhcp::ControlledDhcpv6Srv::~ControlledDhcpv6Srv(), and isc::d2::D2Controller::deregisterCommands().
void isc::config::HttpCommandMgr::configure | ( | HttpCommandConfigPtr | config | ) |
Configure http control socket from configuration.
config | Configuration of the control http socket. |
Definition at line 242 of file http_command_mgr.cc.
Referenced by isc::dhcp::configureCommandChannel(), and isc::d2::D2Process::reconfigureCommandChannel().
void isc::config::HttpCommandMgr::garbageCollectListeners | ( | ) |
Removes listeners which are no longer in use.
This method should be called after server reconfiguration to remove listeners used previously (no longer used because the listening address and port has changed as a result of the reconfiguration). If there are no listeners additional to the one that is currently in use, the method has no effect. This method is reused to remove all listeners at shutdown time.
Definition at line 252 of file http_command_mgr.cc.
Referenced by isc::dhcp::Dhcpv4Srv::run(), isc::dhcp::Dhcpv6Srv::run(), and isc::d2::D2Process::runIO().
ConstHttpListenerPtr isc::config::HttpCommandMgr::getHttpListener | ( | ) | const |
Returns a const pointer to the HTTP listener.
Definition at line 257 of file http_command_mgr.cc.
|
static |
HttpCommandMgr is a singleton class.
This method returns reference to its sole instance.
Definition at line 213 of file http_command_mgr.cc.
Referenced by isc::dhcp::ControlledDhcpv4Srv::ControlledDhcpv4Srv(), isc::dhcp::ControlledDhcpv6Srv::ControlledDhcpv6Srv(), isc::dhcp::ControlledDhcpv4Srv::~ControlledDhcpv4Srv(), isc::dhcp::ControlledDhcpv6Srv::~ControlledDhcpv6Srv(), isc::dhcp::configureCommandChannel(), isc::d2::D2Controller::deregisterCommands(), isc::d2::D2Process::init(), isc::d2::D2Process::reconfigureCommandChannel(), isc::dhcp::Dhcpv4Srv::run(), isc::dhcp::Dhcpv6Srv::run(), and isc::d2::D2Process::runIO().
void isc::config::HttpCommandMgr::setConnectionTimeout | ( | const long | timeout | ) |
Override default connection timeout.
timeout | New connection timeout in milliseconds. |
Definition at line 227 of file http_command_mgr.cc.
void isc::config::HttpCommandMgr::setIdleConnectionTimeout | ( | const long | timeout | ) |
Override default idle connection timeout.
timeout | New connection timeout in milliseconds. |
Definition at line 232 of file http_command_mgr.cc.
void isc::config::HttpCommandMgr::setIOService | ( | const asiolink::IOServicePtr & | io_service | ) |
Sets IO service to be used by the http command manager.
The server should use this method to provide the Command Manager with the common IO service used by the server.
io_service | Pointer to the IO service. |
Definition at line 222 of file http_command_mgr.cc.
Referenced by isc::dhcp::ControlledDhcpv4Srv::ControlledDhcpv4Srv(), isc::dhcp::ControlledDhcpv6Srv::ControlledDhcpv6Srv(), and isc::d2::D2Process::init().