diff options
author | Gordon Sim <gsim@apache.org> | 2008-11-10 12:25:23 +0000 |
---|---|---|
committer | Gordon Sim <gsim@apache.org> | 2008-11-10 12:25:23 +0000 |
commit | ead0237d1d00d80a9ee3f897bbb6226812f83cdb (patch) | |
tree | c0c2a3f86b37580e668a49791beddb5ecd027a1e /cpp/examples/failover | |
parent | 0e107c3844c7078cf57212f16b1335dd50d4364c (diff) | |
download | qpid-python-ead0237d1d00d80a9ee3f897bbb6226812f83cdb.tar.gz |
Remove wrappers for 'transparent' failover; this will be better handled through implementation of session resume within SessionImpl.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@712653 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/examples/failover')
-rw-r--r-- | cpp/examples/failover/Makefile.am | 10 | ||||
-rw-r--r-- | cpp/examples/failover/direct_producer.cpp | 116 | ||||
-rw-r--r-- | cpp/examples/failover/listener.cpp | 124 |
3 files changed, 1 insertions, 249 deletions
diff --git a/cpp/examples/failover/Makefile.am b/cpp/examples/failover/Makefile.am index 36969dbd36..a5edd6565a 100644 --- a/cpp/examples/failover/Makefile.am +++ b/cpp/examples/failover/Makefile.am @@ -2,13 +2,7 @@ examplesdir=$(pkgdatadir)/examples/failover include $(top_srcdir)/examples/makedist.mk -noinst_PROGRAMS=direct_producer listener declare_queues resuming_receiver replaying_sender - -direct_producer_SOURCES=direct_producer.cpp -direct_producer_LDADD=$(CLIENT_LIB) - -listener_SOURCES=listener.cpp -listener_LDADD=$(CLIENT_LIB) +noinst_PROGRAMS=declare_queues resuming_receiver replaying_sender declare_queues_SOURCES=declare_queues.cpp declare_queues_LDADD=$(CLIENT_LIB) @@ -20,8 +14,6 @@ replaying_sender_SOURCES=replaying_sender.cpp replaying_sender_LDADD=$(CLIENT_LIB) examples_DATA= \ - direct_producer.cpp \ - listener.cpp \ declare_queues.cpp \ resuming_receiver.cpp \ replaying_sender.cpp \ diff --git a/cpp/examples/failover/direct_producer.cpp b/cpp/examples/failover/direct_producer.cpp deleted file mode 100644 index 2a0104a994..0000000000 --- a/cpp/examples/failover/direct_producer.cpp +++ /dev/null @@ -1,116 +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/client/FailoverConnection.h> -#include <qpid/client/Session.h> -#include <qpid/client/AsyncSession.h> -#include <qpid/client/Message.h> - - -#include <iostream> -#include <sstream> - -using namespace qpid::client; -using namespace qpid::framing; - -using namespace std; - -int -main ( int argc, char ** argv) -{ - - const char* host = argc>1 ? argv[1] : "127.0.0.1"; - int port = argc>2 ? atoi(argv[2]) : 5672; - int count = argc>3 ? atoi(argv[3]) : 30; - string program_name = "PRODUCER"; - - - try { - FailoverConnection connection; - FailoverSession * session; - Message message; - - connection.open ( host, port ); - session = connection.newSession(); - bool report = true; - int sent = 0; - while ( sent < count ) { - - message.getDeliveryProperties().setRoutingKey("routing_key"); - - - if ( count > 1000 ) - report = !(sent % 1000); - - report = false; - - if ( report ) - { - std::cout << "sending message " - << sent - << ".\n"; - } - - stringstream message_data; - message_data << sent; - message.setData(message_data.str()); - - /* FIXME mgoulish 21 oct 08 - session.messageTransfer ( arg::content=message, - arg::destination="amq.direct" - ); */ - session->messageTransfer ( "amq.direct", - 1, - 0, - message - ); - - ++ sent; - } - message.setData ( "That's all, folks!" ); - - /* FIXME mgoulish 21 oct 08 - session.messageTransfer ( arg::content=message, - arg::destination="amq.direct" - ); - */ - session->messageTransfer ( "amq.direct", - 1, - 0, - message - ); - - session->sync(); - connection.close(); - std::cout << program_name - << " sent " - << sent - << " messages.\n"; - - std::cout << program_name << ": " << " completed without error." << std::endl; - return 0; - } catch(const std::exception& error) { - std::cout << program_name << ": " << error.what() << std::endl; - std::cout << program_name << "Exiting.\n"; - return 1; - } - return 1; -} diff --git a/cpp/examples/failover/listener.cpp b/cpp/examples/failover/listener.cpp deleted file mode 100644 index 82913a521a..0000000000 --- a/cpp/examples/failover/listener.cpp +++ /dev/null @@ -1,124 +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/client/FailoverConnection.h> -#include <qpid/client/Session.h> -#include <qpid/client/Message.h> -#include <qpid/client/SubscriptionManager.h> - -#include <iostream> -#include <fstream> - - -using namespace qpid::client; -using namespace qpid::framing; - -using namespace std; - - -struct Listener : public MessageListener -{ - FailoverSubscriptionManager & subscriptionManager; - - Listener ( FailoverSubscriptionManager& subs ); - - void shutdown() { subscriptionManager.stop(); } - - virtual void received ( Message & message ); - - int count; -}; - - - - - -Listener::Listener ( FailoverSubscriptionManager & s ) : - subscriptionManager(s), - count(0) -{ -} - - - - - -void -Listener::received ( Message & message ) -{ - /* - if(! (count%1000)) - std::cerr << "\t\tListener received: " << message.getData() << std::endl; - * */ - - ++ count; - - if (message.getData() == "That's all, folks!") - { - std::cout << "Shutting down listener for " << message.getDestination() - << std::endl; - - std::cout << "Listener received " << count << " messages.\n"; - subscriptionManager.cancel(message.getDestination()); - shutdown ( ); - } -} - - - - - - - -int -main ( int argc, char ** argv ) -{ - const char* host = argc>1 ? argv[1] : "127.0.0.1"; - int port = argc>2 ? atoi(argv[2]) : 5672; - string program_name = "LISTENER"; - - try { - - FailoverConnection connection; - FailoverSession * session; - - connection.open ( host, port ); - session = connection.newSession(); - - FailoverSubscriptionManager subscriptions ( session ); - Listener listener ( subscriptions ); - subscriptions.subscribe ( listener, "message_queue" ); - subscriptions.run ( ); - - connection.close(); - std::cout << program_name << ": " << " completed without error." << std::endl; - return 0; - - } catch(const std::exception& error) { - std::cout << program_name << ": " << error.what() << std::endl; - } - - return 0; -} - - - - |