Skip to content
Snippets Groups Projects
Select Git revision
  • d11ed0b886eac05f713ac781e5ddd26706866dee
  • main default protected
  • chatrooms_with_persistent_messages
  • chatrooms_video
  • echo_handler_and_simple_chat_demo_video
  • demo_chatrooms
  • demo
7 results

SimpleChatHandler.kt

Blame
  • SimpleChatHandler.kt 804 B
    package de.thk.gm.websocketsdemo.handlers
    
    import org.springframework.web.socket.CloseStatus
    import org.springframework.web.socket.TextMessage
    import org.springframework.web.socket.WebSocketSession
    import org.springframework.web.socket.handler.TextWebSocketHandler
    
    class SimpleChatHandler : TextWebSocketHandler() {
        private var sessions: ArrayList<WebSocketSession> = ArrayList()
        override fun afterConnectionEstablished(session: WebSocketSession) {
            sessions.add(session)
        }
    
        override fun handleTextMessage(session: WebSocketSession, message: TextMessage) {
            for (session in sessions) {
                session.sendMessage(message)
            }
        }
    
        override fun afterConnectionClosed(session: WebSocketSession, status: CloseStatus) {
            sessions.remove(session)
        }
    }