Ensure concurrent WebSocketSession wrapper is used

Issue: SPR-13326
This commit is contained in:
Rossen Stoyanchev 2015-08-13 08:00:24 -04:00
parent 257cc63141
commit 7defbfc18b
1 changed files with 4 additions and 1 deletions

View File

@ -309,9 +309,12 @@ public class SubProtocolWebSocketHandler implements WebSocketHandler,
*/
@Override
public void handleMessage(WebSocketSession session, WebSocketMessage<?> message) throws Exception {
WebSocketSessionHolder holder = this.sessions.get(session.getId());
if (holder != null) {
session = holder.getSession();
}
SubProtocolHandler protocolHandler = findProtocolHandler(session);
protocolHandler.handleMessageFromClient(session, message, this.clientInboundChannel);
WebSocketSessionHolder holder = this.sessions.get(session.getId());
if (holder != null) {
holder.setHasHandledMessages();
}