Kea  1.5.0
isc::agent::CtrlAgentCfgContext Class Reference

Control Agent Configuration Context. More...

#include <ca_cfg_mgr.h>

+ Inheritance diagram for isc::agent::CtrlAgentCfgContext:

Public Member Functions

 CtrlAgentCfgContext ()
 Default constructor. More...
 
virtual process::ConfigPtr clone ()
 Creates a clone of this context object. More...
 
isc::data::ConstElementPtr getControlSocketInfo (const std::string &service) const
 Returns information about control socket. More...
 
std::string getControlSocketInfoSummary () const
 Returns socket configuration summary in a textual format. More...
 
isc::hooks::HooksConfiggetHooksConfig ()
 Returns non-const reference to configured hooks libraries. More...
 
const isc::hooks::HooksConfiggetHooksConfig () const
 Returns const reference to configured hooks libraries. More...
 
std::string getHttpHost () const
 Returns http-host parameter. More...
 
uint16_t getHttpPort () const
 Returns the TCP post the HTTP server will listen on. More...
 
void setControlSocketInfo (const isc::data::ConstElementPtr &control_socket, const std::string &service)
 Sets information about the control socket. More...
 
void setHttpHost (const std::string &host)
 Sets http-host parameter. More...
 
void setHttpPort (const uint16_t port)
 Sets http port. More...
 
virtual isc::data::ElementPtr toElement () const
 Unparse a configuration object. More...
 
- Public Member Functions inherited from isc::process::ConfigBase
const process::LoggingInfoStoragegetLoggingInfo () const
 Returns logging specific configuration. More...
 
void addLoggingInfo (const process::LoggingInfo &logging_info)
 Sets logging specific configuration. More...
 
void applyLoggingCfg () const
 Apply logging configuration to log4cplus. More...
 
bool equals (const ConfigBase &other) const
 Compares two configuration. More...
 
process::ConstConfigControlInfoPtr getConfigControlInfo () const
 Fetches a read-only copy of the configuration control information. More...
 
void setConfigControlInfo (const process::ConfigControlInfoPtr &config_ctl_info)
 Set the configuration control information. More...
 
- Public Member Functions inherited from isc::data::UserContext
void contextToElement (data::ElementPtr map) const
 Merge unparse a user_context object. More...
 
data::ConstElementPtr getContext () const
 Returns const pointer to the user context. More...
 
void setContext (const data::ConstElementPtr &ctx)
 Sets user context. More...
 
- Public Member Functions inherited from isc::data::CfgToElement
virtual ~CfgToElement ()
 Destructor. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from isc::data::UserContext
static data::ElementPtr toElement (data::ConstElementPtr map)
 Copy extracting comments an Element map. More...
 
- Protected Member Functions inherited from isc::process::ConfigBase
void copy (ConfigBase &new_config) const
 Copies the current configuration to a new configuration. More...
 
- Protected Attributes inherited from isc::data::UserContext
data::ConstElementPtr user_context_
 Pointer to the user context (may be NULL) More...
 

Detailed Description

Control Agent Configuration Context.

Implement the storage container for configuration context. It provides a single enclosure for the storage of configuration parameters and any other Control Agent specific information that needs to be accessible during configuration parsing as well as to the application as a whole. It is derived from the context base class, ConfigBase.

Definition at line 31 of file ca_cfg_mgr.h.

Constructor & Destructor Documentation

◆ CtrlAgentCfgContext()

isc::agent::CtrlAgentCfgContext::CtrlAgentCfgContext ( )

Default constructor.

Definition at line 23 of file ca_cfg_mgr.cc.

Referenced by clone().

Member Function Documentation

◆ clone()

virtual process::ConfigPtr isc::agent::CtrlAgentCfgContext::clone ( )
inlinevirtual

Creates a clone of this context object.

Note this method does not do deep copy the information about control sockets. That data is stored as ConstElementPtr (a shared pointer) to the actual data.

Returns
A pointer to the new clone.

Definition at line 43 of file ca_cfg_mgr.h.

References CtrlAgentCfgContext().

+ Here is the call graph for this function:

◆ getControlSocketInfo()

data::ConstElementPtr isc::agent::CtrlAgentCfgContext::getControlSocketInfo ( const std::string &  service) const

Returns information about control socket.

This method returns Element tree structure that describes the control socket (or null pointer if the socket is not defined for a particular server type). This information is expected to be compatible with data passed to isc::config::CommandMgr::openCommandSocket.

Parameters
serviceserver being controlled
Returns
pointer to the Element that holds control-socket map (or NULL)

Definition at line 118 of file ca_cfg_mgr.cc.

◆ getControlSocketInfoSummary()

std::string isc::agent::CtrlAgentCfgContext::getControlSocketInfoSummary ( ) const

Returns socket configuration summary in a textual format.

Definition at line 130 of file ca_cfg_mgr.cc.

◆ getHooksConfig() [1/2]

isc::hooks::HooksConfig& isc::agent::CtrlAgentCfgContext::getHooksConfig ( )
inline

Returns non-const reference to configured hooks libraries.

Returns
non-const reference to configured hooks libraries.

Definition at line 104 of file ca_cfg_mgr.h.

◆ getHooksConfig() [2/2]

const isc::hooks::HooksConfig& isc::agent::CtrlAgentCfgContext::getHooksConfig ( ) const
inline

Returns const reference to configured hooks libraries.

Returns
const reference to configured hooks libraries.

Definition at line 111 of file ca_cfg_mgr.h.

◆ getHttpHost()

std::string isc::agent::CtrlAgentCfgContext::getHttpHost ( ) const
inline

Returns http-host parameter.

Returns
Hostname or IP address where the agent's HTTP service is available.

Definition at line 85 of file ca_cfg_mgr.h.

◆ getHttpPort()

uint16_t isc::agent::CtrlAgentCfgContext::getHttpPort ( ) const
inline

Returns the TCP post the HTTP server will listen on.

Definition at line 97 of file ca_cfg_mgr.h.

◆ setControlSocketInfo()

void isc::agent::CtrlAgentCfgContext::setControlSocketInfo ( const isc::data::ConstElementPtr control_socket,
const std::string &  service 
)

Sets information about the control socket.

This method stores Element tree structure that describes the control socket. This information is expected to be compatible with data passed to isc::config::CommandMgr::openCommandSocket.

Parameters
control_socketElement that holds control-socket map
serviceserver being controlled

Definition at line 124 of file ca_cfg_mgr.cc.

◆ setHttpHost()

void isc::agent::CtrlAgentCfgContext::setHttpHost ( const std::string &  host)
inline

Sets http-host parameter.

Parameters
hostHostname or IP address where the agent's HTTP service will be available.

Definition at line 77 of file ca_cfg_mgr.h.

◆ setHttpPort()

void isc::agent::CtrlAgentCfgContext::setHttpPort ( const uint16_t  port)
inline

Sets http port.

Parameters
portsets the TCP port the HTTP server will listen on

Definition at line 92 of file ca_cfg_mgr.h.

◆ toElement()

ElementPtr isc::agent::CtrlAgentCfgContext::toElement ( ) const
virtual

Unparse a configuration object.

Returns an element which must parse into the same object, i.e.

for all valid config C parse(parse(C)->toElement()) == parse(C)
Returns
a pointer to a configuration which can be parsed into the initial configuration object

Reimplemented from isc::process::ConfigBase.

Definition at line 147 of file ca_cfg_mgr.cc.

References isc::data::UserContext::contextToElement(), and isc::hooks::HooksConfig::toElement().

+ Here is the call graph for this function:

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