BIND 10 #2376: define LoaderContext class
BIND 10 Development
do-not-reply at isc.org
Fri Oct 19 06:59:36 UTC 2012
#2376: define LoaderContext class
-------------------------------------+-------------------------------------
Reporter: jinmei | Owner:
Type: task | Status: new
Priority: medium | Milestone: New
Component: data source | Tasks
Sensitive: 0 | Keywords:
Sub-Project: DNS | Defect Severity: N/A
Estimated Difficulty: 0 | Feature Depending on Ticket:
Total Hours: 0 | scalable inmemory
| Add Hours to Ticket: 0
| Internal?: 0
-------------------------------------+-------------------------------------
subtask of #2368. no dependency.
This is basically to implement the `dns::LoaderContext` base class
and its derived version in datasrc mostly as described in
http://bind10.isc.org/wiki/ZoneLoadingAPIDesign
with some simple tests to check the behavior.
But I propose defining callbacks as a separate struct so we can use it
independently (thinking about passing it to rdata factories).
The key part would like this.
{{{#!cpp
class dns::MasterLoader {
// other part of this class isn't defined yet.
struct Callbacks {
boost::function<void(const string& error_msg) error;
boost::function<void(const string& error_msg) warn;
};
};
class MasterLoaderContextBase {
public:
virtual void add(RRsetPtr rrset) = 0;
virtual MasterLoader::Callbacks& getCallbacks() const = 0;
};
class datasrc::LoaderContext : dns::MasterLoaderContextBase {
// define it.
};
}}}
--
Ticket URL: <http://bind10.isc.org/ticket/2376>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development
More information about the bind10-tickets
mailing list