diff options
| author | Gordon Sim <gsim@apache.org> | 2007-07-09 10:07:26 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2007-07-09 10:07:26 +0000 |
| commit | c4bf499790c30e0c98dd560c50c64c8a27fd9b89 (patch) | |
| tree | c1f439bb86e32027c1aea5ec4e78f291737e8230 /cpp/src/qpid/broker/BrokerAdapter.h | |
| parent | 32fe78d370e0572a5ed21ff3e84f668d8a2f2a49 (diff) | |
| download | qpid-python-c4bf499790c30e0c98dd560c50c64c8a27fd9b89.tar.gz | |
refactoring:
* separated out the connection level method handling from semantic level (session/channel level should also be separated)
* reduce coupling between Connection and Channel
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@554590 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/BrokerAdapter.h')
| -rw-r--r-- | cpp/src/qpid/broker/BrokerAdapter.h | 31 |
1 files changed, 4 insertions, 27 deletions
diff --git a/cpp/src/qpid/broker/BrokerAdapter.h b/cpp/src/qpid/broker/BrokerAdapter.h index 01ece30cfa..c66bdb3a31 100644 --- a/cpp/src/qpid/broker/BrokerAdapter.h +++ b/cpp/src/qpid/broker/BrokerAdapter.h @@ -60,7 +60,6 @@ class BrokerAdapter : public CoreRefs, public framing::AMQP_ServerOperations framing::ProtocolVersion getVersion() const; ChannelHandler* getChannelHandler() { return &channelHandler; } - ConnectionHandler* getConnectionHandler() { return &connectionHandler; } BasicHandler* getBasicHandler() { return &basicHandler; } ExchangeHandler* getExchangeHandler() { return &exchangeHandler; } BindingHandler* getBindingHandler() { return &bindingHandler; } @@ -81,35 +80,14 @@ class BrokerAdapter : public CoreRefs, public framing::AMQP_ServerOperations DtxCoordinationHandler* getDtxCoordinationHandler() { return &dtxHandler; } DtxDemarcationHandler* getDtxDemarcationHandler() { return &dtxHandler; } + ConnectionHandler* getConnectionHandler() { + throw ConnectionException(503, "Can't access connection class on non-zero channel!"); + } + framing::AMQP_ClientProxy& getProxy() { return proxy; } private: - class ConnectionHandlerImpl : - public ConnectionHandler, - public HandlerImpl<framing::AMQP_ClientProxy::Connection> - { - public: - ConnectionHandlerImpl(BrokerAdapter& parent) : HandlerImplType(parent) {} - - void startOk(const framing::MethodContext& context, - const qpid::framing::FieldTable& clientProperties, - const std::string& mechanism, const std::string& response, - const std::string& locale); - void secureOk(const framing::MethodContext& context, - const std::string& response); - void tuneOk(const framing::MethodContext& context, - uint16_t channelMax, - uint32_t frameMax, uint16_t heartbeat); - void open(const framing::MethodContext& context, - const std::string& virtualHost, - const std::string& capabilities, bool insist); - void close(const framing::MethodContext& context, uint16_t replyCode, - const std::string& replyText, - uint16_t classId, uint16_t methodId); - void closeOk(const framing::MethodContext& context); - }; - class ChannelHandlerImpl : public ChannelHandler, public HandlerImpl<framing::AMQP_ClientProxy::Channel> @@ -231,7 +209,6 @@ class BrokerAdapter : public CoreRefs, public framing::AMQP_ServerOperations Connection& connection; BasicHandlerImpl basicHandler; ChannelHandlerImpl channelHandler; - ConnectionHandlerImpl connectionHandler; ExchangeHandlerImpl exchangeHandler; BindingHandlerImpl bindingHandler; MessageHandlerImpl messageHandler; |
