summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Broker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/broker/Broker.cpp')
-rw-r--r--cpp/src/qpid/broker/Broker.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/cpp/src/qpid/broker/Broker.cpp b/cpp/src/qpid/broker/Broker.cpp
index 47d9dad537..bffca94f95 100644
--- a/cpp/src/qpid/broker/Broker.cpp
+++ b/cpp/src/qpid/broker/Broker.cpp
@@ -122,6 +122,7 @@ const std::string qpid_management("qpid.management");
Broker::Broker(const Broker::Options& conf) :
poller(new Poller),
config(conf),
+ managementAgentSingleton(!config.enableMgmt),
store(0),
dataDir(conf.noDataDir ? std::string () : conf.dataDir),
links(this),
@@ -134,10 +135,10 @@ Broker::Broker(const Broker::Options& conf) :
{
if(conf.enableMgmt){
QPID_LOG(info, "Management enabled");
- ManagementBroker::enableManagement (dataDir.isEnabled () ? dataDir.getPath () : string (),
- conf.mgmtPubInterval, this, conf.workerThreads + 3);
- managementAgent = management::ManagementAgent::getAgent ();
- ((ManagementBroker*) managementAgent)->setInterval (conf.mgmtPubInterval);
+ managementAgent = managementAgentSingleton.getInstance();
+ ((ManagementBroker*) managementAgent)->configure
+ (dataDir.isEnabled () ? dataDir.getPath () : string (),
+ conf.mgmtPubInterval, this, conf.workerThreads + 3);
qpid::management::PackageQpid packageInitializer (managementAgent);
System* system = new System (dataDir.isEnabled () ? dataDir.getPath () : string ());
@@ -294,7 +295,6 @@ Broker::~Broker() {
sasl_done();
#endif
}
- ManagementBroker::shutdown();
QPID_LOG(notice, "Shut down");
}