7#ifndef CTRL_AGENT_PROCESS_H
8#define CTRL_AGENT_PROCESS_H
130 bool check_only =
false);
160 std::map<std::pair<isc::asiolink::IOAddress, uint16_t>,
HttpSocketInfoPtr> sockets_;
Kea Control Agent Application Process.
bool isListening() const
Checks if the process is listening to the HTTP requests.
isc::http::ConstHttpListenerPtr getHttpListener(HttpSocketInfoPtr info=HttpSocketInfoPtr()) const
Returns a const pointer to the HTTP listener.
virtual isc::data::ConstElementPtr shutdown(isc::data::ConstElementPtr args)
Initiates the process's shutdown process.
virtual ~CtrlAgentProcess()
Destructor.
CtrlAgentProcess(const char *name, const asiolink::IOServicePtr &io_service)
Constructor.
virtual void init()
Initialize the Control Agent process.
CtrlAgentCfgMgrPtr getCtrlAgentCfgMgr()
Returns a pointer to the configuration manager.
virtual isc::data::ConstElementPtr configure(isc::data::ConstElementPtr config_set, bool check_only=false)
Processes the given configuration.
void closeCommandSockets()
Close http control sockets.
virtual void run()
Implements the process's event loop.
Application Process Interface.
boost::shared_ptr< CtrlAgentCfgContext > CtrlAgentCfgContextPtr
Pointer to a configuration context.
boost::shared_ptr< CtrlAgentProcess > CtrlAgentProcessPtr
Defines a shared pointer to CtrlAgentProcess.
boost::shared_ptr< CtrlAgentCfgMgr > CtrlAgentCfgMgrPtr
Defines a shared pointer to CtrlAgentCfgMgr.
boost::shared_ptr< HttpSocketInfo > HttpSocketInfoPtr
Pointer to a HttpSocketInfo object.
boost::shared_ptr< IOService > IOServicePtr
Defines a smart pointer to an IOService instance.
boost::shared_ptr< const Element > ConstElementPtr
boost::shared_ptr< const HttpListener > ConstHttpListenerPtr
Pointer to the const HttpListener.
boost::shared_ptr< HttpListener > HttpListenerPtr
Pointer to the HttpListener.
Defines the logger used by the top-level component of kea-lfc.
Structure used to store HTTP/HTTPS connection data.
HttpSocketInfo()
Constructor.
~HttpSocketInfo()=default
Destructor.
bool usable_
Flag which indicates if socket can be reused.
CtrlAgentCfgContextPtr config_
Pointer to the socket config.
isc::http::HttpListenerPtr listener_
Pointer to HTTP/HTTPS listener.