diff options
author | Rajith Muditha Attapattu <rajith@apache.org> | 2011-05-27 15:44:23 +0000 |
---|---|---|
committer | Rajith Muditha Attapattu <rajith@apache.org> | 2011-05-27 15:44:23 +0000 |
commit | 66765100f4257159622cefe57bed50125a5ad017 (patch) | |
tree | a88ee23bb194eb91f0ebb2d9b23ff423e3ea8e37 /cpp/examples/qmf-console/ping.cpp | |
parent | 1aeaa7b16e5ce54f10c901d75c4d40f9f88b9db6 (diff) | |
parent | 88b98b2f4152ef59a671fad55a0d08338b6b78ca (diff) | |
download | qpid-python-rajith_jms_client.tar.gz |
Creating a branch for experimenting with some ideas for JMS client.rajith_jms_client
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/rajith_jms_client@1128369 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/examples/qmf-console/ping.cpp')
-rw-r--r-- | cpp/examples/qmf-console/ping.cpp | 135 |
1 files changed, 0 insertions, 135 deletions
diff --git a/cpp/examples/qmf-console/ping.cpp b/cpp/examples/qmf-console/ping.cpp deleted file mode 100644 index fe537d48d2..0000000000 --- a/cpp/examples/qmf-console/ping.cpp +++ /dev/null @@ -1,135 +0,0 @@ -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include "qpid/console/SessionManager.h" -#include "qpid/sys/Time.h" - -using namespace std; -using namespace qpid::console; - -//============================================================== -// Main program -//============================================================== -int main_int(int /*argc*/, char** /*argv*/) -{ - // - // Declare connection settings for the messaging broker. The settings default to - // localhost:5672 with user guest (password guest). Refer to the header file - // <qpid/client/ConnectionSettings.h> for full details. - // - qpid::client::ConnectionSettings connSettings; - - // - // Declare the (optional) session manager settings. Override the default timeout - // for methods calls to be 2 seconds. - // - SessionManager::Settings smSettings; - smSettings.methodTimeout = 2; - smSettings.getTimeout = 2; - - // - // Declare the console session manager. With a null listener argument, it defaults to - // synchronous-only access mode. - // - SessionManager sm(0, smSettings); - - // - // 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. - - for (uint32_t iter = 0; iter < count; iter++) { - cout << "Ping Broker: " << broker->getUrl() << "... "; - cout.flush(); - - // - // Query for a list of 'broker' objects from the Management Database - // - sm.getObjects(list, "broker"); - - // - // We expect one object (since we are connected to only one broker) - // - if (list.size() == 1) { - Object& brokerObject = *(list.begin()); - - // - // Declare a container for arguments to be sent with the "echo" method - // that we will invoke on the remote "broker" object. - // - Object::AttributeMap args; - - // - // Declare a container for the result of the method invocation. - // - MethodResponse result; - - // - // Set the values of the input arguments. - // - args.addUint("sequence", iter); - args.addString("body", "ABCDEFGHIJKLMNOPQRSTUVWXYZ"); - - // - // Invoke the method. This is a synchronous operation that will block until - // the method completes and returns a result. - // - brokerObject.invokeMethod("echo", args, result); - - // - // result.code is the return code (0 => Success) - // result.text is the return text - // result.arguments is a container (of type Object::AttributeMap) that holds - // the output arguments (if any) from the method. - // - cout << "Result: code=" << result.code << " text=" << result.text; - if (result.code == 0) - cout << " seq=" << result.arguments["sequence"]->asUint(); - cout << endl; - - if (result.code == 0 && iter < count - 1) - qpid::sys::sleep(1); - } else { - cout << "Disconnected..." << endl; - qpid::sys::sleep(1); - } - } - - // - // Disconnect the broker from the session manager. - // - sm.delBroker(broker); - return 0; -} - -int main(int argc, char** argv) -{ - try { - return main_int(argc, argv); - } catch(std::exception& e) { - cout << "Top Level Exception: " << e.what() << endl; - } -} - |