Kea 2.7.6
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>
12#include <http/listener.h>
13#include <boost/noncopyable.hpp>
14
15namespace isc {
16namespace config {
17
19class HttpCommandMgrImpl;
20
24class HttpCommandMgr : public boost::noncopyable {
25public:
26
31 static HttpCommandMgr& instance();
32
38 void setIOService(const asiolink::IOServicePtr& io_service);
39
43 void setConnectionTimeout(const long timeout);
44
48 void setIdleConnectionTimeout(const long timeout);
49
56 void addExternalSockets(bool use_external = true);
57
62
69 void close(bool remove = true);
70
80
86
87private:
88
91
93 boost::shared_ptr<HttpCommandMgrImpl> impl_;
94};
95
96} // end of isc::config namespace
97} // end of isc namespace
98#endif
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 http command manager.
void close(bool remove=true)
Close http control socket.
void configure(HttpCommandConfigPtr config)
Configure http 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:156
Defines the logger used by the top-level component of kea-lfc.