38 lines
1.6 KiB
Java
38 lines
1.6 KiB
Java
package ru.ulstu.conference.service;
|
|
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
@Service
|
|
public class ConferenceScheduler {
|
|
private final static boolean IS_DEADLINE_NOTIFICATION_BEFORE_WEEK = true;
|
|
|
|
private final Logger log = LoggerFactory.getLogger(ConferenceScheduler.class);
|
|
|
|
private final ConferenceNotificationService conferenceNotificationService;
|
|
private final ConferenceService conferenceService;
|
|
|
|
public ConferenceScheduler(ConferenceNotificationService conferenceNotificationService,
|
|
ConferenceService conferenceService) {
|
|
this.conferenceNotificationService = conferenceNotificationService;
|
|
this.conferenceService = conferenceService;
|
|
}
|
|
|
|
|
|
@Scheduled(cron = "0 0 21-22 * * *", zone = "Europe/Samara")
|
|
public void checkDeadlineBeforeWeek() {
|
|
log.debug("ConferenceScheduler.checkDeadlineBeforeWeek started");
|
|
conferenceNotificationService.sendDeadlineNotifications(conferenceService.findAll(), IS_DEADLINE_NOTIFICATION_BEFORE_WEEK);
|
|
log.debug("ConferenceScheduler.checkDeadlineBeforeWeek finished");
|
|
}
|
|
|
|
@Scheduled(cron = "0 0 21-22 * * ?", zone = "Europe/Samara")
|
|
public void checkDeadlineAfterWeek() {
|
|
log.debug("ConferenceScheduler.checkDeadlineAfterWeek started");
|
|
conferenceNotificationService.sendDeadlineNotifications(conferenceService.findAll(), !IS_DEADLINE_NOTIFICATION_BEFORE_WEEK);
|
|
log.debug("ConferenceScheduler.checkDeadlineAfterWeek finished");
|
|
}
|
|
}
|