7#include <asiolink/io_address.h>
8#include <dhcp/hwaddr.h>
14struct LocalDBClientPrivate;
34 LocalDBClient(std::string_view host, std::string_view port, std::string_view username,
35 std::string_view password, std::string_view database);
59 std::vector<AdminDBClient::HostUpdate>
74 std::vector<AdminDBClient::HostUpdate>
78 std::unique_ptr<LocalDBClientPrivate> p_impl;
Interface to the local Kea database.
LocalDBClient(const LocalDBClient &)=delete
LocalDBClient(std::string_view host, std::string_view port, std::string_view username, std::string_view password, std::string_view database)
void apply_host_updates(const std::vector< AdminDBClient::HostUpdate > &host_updates)
Apply a bunch of host updates to the local Kea database.
std::vector< AdminDBClient::HostUpdate > compare_full_sync(const std::vector< AdminDBClient::HostUpdate > &full_sync)
Compare the current database state to the result of a full sync from AdminDB.
static constexpr int DHCP_IDENTIFIER_TYPE_MAC
Kea DHCP identifier type MAC-adresss.
void apply_host_update(const AdminDBClient::HostUpdate &host_update)
Apply a host update to the local Kea database.
std::vector< AdminDBClient::HostUpdate > query_host_reservation(const isc::dhcp::HWAddr &mac)
Query the database for host reservations with the given MAC.