7 #ifndef RRSET_COLLECTION_H
8 #define RRSET_COLLECTION_H 1
13 #include <boost/tuple/tuple.hpp>
14 #include <boost/tuple/tuple_comparison.hpp>
115 void loaderCallback(
const std::string&,
size_t,
const std::string&);
117 typedef boost::tuple<isc::dns::RRClass, isc::dns::RRType, isc::dns::Name>
119 typedef std::map<CollectionKey, isc::dns::RRsetPtr> CollectionMap;
121 CollectionMap rrsets_;
136 CollectionMap::iterator it = iter_;
143 if (other_real == NULL) {
146 return (iter_ == other_real->iter_);
150 CollectionMap::iterator iter_;
160 #endif // RRSET_COLLECTION_H
The Name class encapsulates DNS names.
boost::shared_ptr< Iter > IterPtr
Wraps Iter with a reference count.
virtual isc::dns::ConstRRsetPtr find(const isc::dns::Name &name, const isc::dns::RRClass &rrclass, const isc::dns::RRType &rrtype) const
Find a matching RRset in the collection.
A helper iterator interface for RRsetCollectionBase.
virtual IterPtr getNext()
Returns an IterPtr wrapping an Iter pointing to the next AbstractRRset in sequence in the collection...
DnsIter(CollectionMap::iterator &iter)
bool removeRRset(const isc::dns::Name &name, const isc::dns::RRClass &rrclass, const isc::dns::RRType &rrtype)
Remove an RRset from the collection.
The RRClass class encapsulates DNS resource record classes.
libdns++ implementation of RRsetCollectionBase using an STL container.
virtual ~RRsetCollection()
Destructor.
virtual RRsetCollectionBase::IterPtr getBeginning()
Returns an IterPtr wrapping an Iter pointing to the beginning of the collection.
virtual const isc::dns::AbstractRRset & getValue()
Returns the AbstractRRset currently pointed to by the iterator.
void addRRset(isc::dns::RRsetPtr rrset)
Add an RRset to the collection.
Defines the logger used by the top-level component of kea-dhcp-ddns.
The AbstractRRset class is an abstract base class that models a DNS RRset.
RRsetCollection()
Constructor.
virtual bool equals(Iter &other)
Check if another iterator is equal to this one.
virtual RRsetCollectionBase::IterPtr getEnd()
Returns an IterPtr wrapping an Iter pointing past the end of the collection.
The RRType class encapsulates DNS resource record types.
boost::shared_ptr< const AbstractRRset > ConstRRsetPtr
A pointer-like type pointing to an (immutable) RRset object.
boost::shared_ptr< AbstractRRset > RRsetPtr
A pointer-like type pointing to an RRset object.
Generic class to represent a set of RRsets.