Abstract interface extending base simple data source for host reservations to host cache.
More...
|
virtual | ~CacheHostDataSource () |
| Default destructor implementation.
|
|
virtual size_t | capacity () const =0 |
| Return the maximum number of entries.
|
|
virtual void | flush (size_t count)=0 |
| Flush entries.
|
|
virtual size_t | insert (const ConstHostPtr &host, bool overwrite)=0 |
| Insert a host into the cache.
|
|
virtual bool | remove (const HostPtr &host)=0 |
| Remove a host from the cache.
|
|
virtual size_t | size () const =0 |
| Return the number of entries.
|
|
virtual | ~BaseHostDataSource () |
| Default destructor implementation.
|
|
virtual void | add (const HostPtr &host)=0 |
| Adds a new host to the collection.
|
|
virtual void | commit () |
| Commit Transactions.
|
|
virtual bool | del (const SubnetID &subnet_id, const asiolink::IOAddress &addr)=0 |
| Attempts to delete hosts by (subnet-id, address)
|
|
virtual bool | del4 (const SubnetID &subnet_id, const Host::IdentifierType &identifier_type, const uint8_t *identifier_begin, const size_t identifier_len)=0 |
| Attempts to delete a host by (subnet-id4, identifier, identifier-type)
|
|
virtual bool | del6 (const SubnetID &subnet_id, const Host::IdentifierType &identifier_type, const uint8_t *identifier_begin, const size_t identifier_len)=0 |
| Attempts to delete a host by (subnet-id6, identifier, identifier-type)
|
|
virtual ConstHostPtr | get4 (const SubnetID &subnet_id, const asiolink::IOAddress &address) const =0 |
| Returns a host connected to the IPv4 subnet and having a reservation for a specified IPv4 address.
|
|
virtual ConstHostPtr | get4 (const SubnetID &subnet_id, const Host::IdentifierType &identifier_type, const uint8_t *identifier_begin, const size_t identifier_len) const =0 |
| Returns a host connected to the IPv4 subnet.
|
|
virtual ConstHostPtr | get6 (const asiolink::IOAddress &prefix, const uint8_t prefix_len) const =0 |
| Returns a host using the specified IPv6 prefix.
|
|
virtual ConstHostPtr | get6 (const SubnetID &subnet_id, const asiolink::IOAddress &address) const =0 |
| Returns a host connected to the IPv6 subnet and having a reservation for a specified IPv6 address or prefix.
|
|
virtual ConstHostPtr | get6 (const SubnetID &subnet_id, const Host::IdentifierType &identifier_type, const uint8_t *identifier_begin, const size_t identifier_len) const =0 |
| Returns a host connected to the IPv6 subnet.
|
|
virtual ConstHostCollection | getAll (const Host::IdentifierType &identifier_type, const uint8_t *identifier_begin, const size_t identifier_len) const =0 |
| Return all hosts connected to any subnet for which reservations have been made using a specified identifier.
|
|
virtual ConstHostCollection | getAll4 (const asiolink::IOAddress &address) const =0 |
| Returns a collection of hosts using the specified IPv4 address.
|
|
virtual ConstHostCollection | getAll4 (const SubnetID &subnet_id) const =0 |
| Return all hosts in a DHCPv4 subnet.
|
|
virtual ConstHostCollection | getAll4 (const SubnetID &subnet_id, const asiolink::IOAddress &address) const =0 |
| Returns all hosts connected to the IPv4 subnet and having a reservation for a specified address.
|
|
virtual ConstHostCollection | getAll6 (const asiolink::IOAddress &address) const =0 |
| Returns all hosts having a reservation for a specified address or delegated prefix (lease) in all subnets.
|
|
virtual ConstHostCollection | getAll6 (const SubnetID &subnet_id) const =0 |
| Return all hosts in a DHCPv6 subnet.
|
|
virtual ConstHostCollection | getAll6 (const SubnetID &subnet_id, const asiolink::IOAddress &address) const =0 |
| Returns all hosts connected to the IPv6 subnet and having a reservation for a specified address or delegated prefix (lease).
|
|
virtual ConstHostCollection | getAllbyHostname (const std::string &hostname) const =0 |
| Return all hosts with a hostname.
|
|
virtual ConstHostCollection | getAllbyHostname4 (const std::string &hostname, const SubnetID &subnet_id) const =0 |
| Return all hosts with a hostname in a DHCPv4 subnet.
|
|
virtual ConstHostCollection | getAllbyHostname6 (const std::string &hostname, const SubnetID &subnet_id) const =0 |
| Return all hosts with a hostname in a DHCPv6 subnet.
|
|
virtual ConstHostCollection | getPage4 (const SubnetID &subnet_id, size_t &source_index, uint64_t lower_host_id, const HostPageSize &page_size) const =0 |
| Returns range of hosts in a DHCPv4 subnet.
|
|
virtual ConstHostCollection | getPage4 (size_t &source_index, uint64_t lower_host_id, const HostPageSize &page_size) const =0 |
| Returns range of hosts.
|
|
virtual ConstHostCollection | getPage6 (const SubnetID &subnet_id, size_t &source_index, uint64_t lower_host_id, const HostPageSize &page_size) const =0 |
| Returns range of hosts in a DHCPv6 subnet.
|
|
virtual ConstHostCollection | getPage6 (size_t &source_index, uint64_t lower_host_id, const HostPageSize &page_size) const =0 |
| Returns range of hosts.
|
|
virtual isc::db::DatabaseConnection::ParameterMap | getParameters () const |
| Return backend parameters.
|
|
virtual std::string | getType () const =0 |
| Return backend type.
|
|
virtual bool | isUnusable () |
| Flag which indicates if the host manager has at least one unusable connection.
|
|
virtual void | rollback () |
| Rollback Transactions.
|
|
virtual bool | setIPReservationsUnique (const bool unique)=0 |
| Controls whether IP reservations are unique or non-unique.
|
|
virtual void | update (HostPtr const &host) |
| Attempts to update an existing host entry.
|
|
Abstract interface extending base simple data source for host reservations to host cache.
Only the insert() method is required to use the cache.
Definition at line 18 of file cache_host_data_source.h.