You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2008/10/11 01:32:02 UTC

svn commit: r703604 - in /incubator/qpid/trunk/qpid/cpp: examples/failover/direct_producer.cpp src/qpid/client/FailoverConnection.cpp

Author: aconway
Date: Fri Oct 10 16:32:02 2008
New Revision: 703604

URL: http://svn.apache.org/viewvc?rev=703604&view=rev
Log:
src/client/FailoverConnection.cpp: re-register callback after failures

Modified:
    incubator/qpid/trunk/qpid/cpp/examples/failover/direct_producer.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/client/FailoverConnection.cpp

Modified: incubator/qpid/trunk/qpid/cpp/examples/failover/direct_producer.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/examples/failover/direct_producer.cpp?rev=703604&r1=703603&r2=703604&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/examples/failover/direct_producer.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/examples/failover/direct_producer.cpp Fri Oct 10 16:32:02 2008
@@ -39,6 +39,7 @@
     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;
+    int delayMs  = argc>4 ? atoi(argv[4]) : 1000;
 
     try {
         FailoverConnection connection;
@@ -70,7 +71,7 @@
                                        0,
                                        message
             );
-            sleep ( 1 );
+            usleep ( 1000*delayMs );
             ++ sent;
         }
         message.setData ( "That's all, folks!" );

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/FailoverConnection.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/FailoverConnection.cpp?rev=703604&r1=703603&r2=703604&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/FailoverConnection.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/FailoverConnection.cpp Fri Oct 10 16:32:02 2008
@@ -126,7 +126,7 @@
 {
     std::vector<Url> knownBrokers = connection.getKnownBrokers();
     if (knownBrokers.empty())
-         throw Exception(QPID_MSG("FailoverConnection::failover " << name << " no known brokers."));
+        throw Exception(QPID_MSG("FailoverConnection::failover " << name << " no known brokers."));
 
     Connection newConnection;
     for (std::vector<Url>::iterator i = knownBrokers.begin(); i != knownBrokers.end(); ++i) {
@@ -171,12 +171,8 @@
     }
 
     connection = newConnection;
-
-    // FIXME aconway 2008-10-09: use sys/Time.h functions.
-    if ( failoverCompleteTime )
-    {
-        gettimeofday ( failoverCompleteTime, 0 );
-    }
+    connection.registerFailureCallback
+        ( boost::bind(&FailoverConnection::failover, this));
 }