Como obter uma instância do websocket existente
Eu estou trabalhando em um aplicativo que usa Websockets (Java EE 7) para enviar mensagens para todos os clientes conectados de forma assíncrona. O servidor (terminal Websocket) deve enviar essas mensagens sempre que um novo artigo (um modal de engajamento no meu aplicativo) for criado.
Toda vez que uma conexão é estabelecida com o endpoint do websocket, estou adicionando a sessão correspondente a uma lista, que eu poderia acessar externamente.
Mas o problema que tive foi, quando eu estava acessando este endpoint websocket criado para o qual todos os clientes conectados de fora (qualquer outra classe de negócios), eu obtive a instância existente (como um singleton).
Então, você pode me sugerir uma maneira de obter uma instância existente do endpoint websocket, já que não posso criá-la como nova MyWebsocketEndPoint () porque ela será criada pelo mecanismo interno websocket sempre que a solicitação de um cliente for recebido.
Para um ref:
private static WebSocketEndPoint INSTANCE = null;
public static WebSocketEndPoint getInstance() {
if(INSTANCE == null) {
// Instead of creating a new instance, I need an existing one
INSTANCE = new WebSocketEndPoint ();
}
return INSTANCE;
}
Desde já, obrigado.