summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/SemanticHandler.cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2007-09-28 09:27:03 +0000
committerGordon Sim <gsim@apache.org>2007-09-28 09:27:03 +0000
commit816b56837d862980e9086fe8ed02b84ca764eb1f (patch)
tree97304f72784fa28bbd864a5f3762d9aa01ba2a68 /cpp/src/qpid/broker/SemanticHandler.cpp
parent5cf480a3cb1fcbaf54da0674ee1f7b1d57ded387 (diff)
downloadqpid-python-816b56837d862980e9086fe8ed02b84ca764eb1f.tar.gz
Honour sync bit when processing L4 method
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@580266 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/SemanticHandler.cpp')
-rw-r--r--cpp/src/qpid/broker/SemanticHandler.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/cpp/src/qpid/broker/SemanticHandler.cpp b/cpp/src/qpid/broker/SemanticHandler.cpp
index 0bb813ebfd..048c73c4b0 100644
--- a/cpp/src/qpid/broker/SemanticHandler.cpp
+++ b/cpp/src/qpid/broker/SemanticHandler.cpp
@@ -132,7 +132,10 @@ void SemanticHandler::handleCommand(framing::AMQMethodBody* method)
} else if (v.hasResult()) {
session.getProxy().getExecution().result(id.getValue(), v.getResult());
}
- //TODO: if (method->isSync()) { incoming.synch(id); sendCompletion(); }
+ if (method->isSync()) {
+ incoming.sync(id);
+ sendCompletion();
+ }
//TODO: if window gets too large send unsolicited completion
}
@@ -156,7 +159,10 @@ void SemanticHandler::handleContent(AMQFrame& frame)
state.handle(msg);
msgBuilder.end();
incoming.track(msg);
- //TODO: if (msg.getMethod().isSync()) { incoming.synch(msg.getCommandId()); sendCompletion(); }
+ if (msg->getFrames().getMethod()->isSync()) {
+ incoming.sync(msg->getCommandId());
+ sendCompletion();
+ }
}
}