package net.olemartin.push;
import net.olemartin.tools.SpringContext;
import org.eclipse.jetty.websocket.api.Session;
import org.eclipse.jetty.websocket.api.annotations.OnWebSocketMessage;
import org.eclipse.jetty.websocket.api.annotations.WebSocket;
import java.io.IOException;
@WebSocket
public class ChangeEndpoint {
public static enum MessageType {NEW_RESULT, PLAYER_ADDED, PLAYER_DELETED, NEW_MATCH}
private Session session;
@OnWebSocketMessage
public void onMessage(Session session, String s) {
this.session = session;
SpringContext.getTournamentResource().registerEndpoint(this);
SpringContext.getMatchResource().registerEndpoint(this);
SpringContext.getPlayerResource().registerEndpoint(this);
}
public void sendPush(MessageType message) {
if (session.isOpen()) {
try {
session.getRemote().sendString("{\"message\":\""+message.name()+"\"}");
} catch (IOException e) {
e.printStackTrace();
}
}
}
}