61 std::map<std::string, std::string>
services{{
"full-sync",
"ahri_full_sync"}};
85 explicit ParseError(std::string message) : message(std::move(message))
93 [[nodiscard]]
const char*
what() const noexcept
override
95 return message.c_str();
119 [[nodiscard]]
const AdminDB&
admindb()
const;
121 [[nodiscard]]
const LocalDB&
localdb()
const;
123 [[nodiscard]]
const AhriNode&
ahri_node()
const;
125 [[nodiscard]]
const Icinga2&
icinga2()
const;
Exception for errors during configuration parsing.
ParseError & operator=(ParseError &&)=default
ParseError & operator=(const ParseError &)=default
ParseError(const ParseError &)=default
ParseError(std::string message)
const char * what() const noexcept override
ParseError(ParseError &&)=default
~ParseError() override=default
Configuration parser for admindb-host-reservation-importer configuration.
Config(Config &&o) noexcept
const AdminDB & admindb() const
Return parsed AdminDB-specific configuration.
const Icinga2 & icinga2() const
Return parsed Icinga2 API information.
const AhriNode & ahri_node() const
Return parsed AHRI node information.
Config(std::istream &config)
Create an instance and parse the given std::istream as configuration file.
const LocalDB & localdb() const
Return parsed DHCP local DB specific configuration options.
Config(const Config &)=delete
Config & operator=(const Config &)=delete
std::unique_ptr< ahri::Config > config
AdminDB-specific configuration options.
std::vector< DBHost > servers
Configuration for a Kea node running ahri.
bool icinga2_reporting_enabled
Common configuration options for a database connection.
Host configuration options for a database connection.
Configuration for a Icinga2 daemon monitoring this node.
std::map< std::string, std::string > services
DHCP local DB specific configuration options.