summaryrefslogtreecommitdiff
path: root/qpid/cpp/src/qpid/client/ConnectionHandler.h
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2008-04-29 20:15:18 +0000
committerGordon Sim <gsim@apache.org>2008-04-29 20:15:18 +0000
commit414f520f8b730c8437ed9c42628f07824a7e9dd1 (patch)
treefca4fab15a6fde4943288cc8efe8c7b06a2cd787 /qpid/cpp/src/qpid/client/ConnectionHandler.h
parent6915cc6324acacbbe7707e19573f0e35c5010e85 (diff)
downloadqpid-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.h35
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); }