From 5891c19a838bd8987fbc04d23923f4f5f2ca4636 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Fri, 1 Feb 2008 18:21:01 +0000 Subject: Initial cut of inter-broker bridging git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@617590 13f79535-47bb-0310-9956-ffa450edef68 --- cpp/src/qpid/broker/ConnectionHandler.h | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to 'cpp/src/qpid/broker/ConnectionHandler.h') diff --git a/cpp/src/qpid/broker/ConnectionHandler.h b/cpp/src/qpid/broker/ConnectionHandler.h index aa8c9366cd..2a581d5675 100644 --- a/cpp/src/qpid/broker/ConnectionHandler.h +++ b/cpp/src/qpid/broker/ConnectionHandler.h @@ -24,8 +24,10 @@ #include #include "qpid/framing/amqp_types.h" #include "qpid/framing/AMQFrame.h" -#include "qpid/framing/AMQP_ServerOperations.h" +#include "qpid/framing/AMQP_ClientOperations.h" #include "qpid/framing/AMQP_ClientProxy.h" +#include "qpid/framing/AMQP_ServerOperations.h" +#include "qpid/framing/AMQP_ServerProxy.h" #include "qpid/framing/FrameHandler.h" #include "qpid/framing/ProtocolInitiation.h" #include "qpid/framing/ProtocolVersion.h" @@ -39,10 +41,13 @@ class Connection; // TODO aconway 2007-09-18: Rename to ConnectionHandler class ConnectionHandler : public framing::FrameHandler { - struct Handler : public framing::AMQP_ServerOperations::ConnectionHandler + struct Handler : public framing::AMQP_ServerOperations::ConnectionHandler, + public framing::AMQP_ClientOperations::ConnectionHandler { framing::AMQP_ClientProxy::Connection client; + framing::AMQP_ServerProxy::Connection server; Connection& connection; + bool serverMode; Handler(Connection& connection); void startOk(const qpid::framing::FieldTable& clientProperties, @@ -55,6 +60,23 @@ class ConnectionHandler : public framing::FrameHandler void close(uint16_t replyCode, const std::string& replyText, uint16_t classId, uint16_t methodId); void closeOk(); + + + void start(uint8_t versionMajor, + uint8_t versionMinor, + const qpid::framing::FieldTable& serverProperties, + const std::string& mechanisms, + const std::string& locales); + + void secure(const std::string& challenge); + + void tune(uint16_t channelMax, + uint32_t frameMax, + uint16_t heartbeat); + + void openOk(const std::string& knownHosts); + + void redirect(const std::string& host, const std::string& knownHosts); }; std::auto_ptr handler; public: -- cgit v1.2.1