diff options
author | Kim van der Riet <kpvdr@apache.org> | 2012-05-04 15:39:19 +0000 |
---|---|---|
committer | Kim van der Riet <kpvdr@apache.org> | 2012-05-04 15:39:19 +0000 |
commit | 633c33f224f3196f3f9bd80bd2e418d8143fea06 (patch) | |
tree | 1391da89470593209466df68c0b40b89c14963b1 /cpp/src/qpid/cluster/UpdateClient.cpp | |
parent | c73f9286ebff93a6c8dbc29cf05e258c4b55c976 (diff) | |
download | qpid-python-633c33f224f3196f3f9bd80bd2e418d8143fea06.tar.gz |
QPID-3858: Updated branch - merged from trunk r.1333987
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/asyncstore@1334037 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster/UpdateClient.cpp')
-rw-r--r-- | cpp/src/qpid/cluster/UpdateClient.cpp | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/cpp/src/qpid/cluster/UpdateClient.cpp b/cpp/src/qpid/cluster/UpdateClient.cpp index 95c64ff060..20684fd8a7 100644 --- a/cpp/src/qpid/cluster/UpdateClient.cpp +++ b/cpp/src/qpid/cluster/UpdateClient.cpp @@ -57,6 +57,7 @@ #include "qpid/framing/ClusterConnectionShadowReadyBody.h" #include "qpid/framing/ClusterConnectionSessionStateBody.h" #include "qpid/framing/ClusterConnectionConsumerStateBody.h" +#include "qpid/framing/FieldValue.h" #include "qpid/framing/enum.h" #include "qpid/framing/ProtocolVersion.h" #include "qpid/framing/TypeCode.h" @@ -687,7 +688,15 @@ void UpdateClient::updateLinks() { void UpdateClient::updateLink(const boost::shared_ptr<broker::Link>& link) { QPID_LOG(debug, *this << " updating link " << link->getHost() << ":" << link->getPort()); - ClusterConnectionProxy(session).config(encode(*link)); + ClusterConnectionProxy(session).config(encode(*link)); // push the configuration + // now push the current state + framing::FieldTable state; + link->getState(state); + std::ostringstream os; + os << qpid::Address(link->getTransport(), link->getHost(), link->getPort()); + ClusterConnectionProxy(session).internalState(std::string("link"), + os.str(), + state); } void UpdateClient::updateBridge(const boost::shared_ptr<broker::Bridge>& bridge) { |