summaryrefslogtreecommitdiff
path: root/cpp/examples/failover
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2008-11-10 12:25:23 +0000
committerGordon Sim <gsim@apache.org>2008-11-10 12:25:23 +0000
commitead0237d1d00d80a9ee3f897bbb6226812f83cdb (patch)
treec0c2a3f86b37580e668a49791beddb5ecd027a1e /cpp/examples/failover
parent0e107c3844c7078cf57212f16b1335dd50d4364c (diff)
downloadqpid-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.am10
-rw-r--r--cpp/examples/failover/direct_producer.cpp116
-rw-r--r--cpp/examples/failover/listener.cpp124
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;
-}
-
-
-
-