From dda3a026db3037ac23570cfd29ee680d33ed4f7b Mon Sep 17 00:00:00 2001 From: Ted Ross Date: Mon, 23 Apr 2012 13:44:11 +0000 Subject: QPID-3510 - Created a separate option in CommonOptions for the client configuration file. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1329236 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/include/qpid/Options.h | 4 +++- qpid/cpp/src/Makefile.am | 2 +- qpid/cpp/src/posix/QpiddBroker.cpp | 4 ++-- qpid/cpp/src/qpid/Options.cpp | 7 ++++--- qpid/cpp/src/qpid/client/ConnectionImpl.cpp | 6 +++--- qpid/cpp/src/qpid/client/LoadPlugins.cpp | 6 +++--- qpid/cpp/src/qpid/client/SslConnector.cpp | 6 +++--- qpid/cpp/src/windows/QpiddBroker.cpp | 4 ++-- 8 files changed, 21 insertions(+), 18 deletions(-) diff --git a/qpid/cpp/include/qpid/Options.h b/qpid/cpp/include/qpid/Options.h index 63d91c2d72..9860076195 100644 --- a/qpid/cpp/include/qpid/Options.h +++ b/qpid/cpp/include/qpid/Options.h @@ -163,10 +163,12 @@ struct Options : public po::options_description { */ struct CommonOptions : public Options { QPID_COMMON_EXTERN CommonOptions(const std::string& name=std::string(), - const std::string& configfile=std::string()); + const std::string& configfile=std::string(), + const std::string& clientConfigFile=std::string()); bool help; bool version; std::string config; + std::string clientConfig; }; diff --git a/qpid/cpp/src/Makefile.am b/qpid/cpp/src/Makefile.am index d6d4088622..6df4bc93e7 100644 --- a/qpid/cpp/src/Makefile.am +++ b/qpid/cpp/src/Makefile.am @@ -140,7 +140,7 @@ tmoduleexec_LTLIBRARIES= AM_CXXFLAGS += -DBOOST_FILESYSTEM_VERSION=2 ## Automake macros to build libraries and executables. -qpidd_CXXFLAGS = $(AM_CXXFLAGS) -DQPIDD_MODULE_DIR=\"$(dmoduleexecdir)\" -DQPIDD_CONF_FILE=\"$(sysconfdir)/qpidd.conf\" +qpidd_CXXFLAGS = $(AM_CXXFLAGS) -DQPIDD_MODULE_DIR=\"$(dmoduleexecdir)\" -DQPIDD_CONF_FILE=\"$(sysconfdir)/qpidd.conf\" -DQPIDC_CONF_FILE=\"$(confdir)/qpidc.conf\" libqpidclient_la_CXXFLAGS = $(AM_CXXFLAGS) -DQPIDC_MODULE_DIR=\"$(cmoduleexecdir)\" -DQPIDC_CONF_FILE=\"$(confdir)/qpidc.conf\" qpidd_LDADD = \ diff --git a/qpid/cpp/src/posix/QpiddBroker.cpp b/qpid/cpp/src/posix/QpiddBroker.cpp index 694751c27c..fd2fb6184f 100644 --- a/qpid/cpp/src/posix/QpiddBroker.cpp +++ b/qpid/cpp/src/posix/QpiddBroker.cpp @@ -39,7 +39,7 @@ namespace broker { BootstrapOptions::BootstrapOptions(const char* argv0) : qpid::Options("Options"), - common("", QPIDD_CONF_FILE), + common("", QPIDD_CONF_FILE, QPIDC_CONF_FILE), module(QPIDD_MODULE_DIR), log(argv0) { @@ -91,7 +91,7 @@ struct QpiddPosixOptions : public QpiddOptionsPrivate { QpiddOptions::QpiddOptions(const char* argv0) : qpid::Options("Options"), - common("", QPIDD_CONF_FILE), + common("", QPIDD_CONF_FILE, QPIDC_CONF_FILE), module(QPIDD_MODULE_DIR), log(argv0) { diff --git a/qpid/cpp/src/qpid/Options.cpp b/qpid/cpp/src/qpid/Options.cpp index 4b13e349f5..35787aa8f3 100644 --- a/qpid/cpp/src/qpid/Options.cpp +++ b/qpid/cpp/src/qpid/Options.cpp @@ -186,13 +186,14 @@ void Options::parse(int argc, char const* const* argv, const std::string& config } } -CommonOptions::CommonOptions(const string& name, const string& configfile) - : Options(name), config(configfile) +CommonOptions::CommonOptions(const string& name, const string& configfile, const string& clientfile) + : Options(name), config(configfile), clientConfig(clientfile) { addOptions() ("help,h", optValue(help), "Displays the help message") ("version,v", optValue(version), "Displays version information") - ("config", optValue(config, "FILE"), "Reads configuration from FILE"); + ("config", optValue(config, "FILE"), "Reads configuration from FILE") + ("client-config", optValue(clientConfig, "FILE"), "Reads client configuration from FILE (for cluster interconnect)"); } diff --git a/qpid/cpp/src/qpid/client/ConnectionImpl.cpp b/qpid/cpp/src/qpid/client/ConnectionImpl.cpp index 963e56b9b2..85b0e8303e 100644 --- a/qpid/cpp/src/qpid/client/ConnectionImpl.cpp +++ b/qpid/cpp/src/qpid/client/ConnectionImpl.cpp @@ -115,10 +115,10 @@ public: ioThreads(0), connections(0) { - CommonOptions common("", QPIDC_CONF_FILE); + CommonOptions common("", "", QPIDC_CONF_FILE); IOThreadOptions options(c); - common.parse(0, 0, common.config, true); - options.parse(0, 0, common.config, true); + common.parse(0, 0, common.clientConfig, true); + options.parse(0, 0, common.clientConfig, true); maxIOThreads = (options.maxIOThreads != -1) ? options.maxIOThreads : 1; } diff --git a/qpid/cpp/src/qpid/client/LoadPlugins.cpp b/qpid/cpp/src/qpid/client/LoadPlugins.cpp index a8cfe80dc8..d76e1d458e 100644 --- a/qpid/cpp/src/qpid/client/LoadPlugins.cpp +++ b/qpid/cpp/src/qpid/client/LoadPlugins.cpp @@ -39,11 +39,11 @@ namespace { struct LoadtimeInitialise { LoadtimeInitialise() { - CommonOptions common("", QPIDC_CONF_FILE); + CommonOptions common("", "", QPIDC_CONF_FILE); qpid::ModuleOptions moduleOptions(QPIDC_MODULE_DIR); string defaultPath (moduleOptions.loadDir); - common.parse(0, 0, common.config, true); - moduleOptions.parse (0, 0, common.config, true); + common.parse(0, 0, common.clientConfig, true); + moduleOptions.parse (0, 0, common.clientConfig, true); for (vector::iterator iter = moduleOptions.load.begin(); iter != moduleOptions.load.end(); diff --git a/qpid/cpp/src/qpid/client/SslConnector.cpp b/qpid/cpp/src/qpid/client/SslConnector.cpp index 70f1b6725f..ab0c5c4957 100644 --- a/qpid/cpp/src/qpid/client/SslConnector.cpp +++ b/qpid/cpp/src/qpid/client/SslConnector.cpp @@ -148,10 +148,10 @@ namespace { struct StaticInit { StaticInit() { try { - CommonOptions common("", QPIDC_CONF_FILE); + CommonOptions common("", "", QPIDC_CONF_FILE); SslOptions options; - common.parse(0, 0, common.config, true); - options.parse (0, 0, common.config, true); + common.parse(0, 0, common.clientConfig, true); + options.parse (0, 0, common.clientConfig, true); if (options.certDbPath.empty()) { QPID_LOG(info, "SSL connector not enabled, you must set QPID_SSL_CERT_DB to enable it."); } else { diff --git a/qpid/cpp/src/windows/QpiddBroker.cpp b/qpid/cpp/src/windows/QpiddBroker.cpp index e73fcf0af5..89a8945d00 100644 --- a/qpid/cpp/src/windows/QpiddBroker.cpp +++ b/qpid/cpp/src/windows/QpiddBroker.cpp @@ -37,7 +37,7 @@ namespace broker { BootstrapOptions::BootstrapOptions(const char* argv0) : qpid::Options("Options"), - common("", QPIDD_CONF_FILE), + common("", QPIDD_CONF_FILE, QPIDC_CONF_FILE), module(QPIDD_MODULE_DIR), log(argv0) { @@ -315,7 +315,7 @@ struct QpiddWindowsOptions : public QpiddOptionsPrivate { QpiddOptions::QpiddOptions(const char* argv0) : qpid::Options("Options"), - common("", QPIDD_CONF_FILE), + common("", QPIDD_CONF_FILE, QPIDC_CONF_FILE), module(QPIDD_MODULE_DIR), log(argv0) { -- cgit v1.2.1