FINERACT-1682: Fix job key refresh logic for inactive schedulers

This commit is contained in:
Adam Saghy
2022-08-08 11:43:33 +02:00
committed by Aleksandar Vidakovic
parent 7b55951a3a
commit 6f39c8ffed
@@ -230,17 +230,18 @@ public class JobRegisterServiceImpl implements JobRegisterService, ApplicationLi
@Override
public void scheduleJob(final ScheduledJobDetail scheduledJobDetails) {
if (!scheduledJobDetails.isActiveSchedular()) {
scheduledJobDetails.updateNextRunTime(null);
scheduledJobDetails.updateCurrentlyRunningStatus(false);
return;
}
try {
final JobDetail jobDetail = createJobDetail(scheduledJobDetails);
scheduledJobDetails.updateJobKey(getJobKeyAsString(jobDetail.getKey()));
if (!scheduledJobDetails.isActiveSchedular()) {
scheduledJobDetails.updateNextRunTime(null);
scheduledJobDetails.updateCurrentlyRunningStatus(false);
return;
}
final Trigger trigger = createTrigger(scheduledJobDetails, jobDetail);
final Scheduler scheduler = getScheduler(scheduledJobDetails);
scheduler.scheduleJob(jobDetail, trigger);
scheduledJobDetails.updateJobKey(getJobKeyAsString(jobDetail.getKey()));
scheduledJobDetails.updateNextRunTime(trigger.getNextFireTime());
scheduledJobDetails.updateErrorLog(null);
} catch (final Throwable throwable) {