diff options
| author | Gordon Sim <gsim@apache.org> | 2007-08-05 13:25:36 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2007-08-05 13:25:36 +0000 |
| commit | b2efcb6ed3e1e2104836928cda81ed69f2f24559 (patch) | |
| tree | 392ae403dcb0d32da3edaeaf8a1f497679d9102c /cpp/src/qpid/client/ConnectionHandler.cpp | |
| parent | b2fadec5d86e278d96112e915e67aec934e91046 (diff) | |
| download | qpid-python-b2efcb6ed3e1e2104836928cda81ed69f2f24559.tar.gz | |
Added first cut of generated client interface.
Old channel interface still supported; shares SessionCore with the new interface.
Todo: allow applications to signal completion of received commands; keywrod args for interface.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@562866 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/client/ConnectionHandler.cpp')
| -rw-r--r-- | cpp/src/qpid/client/ConnectionHandler.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/cpp/src/qpid/client/ConnectionHandler.cpp b/cpp/src/qpid/client/ConnectionHandler.cpp index ada3fa4fb0..f20f597d1f 100644 --- a/cpp/src/qpid/client/ConnectionHandler.cpp +++ b/cpp/src/qpid/client/ConnectionHandler.cpp @@ -175,8 +175,9 @@ void ConnectionHandler::handle(AMQMethodBody::shared_ptr method) if (method->isA<ConnectionCloseBody>()) { send(make_shared_ptr(new ConnectionCloseOkBody(version))); setState(CLOSED); - if (onClose) { - onClose(); + if (onError) { + ConnectionCloseBody::shared_ptr c(shared_polymorphic_cast<ConnectionCloseBody>(method)); + onError(c->getReplyCode(), c->getReplyText()); } } else { error(503, "Unexpected method on channel zero.", method->amqpClassId(), method->amqpMethodId()); |
