From: Mukund Sivaraman Date: Tue, 15 Jan 2013 06:28:08 +0000 (+0530) Subject: [2435] Return a isc::datasrc::RRsetCollectionBase in ZoneUpdater::getRRsetCollection() X-Git-Tag: bind10-1.0.0-rc-release~105 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=568655c55d104fcee40289810dd4431188a989f1;p=thirdparty%2Fkea.git [2435] Return a isc::datasrc::RRsetCollectionBase in ZoneUpdater::getRRsetCollection() --- diff --git a/src/lib/datasrc/database.cc b/src/lib/datasrc/database.cc index 093f579f25..567539e1b5 100644 --- a/src/lib/datasrc/database.cc +++ b/src/lib/datasrc/database.cc @@ -1436,7 +1436,7 @@ public: virtual ZoneFinder& getFinder() { return (*finder_); } - virtual isc::dns::RRsetCollectionBase& getRRsetCollection() { + virtual isc::datasrc::RRsetCollectionBase& getRRsetCollection() { if (!rrset_collection_) { // This is only assigned the first time and remains for the // lifetime of the DatabaseUpdater. diff --git a/src/lib/datasrc/rrset_collection_base.h b/src/lib/datasrc/rrset_collection_base.h index 2a0845c80a..0e20d74273 100644 --- a/src/lib/datasrc/rrset_collection_base.h +++ b/src/lib/datasrc/rrset_collection_base.h @@ -22,6 +22,9 @@ namespace isc { namespace datasrc { +/// \brief A forward declaration +class ZoneUpdater; + /// \brief datasrc derivation of \c isc::dns::RRsetCollectionBase. /// /// This is an abstract class that adds datasrc related detail to @@ -67,6 +70,13 @@ private: isc::dns::RRClass rrclass_; }; +/// \brief A pointer-like type pointing to an +/// \c isc::datasrc::RRsetCollectionBase object. +/// +/// This type is used to handle RRsetCollections in a polymorphic manner +/// in libdatasrc. +typedef boost::shared_ptr RRsetCollectionPtr; + } // end of namespace datasrc } // end of namespace isc diff --git a/src/lib/datasrc/tests/database_unittest.cc b/src/lib/datasrc/tests/database_unittest.cc index 7d9b1b148a..91249160e3 100644 --- a/src/lib/datasrc/tests/database_unittest.cc +++ b/src/lib/datasrc/tests/database_unittest.cc @@ -4172,7 +4172,7 @@ public: {} ZoneUpdaterPtr updater; - RRsetCollectionBase& collection; + isc::datasrc::RRsetCollectionBase& collection; }; TYPED_TEST(RRsetCollectionTest, find) { diff --git a/src/lib/datasrc/tests/master_loader_callbacks_test.cc b/src/lib/datasrc/tests/master_loader_callbacks_test.cc index fb4487ad48..dc44461589 100644 --- a/src/lib/datasrc/tests/master_loader_callbacks_test.cc +++ b/src/lib/datasrc/tests/master_loader_callbacks_test.cc @@ -65,7 +65,7 @@ public: virtual ZoneFinder& getFinder() { isc_throw(isc::NotImplemented, "Not to be called in this test"); } - virtual isc::dns::RRsetCollectionBase& getRRsetCollection() { + virtual isc::datasrc::RRsetCollectionBase& getRRsetCollection() { isc_throw(isc::NotImplemented, "Not to be called in this test"); } virtual void deleteRRset(const isc::dns::AbstractRRset&) { diff --git a/src/lib/datasrc/tests/zone_loader_unittest.cc b/src/lib/datasrc/tests/zone_loader_unittest.cc index bff2b29c39..943ea2fbfd 100644 --- a/src/lib/datasrc/tests/zone_loader_unittest.cc +++ b/src/lib/datasrc/tests/zone_loader_unittest.cc @@ -89,7 +89,7 @@ public: virtual ZoneFinder& getFinder() { return (finder_); } - virtual isc::dns::RRsetCollectionBase& getRRsetCollection() { + virtual isc::datasrc::RRsetCollectionBase& getRRsetCollection() { isc_throw(isc::NotImplemented, "Method not used in tests"); } virtual void addRRset(const isc::dns::AbstractRRset& rrset) { diff --git a/src/lib/datasrc/zone.h b/src/lib/datasrc/zone.h index 36651d4f11..8aaf9a2158 100644 --- a/src/lib/datasrc/zone.h +++ b/src/lib/datasrc/zone.h @@ -18,10 +18,10 @@ #include #include #include -#include #include #include +#include #include #include @@ -741,6 +741,9 @@ typedef boost::shared_ptr ZoneFinderContextPtr; /// \c ZoneFinder::Context object. typedef boost::shared_ptr ConstZoneFinderContextPtr; +/// \brief A forward declaration +class RRsetCollectionBase; + /// The base class to make updates to a single zone. /// /// On construction, each derived class object will start a "transaction" @@ -806,7 +809,7 @@ public: /// Return an RRsetCollection for the updater. /// /// This method returns an \c RRsetCollection for the updater, - /// implementing the \c isc::dns::RRsetCollectionBase + /// implementing the \c isc::datasrc::RRsetCollectionBase /// interface. Typically, the returned \c RRsetCollection is a /// singleton for its \c ZoneUpdater. The returned RRsetCollection /// object must not be used after its corresponding \c ZoneUpdater @@ -819,7 +822,7 @@ public: /// of the \c Zonefinder returned by \c getFinder() with regards to /// adding and deleting RRsets via \c addRRset() and \c /// deleteRRset(). - virtual isc::dns::RRsetCollectionBase& getRRsetCollection() = 0; + virtual isc::datasrc::RRsetCollectionBase& getRRsetCollection() = 0; /// Add an RRset to a zone via the updater /// diff --git a/src/lib/dns/rrset_collection_base.h b/src/lib/dns/rrset_collection_base.h index f757321649..b00435d749 100644 --- a/src/lib/dns/rrset_collection_base.h +++ b/src/lib/dns/rrset_collection_base.h @@ -171,12 +171,6 @@ public: } }; -/// \brief A pointer-like type pointing to an \c RRsetCollection object. -/// -/// This type is used to handle RRsetCollections in a polymorphic manner -/// in the BIND 10 codebase. -typedef boost::shared_ptr RRsetCollectionPtr; - } // end of namespace dns } // end of namespace isc