From 3db8f96f1d763fe6fe41db816caee4dfd2f8317d Mon Sep 17 00:00:00 2001 From: Ted Ross Date: Wed, 29 Feb 2012 12:27:58 +0000 Subject: QPID-3871 - Added --mgmt-publish switch to the C++ broker Also in this commit: - Fixed a problem with an unused argument in qpid-stat - Cleaned up the recurring timer code in ManagementAgent git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1295075 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/broker/Broker.cpp | 5 ++++- cpp/src/qpid/broker/Broker.h | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'cpp/src/qpid/broker') diff --git a/cpp/src/qpid/broker/Broker.cpp b/cpp/src/qpid/broker/Broker.cpp index 221c31583b..02111b4387 100644 --- a/cpp/src/qpid/broker/Broker.cpp +++ b/cpp/src/qpid/broker/Broker.cpp @@ -111,6 +111,7 @@ Broker::Options::Options(const std::string& name) : maxConnections(500), connectionBacklog(10), enableMgmt(1), + mgmtPublish(1), mgmtPubInterval(10), queueCleanInterval(60*10),//10 minutes auth(SaslAuthenticator::available()), @@ -148,6 +149,7 @@ Broker::Options::Options(const std::string& name) : ("max-connections", optValue(maxConnections, "N"), "Sets the maximum allowed connections") ("connection-backlog", optValue(connectionBacklog, "N"), "Sets the connection backlog limit for the server socket") ("mgmt-enable,m", optValue(enableMgmt,"yes|no"), "Enable Management") + ("mgmt-publish", optValue(mgmtPublish,"yes|no"), "Enable Publish of Management Data ('no' implies query-only)") ("mgmt-qmf2", optValue(qmf2Support,"yes|no"), "Enable broadcast of management information over QMF v2") ("mgmt-qmf1", optValue(qmf1Support,"yes|no"), "Enable broadcast of management information over QMF v1") // FIXME aconway 2012-02-13: consistent treatment of values in SECONDS @@ -213,7 +215,7 @@ Broker::Broker(const Broker::Options& conf) : try { if (conf.enableMgmt) { QPID_LOG(info, "Management enabled"); - managementAgent->configure(dataDir.isEnabled() ? dataDir.getPath() : string(), + managementAgent->configure(dataDir.isEnabled() ? dataDir.getPath() : string(), conf.mgmtPublish, conf.mgmtPubInterval, this, conf.workerThreads + 3); managementAgent->setName("apache.org", "qpidd"); _qmf::Package packageInitializer(managementAgent.get()); @@ -228,6 +230,7 @@ Broker::Broker(const Broker::Options& conf) : mgmtObject->set_maxConns(conf.maxConnections); mgmtObject->set_connBacklog(conf.connectionBacklog); mgmtObject->set_mgmtPubInterval(conf.mgmtPubInterval); + mgmtObject->set_mgmtPublish(conf.mgmtPublish); mgmtObject->set_version(qpid::version); if (dataDir.isEnabled()) mgmtObject->set_dataDir(dataDir.getPath()); diff --git a/cpp/src/qpid/broker/Broker.h b/cpp/src/qpid/broker/Broker.h index a812c28b80..543d42e002 100644 --- a/cpp/src/qpid/broker/Broker.h +++ b/cpp/src/qpid/broker/Broker.h @@ -105,6 +105,7 @@ public: int maxConnections; int connectionBacklog; bool enableMgmt; + bool mgmtPublish; uint16_t mgmtPubInterval; uint16_t queueCleanInterval; bool auth; -- cgit v1.2.1