Kea 2.7.3
http_command_mgr.h
Go to the documentation of this file.
1// Copyright (C) 2024 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 HTTP_COMMAND_MGR_H
8#define HTTP_COMMAND_MGR_H
9
10#include <asiolink/io_service.h>
13#include <http/listener.h>
14#include <boost/noncopyable.hpp>
15
16namespace isc {
17namespace config {
18
20class HttpCommandMgrImpl;
21
25class HttpCommandMgr : public HookedCommandMgr, public boost::noncopyable {
26public:
27
32 static HttpCommandMgr& instance();
33
39 void setIOService(const asiolink::IOServicePtr& io_service);
40
44 void setConnectionTimeout(const long timeout);
45
49 void setIdleConnectionTimeout(const long timeout);
50
57 void addExternalSockets(bool use_external = true);
58
63
70 void close(bool remove = true);
71
81
87
88private:
89
92
94 boost::shared_ptr<HttpCommandMgrImpl> impl_;
95};
96
97} // end of isc::config namespace
98} // end of isc namespace
99#endif
Command Manager which can delegate commands to a hook library.
HTTP Commands Manager implementation for the Kea servers.
void setIdleConnectionTimeout(const long timeout)
Override default idle connection timeout.
isc::http::ConstHttpListenerPtr getHttpListener() const
Returns a const pointer to the HTTP listener.
void setConnectionTimeout(const long timeout)
Override default connection timeout.
void addExternalSockets(bool use_external=true)
Use external sockets flag.
static HttpCommandMgr & instance()
HttpCommandMgr is a singleton class.
void garbageCollectListeners()
Removes listeners which are no longer in use.
void setIOService(const asiolink::IOServicePtr &io_service)
Sets IO service to be used by the command manager.
void close(bool remove=true)
Close control socket.
void configure(HttpCommandConfigPtr config)
Configure control socket from configuration.
boost::shared_ptr< HttpCommandConfig > HttpCommandConfigPtr
Pointer to a HttpCommandConfig object.
boost::shared_ptr< const HttpListener > ConstHttpListenerPtr
Pointer to the const HttpListener.
Definition listener.h:153
Defines the logger used by the top-level component of kea-lfc.