You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by tr...@apache.org on 2010/06/03 22:23:31 UTC
svn commit: r951141 - in /qpid/trunk/qpid/cpp:
examples/qmf-console/console.cpp examples/qmf-console/ping.cpp
include/qpid/console/Broker.h
Author: tross
Date: Thu Jun 3 20:23:30 2010
New Revision: 951141
URL: http://svn.apache.org/viewvc?rev=951141&view=rev
Log:
QPID-2644 - Console examples sometimes fail due to not waiting for the broker connection to complete
Moved 'Broker::waitForStable' from private to public, used this function in the examples to
hold off until the broker is fully connected.
Modified:
qpid/trunk/qpid/cpp/examples/qmf-console/console.cpp
qpid/trunk/qpid/cpp/examples/qmf-console/ping.cpp
qpid/trunk/qpid/cpp/include/qpid/console/Broker.h
Modified: qpid/trunk/qpid/cpp/examples/qmf-console/console.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/examples/qmf-console/console.cpp?rev=951141&r1=951140&r2=951141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/examples/qmf-console/console.cpp (original)
+++ qpid/trunk/qpid/cpp/examples/qmf-console/console.cpp Thu Jun 3 20:23:30 2010
@@ -81,6 +81,7 @@ int main_int(int /*argc*/, char** /*argv
Broker* broker;
broker = sm.addBroker(settings);
+ broker->waitForStable();
cout << "Package List:" << endl;
vector<string> packages;
Modified: qpid/trunk/qpid/cpp/examples/qmf-console/ping.cpp
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/examples/qmf-console/ping.cpp?rev=951141&r1=951140&r2=951141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/examples/qmf-console/ping.cpp (original)
+++ qpid/trunk/qpid/cpp/examples/qmf-console/ping.cpp Thu Jun 3 20:23:30 2010
@@ -55,6 +55,7 @@ int main_int(int /*argc*/, char** /*argv
// Add a broker connection to the session manager.
//
Broker* broker = sm.addBroker(connSettings);
+ broker->waitForStable();
uint32_t count = 5; // The number of echo requests we will send to the broker.
Object::Vector list; // A container for holding objects retrieved from the broker.
Modified: qpid/trunk/qpid/cpp/include/qpid/console/Broker.h
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/console/Broker.h?rev=951141&r1=951140&r2=951141&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/include/qpid/console/Broker.h (original)
+++ qpid/trunk/qpid/cpp/include/qpid/console/Broker.h Thu Jun 3 20:23:30 2010
@@ -55,15 +55,16 @@ namespace console {
client::ConnectionSettings& settings);
QPID_CONSOLE_EXTERN ~Broker();
- bool isConnected() const { return connected; }
- const std::string& getError() const { return error; }
- const std::string& getSessionId() const { return amqpSessionId; }
- const framing::Uuid& getBrokerId() const { return brokerId; }
- uint32_t getBrokerBank() const { return 1; }
- void addBinding(const std::string& key) {
+ QPID_CONSOLE_EXTERN bool isConnected() const { return connected; }
+ QPID_CONSOLE_EXTERN const std::string& getError() const { return error; }
+ QPID_CONSOLE_EXTERN const std::string& getSessionId() const { return amqpSessionId; }
+ QPID_CONSOLE_EXTERN const framing::Uuid& getBrokerId() const { return brokerId; }
+ QPID_CONSOLE_EXTERN uint32_t getBrokerBank() const { return 1; }
+ QPID_CONSOLE_EXTERN void addBinding(const std::string& key) {
connThreadBody.bindExchange("qpid.management", key);
}
QPID_CONSOLE_EXTERN std::string getUrl() const;
+ QPID_CONSOLE_EXTERN void waitForStable();
private:
friend class SessionManager;
@@ -117,7 +118,6 @@ namespace console {
void received(client::Message& msg);
void resetAgents();
void updateAgent(const Object& object);
- void waitForStable();
void incOutstanding();
void decOutstanding();
void setBrokerId(const framing::Uuid& id) { brokerId = id; }
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org