removed Config::getUnregistered. CONFIG_* macros should be used instead even for unregistered options
This commit is contained in:
parent
eaf1bcd9ee
commit
ddec6a8e1a
5 changed files with 19 additions and 14 deletions
|
@ -78,7 +78,7 @@ int main (int argc, char* argv[]) {
|
|||
|
||||
Swift::QtEventLoop eventLoop;
|
||||
|
||||
if (config.getUnregistered().find("service.irc_server") == config.getUnregistered().end()) {
|
||||
if (!CONFIG_HAS_KEY(&config, "service.irc_server")) {
|
||||
np = new IRCNetworkPlugin(&config, &eventLoop, host, port);
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -10,13 +10,19 @@ DEFINE_LOGGER(logger, "SingleIRCNetworkPlugin");
|
|||
|
||||
SingleIRCNetworkPlugin::SingleIRCNetworkPlugin(Config *config, Swift::QtEventLoop *loop, const std::string &host, int port) {
|
||||
this->config = config;
|
||||
m_server = config->getUnregistered().find("service.irc_server")->second;
|
||||
if (CONFIG_HAS_KEY(config, "service.irc_server")) {
|
||||
m_server = CONFIG_STRING(config, "service.irc_server");
|
||||
}
|
||||
else {
|
||||
LOG4CXX_ERROR(logger, "No [service] irc_server defined, exiting...");
|
||||
exit(-1);
|
||||
}
|
||||
m_socket = new QTcpSocket();
|
||||
m_socket->connectToHost(FROM_UTF8(host), port);
|
||||
connect(m_socket, SIGNAL(readyRead()), this, SLOT(readData()));
|
||||
|
||||
if (config->getUnregistered().find("service.irc_identify") != config->getUnregistered().end()) {
|
||||
m_identify = config->getUnregistered().find("service.irc_identify")->second;
|
||||
if (CONFIG_HAS_KEY(config, "service.irc_identify")) {
|
||||
m_identify = CONFIG_STRING(config, "service.irc_identify");
|
||||
}
|
||||
else {
|
||||
m_identify = "NickServ identify $name $password";
|
||||
|
|
|
@ -124,8 +124,8 @@ class SMSNetworkPlugin : public NetworkPlugin {
|
|||
|
||||
void handleSMSDir() {
|
||||
std::string dir = "/var/spool/sms/incoming/";
|
||||
if (config->getUnregistered().find("backend.incoming_dir") != config->getUnregistered().end()) {
|
||||
dir = config->getUnregistered().find("backend.incoming_dir")->second;
|
||||
if (CONFIG_HAS_KEY(config, "backend.incoming_dir")) {
|
||||
dir = CONFIG_STRING(config, "backend.incoming_dir");
|
||||
}
|
||||
LOG4CXX_INFO(logger, "Checking directory " << dir << " for incoming SMS.");
|
||||
|
||||
|
|
|
@ -77,7 +77,7 @@ class Config {
|
|||
bool reload();
|
||||
|
||||
bool hasKey(const std::string &key) {
|
||||
return m_variables.find(key) != m_variables.end();
|
||||
return m_variables.find(key) != m_variables.end() || m_unregistered.find(key) != m_unregistered.end();
|
||||
}
|
||||
|
||||
/// Returns value of variable defined by key.
|
||||
|
@ -85,16 +85,15 @@ class Config {
|
|||
/// For variables in sections you can use "section.variable" key format.
|
||||
/// \param key config variable name
|
||||
const boost::program_options::variable_value &operator[] (const std::string &key) {
|
||||
return m_variables[key];
|
||||
if (m_variables.find(key) != m_variables.end()) {
|
||||
return m_variables[key];
|
||||
}
|
||||
return m_unregistered[key];
|
||||
}
|
||||
|
||||
/// Returns path to config file from which data were loaded.
|
||||
const std::string &getConfigFile() { return m_file; }
|
||||
|
||||
const std::map<std::string, std::string> &getUnregistered() {
|
||||
return m_unregistered;
|
||||
}
|
||||
|
||||
/// This signal is emitted when config is loaded/reloaded.
|
||||
boost::signal<void ()> onConfigReloaded;
|
||||
|
||||
|
@ -102,7 +101,7 @@ class Config {
|
|||
int m_argc;
|
||||
char **m_argv;
|
||||
Variables m_variables;
|
||||
std::map<std::string, std::string> m_unregistered;
|
||||
std::map<std::string, boost::program_options::variable_value> m_unregistered;
|
||||
std::string m_file;
|
||||
};
|
||||
|
||||
|
|
|
@ -187,7 +187,7 @@ bool Config::load(std::istream &ifs, boost::program_options::options_description
|
|||
|
||||
BOOST_FOREACH(option &opt, parsed.options) {
|
||||
if (opt.unregistered) {
|
||||
m_unregistered[opt.string_key] = opt.value[0];
|
||||
m_unregistered[opt.string_key] = variable_value(opt.value[0], false);
|
||||
}
|
||||
else if (opt.value[0].find("$jid") != std::string::npos) {
|
||||
boost::replace_all(opt.value[0], "$jid", jid);
|
||||
|
|
Loading…
Add table
Reference in a new issue