BIND 10 #2470: use MasterLoader in memory::ZoneDataLoader

BIND 10 Development do-not-reply at isc.org
Thu Nov 8 23:48:22 UTC 2012


#2470: use MasterLoader in memory::ZoneDataLoader
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:
                Type:  task          |                       Status:  new
            Priority:  medium        |                    Milestone:  Next-
           Component:  data source   |  Sprint-Proposed
           Sensitive:  0             |                     Keywords:
         Sub-Project:  DNS           |              Defect Severity:  N/A
Estimated Difficulty:  0             |  Feature Depending on Ticket:
         Total Hours:  0             |  loadzone-ng
                                     |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------
 Subtask of #2368 (another overlooked one).

 Depend on #2376 and #2377.

 We cannot directly use the `ZoneUpdater` interface for loading zone in
 memory because of the internal differences (besides, the zone updater
 isn't implemented in in-memory anyway).

 So we need to do:
 - define a separate derived class of `MasterLoaderContextBase` for
   in-memory.  its constructor would take `ZoneDataLoader` (defined in
   memory/zone_data_loader.cc), and its `addRRset` would call
   `ZoneDataLoader::addFromLoad()`:
 {{{#!cpp
 class LoaderContext : public isc::dns::MasterLoaderContextBase {
     LoaderContext(ZoneDataLoader& zone_data_loader) :
         zone_data_loader_(zone_data_loader) {}
     virtual void addRrset(const RRsetPtr& rrset) {
         zone_data_loader_.addFromLoad(rrset);
     }
 };
 }}}
 - update zone_data_loader.cc so that it uses `MasterLoader` and the
   `LoaderContext` introduced in the first step, instead of the
   `masterLoad` function.

-- 
Ticket URL: <http://bind10.isc.org/ticket/2470>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list