diff --git a/PeerAtCodeFramework.jar b/PeerAtCodeFramework.jar index 13a01ae..e10f0c9 100644 Binary files a/PeerAtCodeFramework.jar and b/PeerAtCodeFramework.jar differ diff --git a/src/dev/peerat/backend/Main.java b/src/dev/peerat/backend/Main.java index 757dfca..2ebb89f 100644 --- a/src/dev/peerat/backend/Main.java +++ b/src/dev/peerat/backend/Main.java @@ -127,7 +127,6 @@ public class Main{ locker.init(key); try { while(true){ - locker.lock(key); Context instance = locker.getValue(key); if(instance == null) continue; System.out.println("["+((instance.isLogged()) ? repo.getPlayerRepository().getPlayer(instance.getUser().getId()).getPseudo() : "?")+"] "+instance.getType()+" "+instance.getPath()+" -> "+instance.getResponseCode()); @@ -141,20 +140,7 @@ public class Main{ new Thread(new Runnable(){ public void run(){ - Key key = new Key(); - - Locker locker = router.getExceptionLogger(); - - locker.init(key); - try { - while(true){ - locker.lock(key); - locker.getValue(key).printStackTrace(); - } - }catch(Exception e){ - e.printStackTrace(); - } - locker.remove(key); + router.getExceptionLogger().listen((throwable) -> throwable.printStackTrace(), (exception) -> exception.printStackTrace()); } }).start(); diff --git a/src/dev/peerat/backend/bonus/discord/Bot.java b/src/dev/peerat/backend/bonus/discord/Bot.java index 705e8be..297f800 100644 --- a/src/dev/peerat/backend/bonus/discord/Bot.java +++ b/src/dev/peerat/backend/bonus/discord/Bot.java @@ -55,7 +55,6 @@ public class Bot extends Thread{ } while(true){ - locker.lock(key); Group group = locker.getValue(key); Integer chapter = group.getLinkToChapter(); // Integer puzzle = group.getLinkToPuzzle(); diff --git a/src/dev/peerat/backend/routes/DynamicLeaderboard.java b/src/dev/peerat/backend/routes/DynamicLeaderboard.java index 5748e01..2698600 100644 --- a/src/dev/peerat/backend/routes/DynamicLeaderboard.java +++ b/src/dev/peerat/backend/routes/DynamicLeaderboard.java @@ -41,7 +41,6 @@ public class DynamicLeaderboard extends Leaderboard{ }else{ playersLeaderboard(writer); } - locker.lock(key); } }catch(Exception e){ e.printStackTrace(); diff --git a/src/dev/peerat/backend/routes/EventSSE.java b/src/dev/peerat/backend/routes/EventSSE.java index e0aba04..62ddc44 100644 --- a/src/dev/peerat/backend/routes/EventSSE.java +++ b/src/dev/peerat/backend/routes/EventSSE.java @@ -28,7 +28,6 @@ public class EventSSE{ locker.init(key); try { while(true){ - locker.lock(key); GroupMessage message = locker.getValue(key); if(message.getGroup() == null || message.getGroup().equals(group)){ JsonMap send = new JsonMap(); diff --git a/src/dev/peerat/backend/routes/PuzzleResponse.java b/src/dev/peerat/backend/routes/PuzzleResponse.java index c415f5e..4baaadd 100644 --- a/src/dev/peerat/backend/routes/PuzzleResponse.java +++ b/src/dev/peerat/backend/routes/PuzzleResponse.java @@ -115,7 +115,7 @@ public class PuzzleResponse implements Response { writer.write(responseJSON.toString()); writer.flush(); - leaderboard.setValue(completion); + leaderboard.pushValue(completion); } private void saveSourceCode(ReceivedResponse received, Player player){ diff --git a/src/dev/peerat/backend/routes/admins/GroupController.java b/src/dev/peerat/backend/routes/admins/GroupController.java index 6cecf10..cade6b8 100644 --- a/src/dev/peerat/backend/routes/admins/GroupController.java +++ b/src/dev/peerat/backend/routes/admins/GroupController.java @@ -25,7 +25,7 @@ public class GroupController { return; } - locker.setValue(new GroupMessage(json.get("group"), json.get("message"))); + locker.pushValue(new GroupMessage(json.get("group"), json.get("message"))); context.response(200); } diff --git a/src/dev/peerat/backend/routes/admins/LogController.java b/src/dev/peerat/backend/routes/admins/LogController.java index b9f19cf..c7259f6 100644 --- a/src/dev/peerat/backend/routes/admins/LogController.java +++ b/src/dev/peerat/backend/routes/admins/LogController.java @@ -63,7 +63,6 @@ public class LogController { locker.init(key); try { while(!reader.isClosed()){ - locker.lock(key); T instance = locker.getValue(key); JsonMap json = new JsonMap(); consumer.accept(json, instance); diff --git a/src/dev/peerat/backend/routes/admins/WebHookLeaderboard.java b/src/dev/peerat/backend/routes/admins/WebHookLeaderboard.java index 9a3b560..ed1ed2b 100644 --- a/src/dev/peerat/backend/routes/admins/WebHookLeaderboard.java +++ b/src/dev/peerat/backend/routes/admins/WebHookLeaderboard.java @@ -21,7 +21,7 @@ public class WebHookLeaderboard implements Response{ @Route(path = "^/admin/webhook/leaderboard/$", needLogin = true) public void exec(Matcher matcher, Context context, HttpReader reader, HttpWriter writer) throws Exception{ - locker.setValue(new Completion(0, 0)); + locker.pushValue(new Completion(0, 0)); context.response(200); } diff --git a/src/dev/peerat/backend/routes/groups/GroupCreate.java b/src/dev/peerat/backend/routes/groups/GroupCreate.java index bf6acc0..a4b0877 100644 --- a/src/dev/peerat/backend/routes/groups/GroupCreate.java +++ b/src/dev/peerat/backend/routes/groups/GroupCreate.java @@ -71,7 +71,7 @@ public class GroupCreate extends FormResponse { if (this.repo.insertGroup(newGroup, user)) { context.response(200); - locker.setValue(newGroup); + locker.pushValue(newGroup); } else { context.response(403); } diff --git a/src/dev/peerat/backend/routes/groups/GroupJoin.java b/src/dev/peerat/backend/routes/groups/GroupJoin.java index f1c6940..f39d75e 100644 --- a/src/dev/peerat/backend/routes/groups/GroupJoin.java +++ b/src/dev/peerat/backend/routes/groups/GroupJoin.java @@ -75,7 +75,7 @@ public class GroupJoin implements Response{ if (this.groupRepo.insertUserInGroup(group, user)) { context.response(200); - leaderboard.setValue(new Completion(0, 0, 0, null, 0)); + leaderboard.pushValue(new Completion(0, 0, 0, null, 0)); } else { context.response(403); } diff --git a/src/dev/peerat/backend/routes/groups/GroupQuit.java b/src/dev/peerat/backend/routes/groups/GroupQuit.java index 7bf6f19..8ddc9fd 100644 --- a/src/dev/peerat/backend/routes/groups/GroupQuit.java +++ b/src/dev/peerat/backend/routes/groups/GroupQuit.java @@ -67,7 +67,7 @@ public class GroupQuit implements Response{ if (this.groupRepo.leaveGroup(group, user)) { context.response(200); - leaderboard.setValue(new Completion(0, 0, 0, null, 0)); + leaderboard.pushValue(new Completion(0, 0, 0, null, 0)); } else { context.response(403); }