Example usage for org.springframework.messaging.simp SimpAttributes sessionCompleted

List of usage examples for org.springframework.messaging.simp SimpAttributes sessionCompleted

Introduction

In this page you can find the example usage for org.springframework.messaging.simp SimpAttributes sessionCompleted.

Prototype

public void sessionCompleted() 

Source Link

Document

Invoked when the session is completed.

Usage

From source file:org.springframework.web.socket.messaging.StompSubProtocolHandler.java

@Override
public void afterSessionEnded(WebSocketSession session, CloseStatus closeStatus, MessageChannel outputChannel) {
    this.decoders.remove(session.getId());

    Message<byte[]> message = createDisconnectMessage(session);
    SimpAttributes simpAttributes = SimpAttributes.fromMessage(message);
    try {//w  w w.ja  v  a2s .c  o  m
        SimpAttributesContextHolder.setAttributes(simpAttributes);
        if (this.eventPublisher != null) {
            Principal user = getUser(session);
            publishEvent(this.eventPublisher,
                    new SessionDisconnectEvent(this, message, session.getId(), closeStatus, user));
        }
        outputChannel.send(message);
    } finally {
        this.stompAuthentications.remove(session.getId());
        SimpAttributesContextHolder.resetAttributes();
        simpAttributes.sessionCompleted();
    }
}