package br.com.webbudget.application.channels; import javax.inject.Inject; import javax.websocket.OnClose; import javax.websocket.OnOpen; import javax.websocket.Session; import javax.websocket.server.ServerEndpoint; /** * Endpoint para fazer o push das notificacoes de mensangens do sistema * * @author Arthur Gregorio * * @version 1.0.0 * @since 2.3.0, 20/09/2016 */ @ServerEndpoint("/channels/messages") public class MessagesEndpoint { @Inject private WebSocketSessions sessions; /** * Quando uma sessao abrir, adiciona na lista * * @param session a sessao que se abre */ @OnOpen public void onOpenSession(Session session) { this.sessions.add(session); } /** * Quando uma sessao se encerrar, remove da lista * * @param session a sessao que se encerra */ @OnClose public void onCloseSession(Session session) { this.sessions.remove(session); } }