diff options
author | Gordon Sim <gsim@apache.org> | 2008-04-29 20:15:18 +0000 |
---|---|---|
committer | Gordon Sim <gsim@apache.org> | 2008-04-29 20:15:18 +0000 |
commit | 414f520f8b730c8437ed9c42628f07824a7e9dd1 (patch) | |
tree | fca4fab15a6fde4943288cc8efe8c7b06a2cd787 /qpid/cpp/src/qpid/client/ConnectionHandler.h | |
parent | 6915cc6324acacbbe7707e19573f0e35c5010e85 (diff) | |
download | qpid-python-414f520f8b730c8437ed9c42628f07824a7e9dd1.tar.gz |
QPID-974: allow the size of the queue of outgoing frames to be restricted
QPID-544: tidy up configuration (ensuring desired settings are used correctly,
allowing tcp socket options to be set etc)
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@652083 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/src/qpid/client/ConnectionHandler.h')
-rw-r--r-- | qpid/cpp/src/qpid/client/ConnectionHandler.h | 35 |
1 files changed, 12 insertions, 23 deletions
diff --git a/qpid/cpp/src/qpid/client/ConnectionHandler.h b/qpid/cpp/src/qpid/client/ConnectionHandler.h index d7ab97ce31..1cf0c905ed 100644 --- a/qpid/cpp/src/qpid/client/ConnectionHandler.h +++ b/qpid/cpp/src/qpid/client/ConnectionHandler.h @@ -22,9 +22,10 @@ #define _ConnectionHandler_ #include "ChainableFrameHandler.h" -#include "Connector.h" +#include "ConnectionSettings.h" #include "StateManager.h" #include "qpid/framing/AMQMethodBody.h" +#include "qpid/framing/AMQP_HighestVersion.h" #include "qpid/framing/AMQP_ClientOperations.h" #include "qpid/framing/AMQP_ServerProxy.h" #include "qpid/framing/Array.h" @@ -35,27 +36,11 @@ namespace qpid { namespace client { -struct ConnectionProperties -{ - std::string uid; - std::string pwd; - std::string vhost; - framing::FieldTable properties; - std::string mechanism; - std::string locale; - framing::Array capabilities; - uint16_t heartbeat; - uint16_t maxChannels; - uint64_t maxFrameSize; - bool insist; - framing::ProtocolVersion version; -}; - -class ConnectionHandler : private StateManager, - public ConnectionProperties, - public ChainableFrameHandler, - public framing::InputHandler, - private framing::AMQP_ClientOperations::ConnectionHandler +class ConnectionHandler : private StateManager, + public ConnectionSettings, + public ChainableFrameHandler, + public framing::InputHandler, + private framing::AMQP_ClientOperations::ConnectionHandler { typedef framing::AMQP_ClientOperations::ConnectionHandler ConnectionOperations; enum STATES {NOT_STARTED, NEGOTIATING, OPENING, OPEN, CLOSING, CLOSED, FAILED}; @@ -73,6 +58,10 @@ class ConnectionHandler : private StateManager, framing::AMQP_ServerProxy::Connection proxy; uint16_t errorCode; std::string errorText; + bool insist; + framing::ProtocolVersion version; + framing::Array capabilities; + framing::FieldTable properties; void checkState(STATES s, const std::string& msg); @@ -96,7 +85,7 @@ public: typedef boost::function<void()> CloseListener; typedef boost::function<void(uint16_t, const std::string&)> ErrorListener; - ConnectionHandler(); + ConnectionHandler(const ConnectionSettings&, framing::ProtocolVersion&); void received(framing::AMQFrame& f) { incoming(f); } |