[svn] commit: r1045 - in /trunk/src/lib/config/cpp: ccsession.cc ccsession.h config_data.h
BIND 10 source code commits
bind10-changes at lists.isc.org
Sun Feb 28 21:52:11 UTC 2010
Author: jelte
Date: Sun Feb 28 21:52:10 2010
New Revision: 1045
Log:
make ModuleCCSession a subclass of ConfigData, so the module can directly get the configuration data it needs (same as in python version)
Modified:
trunk/src/lib/config/cpp/ccsession.cc
trunk/src/lib/config/cpp/ccsession.h
trunk/src/lib/config/cpp/config_data.h
Modified: trunk/src/lib/config/cpp/ccsession.cc
==============================================================================
--- trunk/src/lib/config/cpp/ccsession.cc (original)
+++ trunk/src/lib/config/cpp/ccsession.cc Sun Feb 28 21:52:10 2010
@@ -221,7 +221,7 @@
answer = createAnswer(2, ss.str());
} else {
// remove the values that have not changed
- isc::data::removeIdentical(new_config, getConfig());
+ isc::data::removeIdentical(new_config, getLocalConfig());
// handle config update
answer = config_handler_(new_config);
int rcode;
Modified: trunk/src/lib/config/cpp/ccsession.h
==============================================================================
--- trunk/src/lib/config/cpp/ccsession.h (original)
+++ trunk/src/lib/config/cpp/ccsession.h Sun Feb 28 21:52:10 2010
@@ -19,6 +19,7 @@
#include <string>
+#include <config/config_data.h>
#include <config/module_spec.h>
#include <cc/session.h>
#include <cc/data.h>
@@ -42,7 +43,7 @@
/// holds configuration information, and handles messages from
/// the command channel
///
-class ModuleCCSession {
+class ModuleCCSession : public ConfigData {
public:
/**
* Initialize a config/command session
@@ -89,7 +90,6 @@
*/
void set_command_handler(isc::data::ElementPtr(*command_handler)(const std::string& command, const isc::data::ElementPtr args)) { command_handler_ = command_handler; };
- const ElementPtr getConfig() { return config_; }
private:
void read_module_specification(const std::string& filename);
Modified: trunk/src/lib/config/cpp/config_data.h
==============================================================================
--- trunk/src/lib/config/cpp/config_data.h (original)
+++ trunk/src/lib/config/cpp/config_data.h Sun Feb 28 21:52:10 2010
@@ -44,6 +44,8 @@
/// and an empty configuration.
/// \param module_spec A ModuleSpec for the relevant module
ConfigData(const ModuleSpec& module_spec) : _module_spec(module_spec) { _config = Element::createFromString("{}"); }
+
+ virtual ~ConfigData() {};
/// Returns the value currently set for the given identifier
/// If no value is set, the default value (as specified by the
More information about the bind10-changes
mailing list