NAME
WebService::OPNsense::Role::KeaItemCrud - Shared CRUD methods for Kea DHCP item types
VERSION
version 0.002
DESCRIPTION
Provides shared CRUD methods for Kea DHCP item types (option, peer, reservation, subnet). Consuming classes may also use the _kea_*_item helpers to define additional item types (e.g. pd_pool in DHCPv6).
This role is consumed by WebService::OPNsense::Kea::Dhcpv4 and WebService::OPNsense::Kea::Dhcpv6.
PROVIDED METHODS
add_option / add_peer / add_reservation / add_subnet
my $result = $ctrl->add_option($option_data);
del_option / del_peer / del_reservation / del_subnet
my $result = $ctrl->del_option($uuid);
get_option / get_peer / get_reservation / get_subnet
my $result = $ctrl->get_option($uuid);
search_option / search_peer / search_reservation / search_subnet
my $results = $ctrl->search_option(%params);
set_option / set_peer / set_reservation / set_subnet
my $result = $ctrl->set_option($uuid, $option_data);
HELPERS
These methods are available to consuming classes for defining additional item types:
_kea_add_item
$self->_kea_add_item('pd_pool', $data);
_kea_del_item
$self->_kea_del_item('pd_pool', $uuid);
_kea_get_item
$self->_kea_get_item('pd_pool', $uuid);
_kea_search_item
$self->_kea_search_item('pd_pool', %params);
_kea_set_item
$self->_kea_set_item('pd_pool', $uuid, $data);
client
my $http_client = $ctrl->client;
Returns the underlying HTTP client object used for API requests.
SEE ALSO
WebService::OPNsense::Kea::Dhcpv4, WebService::OPNsense::Kea::Dhcpv6
AUTHOR
Dean Hamstead <dean@fragfest.com.au>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2026 by Dean Hamstead.
This is free software, licensed under:
The MIT (X11) License