diff options
| author | Gordon Sim <gsim@apache.org> | 2008-04-22 20:14:15 +0000 |
|---|---|---|
| committer | Gordon Sim <gsim@apache.org> | 2008-04-22 20:14:15 +0000 |
| commit | 1852df5d00eda8d25b7c11a01144fca629fc6427 (patch) | |
| tree | 44162d68c73cc55f01b9818aa1333a0187916823 /cpp/src/qpid/broker/SessionHandler.cpp | |
| parent | 7b977ed726d89a5a28f6113a0252c8ccc17ed64b (diff) | |
| download | qpid-python-1852df5d00eda8d25b7c11a01144fca629fc6427.tar.gz | |
Moved federation to final 0-10 codepath
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650635 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/SessionHandler.cpp')
| -rw-r--r-- | cpp/src/qpid/broker/SessionHandler.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/cpp/src/qpid/broker/SessionHandler.cpp b/cpp/src/qpid/broker/SessionHandler.cpp index 8310980800..d5caf789c0 100644 --- a/cpp/src/qpid/broker/SessionHandler.cpp +++ b/cpp/src/qpid/broker/SessionHandler.cpp @@ -83,7 +83,7 @@ void SessionHandler::handleIn(AMQFrame& f) { } bool SessionHandler::isValid(AMQMethodBody* m) { - return session.get() || m->isA<SessionAttachBody>(); + return session.get() || m->isA<SessionAttachBody>() || m->isA<SessionAttachedBody>(); } void SessionHandler::handleOut(AMQFrame& f) { @@ -134,10 +134,13 @@ void SessionHandler::attach(const std::string& _name, bool /*force*/) peerSession.commandPoint(session->nextOut, 0); } -void SessionHandler::attached(const std::string& /*name*/) +void SessionHandler::attached(const std::string& _name) { + name = _name;//TODO: this should be used in conjunction with + //userid for connection as sessions identity std::auto_ptr<SessionState> state(connection.broker.getSessionManager().open(*this, 0)); session.reset(state.release()); + peerSession.commandPoint(session->nextOut, 0); } void SessionHandler::detach(const std::string& name) |
