Author: astitcher
Date: Wed Jun  3 13:52:44 2009
New Revision: 781376

URL: http://svn.apache.org/viewvc?rev=781376&view=rev
Log:
Revert "QPID-1879 Removed some code obsoleted by this change"

This reverts commit 60d66cae76b2bea90f076875e35cb69049fb2d3a.

Modified:
    qpid/trunk/qpid/cpp/src/qpid/client/Connector.cpp
    qpid/trunk/qpid/cpp/src/qpid/client/RdmaConnector.cpp
    qpid/trunk/qpid/cpp/src/qpid/client/SslConnector.cpp

Modified: qpid/trunk/qpid/cpp/src/qpid/client/Connector.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/Connector.cpp?rev=781376&r1=781375&r2=781376&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/Connector.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/Connector.cpp Wed Jun  3 13:52:44 2009
@@ -40,6 +40,7 @@
 #include <deque>
 #include <boost/bind.hpp>
 #include <boost/format.hpp>
+#include <boost/weak_ptr.hpp>
 
 namespace qpid {
 namespace client {
@@ -100,6 +101,7 @@
     framing::ProtocolVersion version;
     bool initiated;
     bool closed;
+    bool joined;
 
     sys::ShutdownHandler* shutdownHandler;
     framing::InputHandler* input;
@@ -123,6 +125,8 @@
     void writeDataBlock(const framing::AMQDataBlock& data);
     void eof(qpid::sys::AsynchIO&);
 
+    boost::weak_ptr<ConnectionImpl> impl;
+
     void connect(const std::string& host, int port);
     void init();
     void close();
@@ -176,9 +180,11 @@
       version(ver),
       initiated(false),
       closed(true),
+      joined(true),
       shutdownHandler(0),
       aio(0),
-      poller(p)
+      poller(p),
+      impl(cimpl->shared_from_this())
 {
     QPID_LOG(debug, "TCPConnector created for " << version.toString());
     settings.configureSocket(socket);
@@ -211,8 +217,10 @@
 
 void TCPConnector::init(){
     Mutex::ScopedLock l(lock);
+    assert(joined);
     ProtocolInitiation init(version);
     writeDataBlock(init);
+    joined = false;
     for (int i = 0; i < 32; i++) {
         aio->queueReadBuffer(new Buff(maxFrameSize));
     }

Modified: qpid/trunk/qpid/cpp/src/qpid/client/RdmaConnector.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/RdmaConnector.cpp?rev=781376&r1=781375&r2=781376&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/RdmaConnector.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/RdmaConnector.cpp Wed Jun  3 13:52:44 
2009
@@ -68,6 +68,7 @@
 
     sys::Mutex pollingLock;
     bool polling;
+    bool joined;
 
     sys::ShutdownHandler* shutdownHandler;
     framing::InputHandler* input;
@@ -147,6 +148,7 @@
       version(ver), 
       initiated(false),
       polling(false),
+      joined(true),
       shutdownHandler(0),
       aio(0),
       poller(p),
@@ -162,6 +164,7 @@
 void RdmaConnector::connect(const std::string& host, int port){
     Mutex::ScopedLock l(pollingLock);
     assert(!polling);
+    assert(joined);
 
     // This stuff needs to abstracted out of here to a platform specific file
     ::addrinfo *res;
@@ -185,6 +188,7 @@
     c->start(poller);
 
     polling = true;
+    joined = false;
 }
 
 // The following only gets run when connected

Modified: qpid/trunk/qpid/cpp/src/qpid/client/SslConnector.cpp
URL: 
http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/qpid/client/SslConnector.cpp?rev=781376&r1=781375&r2=781376&view=diff
==============================================================================
--- qpid/trunk/qpid/cpp/src/qpid/client/SslConnector.cpp (original)
+++ qpid/trunk/qpid/cpp/src/qpid/client/SslConnector.cpp Wed Jun  3 13:52:44 
2009
@@ -89,6 +89,7 @@
 
     sys::Mutex closedLock;
     bool closed;
+    bool joined;
 
     sys::ShutdownHandler* shutdownHandler;
     framing::InputHandler* input;
@@ -114,6 +115,8 @@
 
     std::string identifier;
 
+    ConnectionImpl* impl;
+
     void connect(const std::string& host, int port);
     void init();
     void close();
@@ -171,10 +174,12 @@
       version(ver), 
       initiated(false),
       closed(true),
+      joined(true),
       shutdownHandler(0),
       writer(maxFrameSize, cimpl),
       aio(0),
-      poller(p)
+      poller(p),
+      impl(cimpl)
 {
     QPID_LOG(debug, "SslConnector created for " << version.toString());
     //TODO: how do we want to handle socket configuration with ssl?
@@ -209,8 +214,10 @@
 
 void SslConnector::init(){
     Mutex::ScopedLock l(closedLock);
+    assert(joined);
     ProtocolInitiation init(version);
     writeDataBlock(init);
+    joined = false;
     for (int i = 0; i < 32; i++) {
         aio->queueReadBuffer(new Buff(maxFrameSize));
     }



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to