summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/client/ConnectionHandler.h
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2010-05-27 18:09:13 +0000
committerGordon Sim <gsim@apache.org>2010-05-27 18:09:13 +0000
commitc95b2615abf0883f7d92aad73138a4dda14e1311 (patch)
tree7eb2195eab5c7ecafab17e553635a434b20dee64 /cpp/src/qpid/client/ConnectionHandler.h
parent91491e533896be58438ba2dc0e199461b4320653 (diff)
downloadqpid-python-c95b2615abf0883f7d92aad73138a4dda14e1311.tar.gz
QPID-2631: For blocking Bounds::expand() calls, only increase the current count when there is space. In SessionImpl::send() expand bounds before queueing frame. Expand bounds for all frames sent (including connection frames and cluster specific frames).
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@948936 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/client/ConnectionHandler.h')
-rw-r--r--cpp/src/qpid/client/ConnectionHandler.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/cpp/src/qpid/client/ConnectionHandler.h b/cpp/src/qpid/client/ConnectionHandler.h
index 5f4b454f53..61709db174 100644
--- a/cpp/src/qpid/client/ConnectionHandler.h
+++ b/cpp/src/qpid/client/ConnectionHandler.h
@@ -47,6 +47,8 @@ struct SecuritySettings;
namespace client {
+class Bounds;
+
class ConnectionHandler : private StateManager,
public ConnectionSettings,
public ChainableFrameHandler,
@@ -60,9 +62,10 @@ class ConnectionHandler : private StateManager,
class Adapter : public framing::FrameHandler
{
ConnectionHandler& handler;
+ Bounds& bounds;
public:
- Adapter(ConnectionHandler& h) : handler(h) {}
- void handle(framing::AMQFrame& f) { handler.out(f); }
+ Adapter(ConnectionHandler& h, Bounds& bounds);
+ void handle(framing::AMQFrame& f);
};
Adapter outHandler;
@@ -102,7 +105,7 @@ public:
typedef boost::function<void(uint16_t, const std::string&)> ErrorListener;
typedef boost::function<const qpid::sys::SecuritySettings*()> GetSecuritySettings;
- ConnectionHandler(const ConnectionSettings&, framing::ProtocolVersion&);
+ ConnectionHandler(const ConnectionSettings&, framing::ProtocolVersion&, Bounds&);
void received(framing::AMQFrame& f) { incoming(f); }