BIND 10 #2432: define and implement base and libdns++ version of RRsetCollection
BIND 10 Development
do-not-reply at isc.org
Tue Jan 1 11:31:30 UTC 2013
#2432: define and implement base and libdns++ version of RRsetCollection
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: task | vorner
Priority: medium | Status:
Component: libdns++ | reviewing
Keywords: | Milestone:
Sensitive: 0 | Sprint-20130108
Sub-Project: DNS | Resolution:
Estimated Difficulty: 5 | CVSS Scoring:
Total Hours: 0 | Defect Severity: N/A
| Feature Depending on Ticket:
| loadzone-ng
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
Changes (by muks):
* owner: muks => vorner
Comment:
Hi Jinmei
Replying to [comment:15 jinmei]:
> Please cherry-pick 823f41b on the trac2433 branch. The original
> version doesn't compile for my environment (see commit log - this type
> of portability issues sometimes happen).
Done.
Replying to [comment:16 jinmei]:
> While working on #2433 I've noticed a few things (incorrectly
> updated #2433 with those comments, now copying them to the correct
> ticket...)
>
> - please add rrset_collection(,_base).h to libdns___include_HEADERS in
Makefile.am.
Done.
> - in RRsetCollectionBase, protected things should generally be
documented sufficiently detailed so that derived class implementor can
implement their version from the documentation.
Done.
> - Also for iterator. And, btw, per naming convention it should be named
something like Iterator.
Documentation added. For renaming to `Iterator`, it seems that for
collections with `std::iterator`s, the preferred naming is
`CollectionType::iterator` which is why it was named such. If you still
think this should be changed to `Iterator`, please tell me and I'll update
it.
> - I'd like to suggest defining another version of constructor that takes
istream. That would be useful for tests (and probably for some other
general cases).
Done.
> - I'd explain what kind of collection is constructed by the default
constructor.
I did not understand this.
> - we need to define a virtual destructor in the base class.
Done.
Replying to [comment:18 jinmei]:
> And yet another...I'd explain the ownership of the passed rrset after
> the call:
> {{{#!cpp
> /// \brief Add an RRset to the collection.
> ///
> /// Does not do any validation whether \c rrset belongs to a
> /// particular zone or not. It throws an \c isc::InvalidParameter
> /// exception if an rrset with the same class, type and name already
> /// exists.
> void addRRset(isc::dns::RRsetPtr rrset);
> }}}
Done. :)
--
Ticket URL: <http://bind10.isc.org/ticket/2432#comment:20>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list