kea-custom-hooks
FeM custom hooks libraries for Kea DHCP
ArpwatchRequestHandler.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <optional>
4#include <string>
5#include <string_view>
6
8
9namespace aai
10{
11class XmlRpcServer;
12
21{
22public:
24 {
25 constexpr static const char* RESOLVE_IP_TO_MAC{"resolveIpToMac"};
26 constexpr static const char* RESOLVE_MAC_TO_IP{"resolveMacToIp"};
27 };
28
29 explicit ArpwatchRequestHandler(HiredisAdapter& redis) : redis(redis)
30 {}
36
40 void register_method_handlers(XmlRpcServer& rpc_server);
41
56 std::optional<std::string> resolve_ip_to_mac(std::string_view ip);
58
59private:
60 HiredisAdapter& redis;
61};
62} // namespace aai
A wrapper for the hiredis C interface with multi-client support.
High-level handler for ARPwatch requests.
void register_method_handlers(XmlRpcServer &rpc_server)
Register this instance's method handlers in the aai::XmlRpcServer.
ArpwatchRequestHandler(const ArpwatchRequestHandler &)=delete
ArpwatchRequestHandler(HiredisAdapter &redis)
ArpwatchRequestHandler & operator=(ArpwatchRequestHandler &&)=delete
ArpwatchRequestHandler(ArpwatchRequestHandler &&)=delete
ArpwatchRequestHandler & operator=(const ArpwatchRequestHandler &)=delete
std::optional< std::string > resolve_ip_to_mac(std::string_view ip)
Abstraction for an XML-RPC server.