Author: gsim
Date: Thu Apr 17 05:21:38 2008
New Revision: 649059

URL: http://svn.apache.org/viewvc?rev=649059&view=rev
Log:
Some fixes to the transitional spec defs.


Modified:
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h
    incubator/qpid/trunk/qpid/cpp/xml/extra.xml

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp?rev=649059&r1=649058&r2=649059&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp 
(original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.cpp Thu Apr 
17 05:21:38 2008
@@ -26,6 +26,7 @@
 #include "qpid/framing/Connection010StartBody.h"
 #include "qpid/framing/ClientInvoker.h"
 #include "qpid/framing/ServerInvoker.h"
+#include "qpid/log/Statement.h"
 
 using namespace qpid;
 using namespace qpid::broker;
@@ -38,9 +39,9 @@
 const std::string en_US = "en_US";
 }
 
-void ConnectionHandler::close(ReplyCode code, const string& text, ClassId 
classId, MethodId methodId)
+void ConnectionHandler::close(ReplyCode code, const string& text, ClassId, 
MethodId)
 {
-    handler->client.close(code, text, classId, methodId);
+    handler->client.close(code, text);
 }
 
 void ConnectionHandler::handle(framing::AMQFrame& frame)
@@ -51,16 +52,16 @@
         if (handler->serverMode) {
             handled = 
invoke(static_cast<AMQP_ServerOperations::Connection010Handler&>(*handler.get()),
 *method);
         } else {
-            handled = 
invoke(static_cast<AMQP_ClientOperations::ConnectionHandler&>(*handler.get()), 
*method);
+            handled = 
invoke(static_cast<AMQP_ClientOperations::Connection010Handler&>(*handler.get()),
 *method);
         }
         if (!handled) {
             handler->connection.getChannel(frame.getChannel()).in(frame);
         }
 
     }catch(ConnectionException& e){
-        handler->client.close(e.code, e.what(), method->amqpClassId(), 
method->amqpMethodId());
+        handler->client.close(e.code, e.what());
     }catch(std::exception& e){
-        handler->client.close(541/*internal error*/, e.what(), 
method->amqpClassId(), method->amqpMethodId());
+        handler->client.close(541/*internal error*/, e.what());
     }
 }
 
@@ -116,9 +117,11 @@
 }
 
         
-void ConnectionHandler::Handler::close(uint16_t /*replyCode*/, const string& 
/*replyText*/, 
-    uint16_t /*classId*/, uint16_t /*methodId*/)
+void ConnectionHandler::Handler::close(uint16_t replyCode, const string& 
replyText)
 {
+    if (replyCode != 200) {
+        QPID_LOG(warning, "Client closed connection with " << replyCode << ": 
" << replyText);
+    }
     client.closeOk();
     connection.getOutput().close();
 } 
@@ -128,11 +131,9 @@
 } 
 
 
-void ConnectionHandler::Handler::start(uint8_t /*versionMajor*/,
-                                       uint8_t /*versionMinor*/,
-                                       const FieldTable& /*serverProperties*/,
-                                       const string& /*mechanisms*/,
-                                       const string& /*locales*/)
+void ConnectionHandler::Handler::start(const FieldTable& /*serverProperties*/,
+                                       const framing::Array& /*mechanisms*/,
+                                       const framing::Array& /*locales*/)
 {
     string uid = "qpidd";
     string pwd = "qpidd";
@@ -147,20 +148,21 @@
 }
 
 void ConnectionHandler::Handler::tune(uint16_t channelMax,
-                                      uint32_t frameMax,
-                                      uint16_t heartbeat)
+                                      uint16_t frameMax,
+                                      uint16_t /*heartbeatMin*/,
+                                      uint16_t heartbeatMax)
 {
     connection.setFrameMax(frameMax);
-    connection.setHeartbeat(heartbeat);
-    server.tuneOk(channelMax, frameMax, heartbeat);
-    server.open("/", "", true);
+    connection.setHeartbeat(heartbeatMax);
+    server.tuneOk(channelMax, frameMax, heartbeatMax);
+    server.open("/", Array(), true);
 }
 
-void ConnectionHandler::Handler::openOk(const string& /*knownHosts*/)
+void ConnectionHandler::Handler::openOk(const framing::Array& /*knownHosts*/)
 {
 }
 
-void ConnectionHandler::Handler::redirect(const string& /*host*/, const 
string& /*knownHosts*/)
+void ConnectionHandler::Handler::redirect(const string& /*host*/, const 
framing::Array& /*knownHosts*/)
 {
     
 }

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h?rev=649059&r1=649058&r2=649059&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/ConnectionHandler.h Thu Apr 
17 05:21:38 2008
@@ -41,10 +41,10 @@
 class ConnectionHandler : public framing::FrameHandler
 {
     struct Handler : public 
framing::AMQP_ServerOperations::Connection010Handler, 
-        public framing::AMQP_ClientOperations::ConnectionHandler
+        public framing::AMQP_ClientOperations::Connection010Handler
     {
         framing::AMQP_ClientProxy::Connection010 client;
-        framing::AMQP_ServerProxy::Connection server;
+        framing::AMQP_ServerProxy::Connection010 server;
         Connection& connection;
         bool serverMode;
     
@@ -57,26 +57,24 @@
         void heartbeat() {}
         void open(const std::string& virtualHost,
                   const framing::Array& capabilities, bool insist); 
-        void close(uint16_t replyCode, const std::string& replyText,
-                   uint16_t classId, uint16_t methodId); 
+        void close(uint16_t replyCode, const std::string& replyText); 
         void closeOk(); 
 
 
-        void start(uint8_t versionMajor,
-                   uint8_t versionMinor,
-                   const qpid::framing::FieldTable& serverProperties,
-                   const std::string& mechanisms,
-                   const std::string& locales);
+        void start(const qpid::framing::FieldTable& serverProperties,
+                   const framing::Array& mechanisms,
+                   const framing::Array& locales);
         
         void secure(const std::string& challenge);
         
         void tune(uint16_t channelMax,
-                  uint32_t frameMax,
-                  uint16_t heartbeat);
+                  uint16_t frameMax,
+                  uint16_t heartbeatMin,
+                  uint16_t heartbeatMax);
         
-        void openOk(const std::string& knownHosts);
+        void openOk(const framing::Array& knownHosts);
         
-        void redirect(const std::string& host, const std::string& knownHosts); 
       
+        void redirect(const std::string& host, const framing::Array& 
knownHosts);        
     };
     std::auto_ptr<Handler> handler;
   public:

Modified: incubator/qpid/trunk/qpid/cpp/xml/extra.xml
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/xml/extra.xml?rev=649059&r1=649058&r2=649059&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/xml/extra.xml (original)
+++ incubator/qpid/trunk/qpid/cpp/xml/extra.xml Thu Apr 17 05:21:38 2008
@@ -356,7 +356,7 @@
         <assert check="notnull" />
       </field>
 
-      <field name="known-hosts" domain="known-hosts" />
+      <field name="known-hosts" domain="array" />
     </method>
 
 <method name = "heartbeat" index="10">
@@ -391,18 +391,6 @@
 
       <field name="reply-code" domain="reply-code" />
       <field name="reply-text" domain="reply-text" />
-
-      <field name="class-id" domain="class-id" label="failing method class">
-        <doc>
-          When the close is provoked by a method exception, this is the class 
of the method.
-        </doc>
-      </field>
-
-      <field name="method-id" domain="method-id" label="failing method ID">
-        <doc>
-          When the close is provoked by a method exception, this is the ID of 
the method.
-        </doc>
-      </field>
     </method>
 
     <!-- - Method: connection.close-ok - - - - - - - - - - - - - - - - - - - - 
- - - - - - - - - -->


Reply via email to