summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster/UpdateClient.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/cluster/UpdateClient.cpp')
-rw-r--r--cpp/src/qpid/cluster/UpdateClient.cpp17
1 files changed, 9 insertions, 8 deletions
diff --git a/cpp/src/qpid/cluster/UpdateClient.cpp b/cpp/src/qpid/cluster/UpdateClient.cpp
index 3fba194d44..6c8bb7e890 100644
--- a/cpp/src/qpid/cluster/UpdateClient.cpp
+++ b/cpp/src/qpid/cluster/UpdateClient.cpp
@@ -190,14 +190,15 @@ template <class T> std::string encode(const T& t) {
//
void UpdateClient::updateManagementSetupState(Broker & b)
{
- qmf::org::apache::qpid::broker::ManagementSetupState mss(b.getManagementAgent(), 0);
- mss.set_objectNum(b.getManagementAgent()->getNextObjectId());
- mss.set_bootSequence(b.getManagementAgent()->getBootSequence());
-
- QPID_LOG(debug, updaterId << " updating management-setup-state " << mss.get_objectNum()
- << " " << mss.get_bootSequence() << "\n");
-
- ClusterConnectionProxy(session).managementSetupState(mss.get_objectNum(), mss.get_bootSequence());
+ management::ManagementAgent* agent = updaterBroker.getManagementAgent();
+ if (agent) {
+ qmf::org::apache::qpid::broker::ManagementSetupState mss(b.getManagementAgent(), 0);
+ mss.set_objectNum(b.getManagementAgent()->getNextObjectId());
+ mss.set_bootSequence(b.getManagementAgent()->getBootSequence());
+ QPID_LOG(debug, updaterId << " updating management-setup-state " << mss.get_objectNum()
+ << " " << mss.get_bootSequence() << "\n");
+ ClusterConnectionProxy(session).managementSetupState(mss.get_objectNum(), mss.get_bootSequence());
+ }
}
void UpdateClient::updateExchange(const boost::shared_ptr<Exchange>& ex) {