У меня есть метод ниже, который отправляет уведомление, а затем ждет 30 секунд.Но я пытаюсь добиться того, чтобы отправлять уведомления, а затем каждую секунду проверять базу данных (слишком много?), Чтобы узнать, получил ли я ответ от уведомления.Если я получил ответ из уведомления, мне больше не нужно ждать, и мне нужно продолжить.В противном случае мне нужно подождать до 30 секунд.
@RequestMapping("/sendNotification")
public HashMap<String, Object> sendNotification(@RequestBody SingleFieldPojo singleFieldPojo) {
MessagingFCM.sendMessageToDevice("Title", singleFieldPojo.getToken());
final CountDownLatch latch = new CountDownLatch(1);
try {
latch.await(30, TimeUnit.SECONDS);
} catch (InterruptedException e) {
e.printStackTrace();
latch.countDown();
}
latch.countDown();
HashMap<String, Object> output = new HashMap<>();
output.put("success", jobStatusRepo.findById(singleFieldPojo.getJobBoardId()));
return output;
}