diff --git a/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java b/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java index 690774f4ed..076bc219fc 100644 --- a/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java +++ b/war/src/main/java/se/su/dsv/scipro/war/WorkerConfig.java @@ -11,6 +11,7 @@ import org.springframework.context.annotation.Scope; import org.springframework.transaction.PlatformTransactionManager; import se.su.dsv.scipro.file.FileService; import se.su.dsv.scipro.finalseminar.FinalSeminarService; +import se.su.dsv.scipro.firstmeeting.FirstMeetingReminderWorker; import se.su.dsv.scipro.firstmeeting.FirstMeetingService; import se.su.dsv.scipro.generalsystemsettings.GeneralSystemSettingsService; import se.su.dsv.scipro.mail.MailEventService; @@ -21,6 +22,9 @@ import se.su.dsv.scipro.match.ApplicationPeriodService; import se.su.dsv.scipro.match.IdeaCreationJudge; import se.su.dsv.scipro.match.IdeaService; import se.su.dsv.scipro.misc.DaysService; +import se.su.dsv.scipro.peer.ExpiredRequestWorker; +import se.su.dsv.scipro.peer.ExpiredReviewResetWorker; +import se.su.dsv.scipro.peer.PeerWorkerSchedules; import se.su.dsv.scipro.plagiarism.PlagiarismRequestRepository; import se.su.dsv.scipro.plagiarism.PlagiarismSubmitter; import se.su.dsv.scipro.plagiarism.urkund.StatusPollingWorker; @@ -86,6 +90,23 @@ public class WorkerConfig { return new TemporaryWorkerScheduler(scheduler, mailEventWorker, notificationCompilationWorker, ideaExportWorker, thesisUploadReminderWorker, thesisUploadDeadlineWorker, manualMatchRemindWorkerProvider, reviewerDecisionReminderWorker, plagiarismSubmitter, urkundPoller, removeFulfilledPartnerAds, gradeFinalSeminarParticipantReminderWorkerProvider); } + @Bean + public FirstMeetingReminderWorker.FirstMeetingReminderWorkerSchedule firstMeetingReminderWorkerScheduler( + Scheduler scheduler, + Provider<FirstMeetingReminderWorker> firstMeetingReminderWorkerProvider) + { + return new FirstMeetingReminderWorker.FirstMeetingReminderWorkerSchedule(scheduler, firstMeetingReminderWorkerProvider); + } + + @Bean + public PeerWorkerSchedules peerWorkerSchedules( + Scheduler scheduler, + Provider<ExpiredRequestWorker> expiredRequestWorker, + Provider<ExpiredReviewResetWorker> expiredReviewResetWorker) + { + return new PeerWorkerSchedules(scheduler, expiredRequestWorker, expiredReviewResetWorker); + } + @Bean @ConditionalOnMissingBean(IdeaCreationJudge.class) public IdeaCreationJudge ideaCreationJudge() { @@ -199,5 +220,26 @@ public class WorkerConfig { { return new GradeFinalSeminarParticipantReminderWorker(finalSeminarService, mailEventService, generalSystemSettingsService); } + + @Bean + public FirstMeetingReminderWorker firstMeetingReminderWorker( + IdeaService ideaService, + DaysService daysService, + MailEventService mailEventService, + GeneralSystemSettingsService generalSystemSettingsService, + Clock clock) + { + return new FirstMeetingReminderWorker(ideaService, daysService, mailEventService, generalSystemSettingsService, clock); + } + + @Bean + public ExpiredReviewResetWorker expiredReviewResetWorker() { + return new ExpiredReviewResetWorker(); + } + + @Bean + public ExpiredRequestWorker expiredRequestWorker() { + return new ExpiredRequestWorker(); + } } }