/// later.
/// \throw isc::Unexpected if called second time.
virtual void load() = 0;
+
/// \brief Put the changes to effect.
///
/// This replaces the old version of zone with the one previously prepared
/// \throw isc::Unexpected if called without previous load() or for the
/// second time or cleanup() was called already.
virtual void install() = 0;
+
/// \brief Clean up resources.
///
/// This releases all resources held by owned zone data. That means the
/// \param rrclass The class of the zone.
ZoneWriterLocal(ZoneTableSegment* segment, const LoadAction& load_action,
const dns::Name& name, const dns::RRClass& rrclass);
+
/// \brief Destructor
~ZoneWriterLocal();
+
/// \brief Loads the data.
///
/// This prepares an empty ZoneData and calls load_action (passed to
/// of the object.
/// \throw Whatever the load_action throws, it is propagated up.
virtual void load();
+
/// \brief Installs the zone.
///
/// This simply calls the install_action.
/// cleanup() was already called.
/// \throw Whatever the install_action throws, it is propagated up.
virtual void install();
+
/// \brief Clean up memory.
///
/// Cleans up the memory used by load()ed zone if not yet installed, or