summaryrefslogtreecommitdiffstats
path: root/src/lib/dhcpsrv/writable_host_data_source.h
diff options
context:
space:
mode:
authorFrancis Dupont <fdupont@isc.org>2019-01-13 17:11:57 +0100
committerFrancis Dupont <fdupont@isc.org>2019-01-29 10:49:05 +0100
commit3d94a41a771a599055b091bb9c651732c189aa9f (patch)
tree9e3a6cd8645ea05603b13382745b30e30b1e24ed /src/lib/dhcpsrv/writable_host_data_source.h
parent[313-return-a-list-of-all-reservations-by-subnet-id] Finished the getAll[46] ... (diff)
downloadkea-3d94a41a771a599055b091bb9c651732c189aa9f.tar.xz
kea-3d94a41a771a599055b091bb9c651732c189aa9f.zip
[313-return-a-list-of-all-reservations-by-subnet-id] Added getPage[46]
Diffstat (limited to 'src/lib/dhcpsrv/writable_host_data_source.h')
-rw-r--r--src/lib/dhcpsrv/writable_host_data_source.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/lib/dhcpsrv/writable_host_data_source.h b/src/lib/dhcpsrv/writable_host_data_source.h
index d3965c9e2f..1a398064f3 100644
--- a/src/lib/dhcpsrv/writable_host_data_source.h
+++ b/src/lib/dhcpsrv/writable_host_data_source.h
@@ -57,6 +57,36 @@ public:
virtual HostCollection
getAll6(const SubnetID& subnet_id) = 0;
+ /// @brief Returns range of hosts in a DHCPv4 subnet.
+ ///
+ /// @param subnet_id Subnet identifier.
+ /// @param source_index Index of the source.
+ /// @param lower_host_id Host identifier used as lower bound for the
+ /// returned range.
+ /// @param page_size maximum size of the page returned.
+ ///
+ /// @return Collection of non-const @c Host objects.
+ virtual HostCollection
+ getPage4(const SubnetID& subnet_id,
+ size_t& source_index,
+ uint64_t lower_host_id,
+ const HostPageSize& page_size) = 0;
+
+ /// @brief Returns range of hosts in a DHCPv6 subnet.
+ ///
+ /// @param subnet_id Subnet identifier.
+ /// @param source_index Index of the source.
+ /// @param lower_host_id Host identifier used as lower bound for the
+ /// returned range.
+ /// @param page_size maximum size of the page returned.
+ ///
+ /// @return Collection of non-const @c Host objects.
+ virtual HostCollection
+ getPage6(const SubnetID& subnet_id,
+ size_t& source_index,
+ uint64_t lower_host_id,
+ const HostPageSize& page_size) = 0;
+
/// @brief Returns a collection of hosts using the specified IPv4 address.
///
/// This method may return multiple @c Host objects if they are connected