summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/ConnectionAdapter.cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2007-07-19 08:27:36 +0000
committerGordon Sim <gsim@apache.org>2007-07-19 08:27:36 +0000
commitb87a1e9d27755e2f98792567c29a0625b92c8654 (patch)
treecb1232987efbfa1cc0ef8ec5e62b07b6b6c918b6 /cpp/src/qpid/broker/ConnectionAdapter.cpp
parentdfe8a370b6580446cf970e27562ad0385178922f (diff)
downloadqpid-python-b87a1e9d27755e2f98792567c29a0625b92c8654.tar.gz
removed the need to pass MethodContext/RequestId through proxy and handler/adapter interfaces
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@557522 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/ConnectionAdapter.cpp')
-rw-r--r--cpp/src/qpid/broker/ConnectionAdapter.cpp25
1 files changed, 12 insertions, 13 deletions
diff --git a/cpp/src/qpid/broker/ConnectionAdapter.cpp b/cpp/src/qpid/broker/ConnectionAdapter.cpp
index 8a4450c881..bb2a66bfdb 100644
--- a/cpp/src/qpid/broker/ConnectionAdapter.cpp
+++ b/cpp/src/qpid/broker/ConnectionAdapter.cpp
@@ -50,10 +50,14 @@ void ConnectionAdapter::handleMethodInContext(
)
{
try{
+ handler->client.setResponseTo(context.getRequestId());
method->invoke(*this, context);
+ handler->client.setResponseTo(0);
}catch(ConnectionException& e){
+ handler->client.setResponseTo(0);
handler->client.close(e.code, e.toString(), method->amqpClassId(), method->amqpMethodId());
}catch(std::exception& e){
+ handler->client.setResponseTo(0);
handler->client.close(541/*internal error*/, e.what(), method->amqpClassId(), method->amqpMethodId());
}
}
@@ -82,43 +86,38 @@ Handler::Handler(Connection& c, ConnectionAdapter& a) :
proxy(a), client(proxy.getConnection()), connection(c) {}
-void Handler::startOk(
- const MethodContext&, const FieldTable& /*clientProperties*/,
+void Handler::startOk(const FieldTable& /*clientProperties*/,
const string& /*mechanism*/,
const string& /*response*/, const string& /*locale*/)
{
client.tune(framing::CHANNEL_MAX, connection.getFrameMax(), connection.getHeartbeat());
}
-void Handler::secureOk(
- const MethodContext&, const string& /*response*/){}
+void Handler::secureOk(const string& /*response*/){}
-void Handler::tuneOk(
- const MethodContext&, uint16_t /*channelmax*/,
+void Handler::tuneOk(uint16_t /*channelmax*/,
uint32_t framemax, uint16_t heartbeat)
{
connection.setFrameMax(framemax);
connection.setHeartbeat(heartbeat);
}
-void Handler::open(
- const MethodContext& context, const string& /*virtualHost*/,
+void Handler::open(const string& /*virtualHost*/,
const string& /*capabilities*/, bool /*insist*/)
{
string knownhosts;
client.openOk(
- knownhosts, context.getRequestId());
+ knownhosts);//GRS, context.getRequestId());
}
-void Handler::close(
- const MethodContext& context, uint16_t /*replyCode*/, const string& /*replyText*/,
+void Handler::close(uint16_t /*replyCode*/, const string& /*replyText*/,
uint16_t /*classId*/, uint16_t /*methodId*/)
{
- client.closeOk(context.getRequestId());
+ client.closeOk();//GRS context.getRequestId());
connection.getOutput().close();
}
-void Handler::closeOk(const MethodContext&){
+void Handler::closeOk(){
connection.getOutput().close();
}