added website and web socket handler

This commit is contained in:
ori agranat
2019-09-11 20:28:56 +03:00
parent e72bb51308
commit fc554d6bd6
47 changed files with 1929 additions and 13 deletions

View File

@@ -1,9 +1,38 @@
package Handlers.Web;
import io.javalin.Javalin;
import io.javalin.websocket.WsContext;
import java.util.ArrayList;
import java.util.List;
import org.json.JSONObject;
public class Server {
private static List<WsContext> users = new ArrayList<WsContext>();
public static void main(int port) {
Javalin app = Javalin.create().start(port);
app.get("/", ctx -> ctx.result("Hello World"));
Javalin app = Javalin.create();
app.config.addStaticFiles("web");
app.ws("/websocket", ws ->{
ws.onConnect(ctx -> {
users.add(ctx);
System.out.println("Socket Connected");
});
ws.onClose(ctx -> {
users.remove(ctx);
System.out.println("Socket Disconnected");
});
ws.onMessage(ctx -> {
broadcastMessage(ctx, ctx.message());
});
});
app.start(port);
}
private static void broadcastMessage(WsContext sendingUser, String message){
for (var user : users)
{
if (user != sendingUser){
user.send(message);
}
}
}
}