diff --git a/api/src/main/java/be/naaturel/boardmateapi/controllers/ChatController.java b/api/src/main/java/be/naaturel/boardmateapi/controllers/ChatController.java index 9df6041b..31dcef34 100644 --- a/api/src/main/java/be/naaturel/boardmateapi/controllers/ChatController.java +++ b/api/src/main/java/be/naaturel/boardmateapi/controllers/ChatController.java @@ -110,16 +110,17 @@ public class ChatController { ObjectMapper mapper = new ObjectMapper(); WebexWebhook payload = mapper.readValue(rawPayload, WebexWebhook.class); - Integer seen = expectedMessages.get(payload.getData().getId()); - if(seen != null){ - if(seen > 1){ - Logger.displayInfo("Rejected"); - expectedMessages.remove(payload.getData().getId()); + expectedMessages.compute(payload.getData().getId(), (key, seen) -> { + if (seen == null) { + Logger.displayInfo("Accepted message: " + key); + return 1; + } else if (seen >= 1) { + Logger.displayInfo("Rejected message: " + key); + return null; } else { - seen += 1; - expectedMessages.put(payload.getData().getId(), seen); + return seen + 1; } - } + }); Room room = webexService.getRoomById(payload.getData().getRoomId()); Message msg = webexService.fetchMessage(payload.getData().getId());