@Inject private EventBus eventBus; (the exampel for ChatResource in the showcase is not correct )
Code: Select all
public class ChatResource {
@PathParam("room")
private String room;
@PathParam("user")
private String username;
@Inject
private ServletContext ctx;
@Inject
private EventBus eventBus;
@Inject
private RemoteEndpoint endpoint;
@OnOpen
public void onOpen() {
eventBus.publish(room + "/*", new Message(String.format("%s has entered the room '%s'", username, room), true));
}
@OnClose
public void onClose() {
ChatUsers users= (ChatUsers) ctx.getAttribute("chatUsers");
users.remove(username);
eventBus.publish(room + "/*", new Message(String.format("%s has left the room", username), true));
}
@OnMessage(decoders = {MessageDecoder.class}, encoders = {MessageEncoder.class})
public Message onMessage(Message message) {
return message;
}