summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/cluster
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2008-09-22 19:08:47 +0000
committerAlan Conway <aconway@apache.org>2008-09-22 19:08:47 +0000
commit5028ba1a330f86f4f53fdeaa89d3564435086b29 (patch)
tree6ea93770958c647bc7c5abc200707b80905a7819 /cpp/src/qpid/cluster
parentf31ce3a04e59da295f397379025809c16ee1258d (diff)
downloadqpid-python-5028ba1a330f86f4f53fdeaa89d3564435086b29.tar.gz
Fixed error handling session-busy condition on broker.
Added accessors to iterate over broker::SemanticState consumers. git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@697951 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/cluster')
-rw-r--r--cpp/src/qpid/cluster/DumpClient.cpp8
-rw-r--r--cpp/src/qpid/cluster/DumpClient.h4
2 files changed, 11 insertions, 1 deletions
diff --git a/cpp/src/qpid/cluster/DumpClient.cpp b/cpp/src/qpid/cluster/DumpClient.cpp
index c78859cc39..45ccec7166 100644
--- a/cpp/src/qpid/cluster/DumpClient.cpp
+++ b/cpp/src/qpid/cluster/DumpClient.cpp
@@ -186,8 +186,16 @@ void DumpClient::dumpSession(broker::SessionHandler& sh) {
client::Session cs;
client::SessionBase_0_10Access(cs).set(simpl);
cs.sync();
+
+ broker::SessionState* ss = sh.getSession();
+ ss->eachConsumer(boost::bind(&DumpClient::dumpConsumer, this, _1));
+
// FIXME aconway 2008-09-19: remaining session state.
QPID_LOG(debug, "Dump done, session " << sh.getSession()->getId());
}
+void DumpClient::dumpConsumer(broker::SemanticState::ConsumerImpl* ci) {
+ QPID_LOG(critical, "DEBUG: dump consumer: " << ci->getName());
+}
+
}} // namespace qpid::cluster
diff --git a/cpp/src/qpid/cluster/DumpClient.h b/cpp/src/qpid/cluster/DumpClient.h
index 6cd382667a..6ce41a53a9 100644
--- a/cpp/src/qpid/cluster/DumpClient.h
+++ b/cpp/src/qpid/cluster/DumpClient.h
@@ -24,6 +24,7 @@
#include "qpid/client/Connection.h"
#include "qpid/client/AsyncSession.h"
+#include "qpid/broker/SemanticState.h"
#include "qpid/sys/Runnable.h"
#include <boost/shared_ptr.hpp>
@@ -69,7 +70,8 @@ class DumpClient : public sys::Runnable {
void dumpBinding(const std::string& queue, const broker::QueueBinding& binding);
void dumpConnection(const boost::intrusive_ptr<Connection>& connection);
void dumpSession(broker::SessionHandler& s);
-
+ void dumpConsumer(broker::SemanticState::ConsumerImpl*);
+
private:
Url receiver;
Cluster& donor;