FINERACT-1682: Fix job key refresh logic for inactive schedulers
This commit is contained in:
committed by
Aleksandar Vidakovic
parent
7b55951a3a
commit
6f39c8ffed
+7
-6
@@ -230,17 +230,18 @@ public class JobRegisterServiceImpl implements JobRegisterService, ApplicationLi
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void scheduleJob(final ScheduledJobDetail scheduledJobDetails) {
|
public void scheduleJob(final ScheduledJobDetail scheduledJobDetails) {
|
||||||
if (!scheduledJobDetails.isActiveSchedular()) {
|
|
||||||
scheduledJobDetails.updateNextRunTime(null);
|
|
||||||
scheduledJobDetails.updateCurrentlyRunningStatus(false);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
try {
|
try {
|
||||||
final JobDetail jobDetail = createJobDetail(scheduledJobDetails);
|
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 Trigger trigger = createTrigger(scheduledJobDetails, jobDetail);
|
||||||
final Scheduler scheduler = getScheduler(scheduledJobDetails);
|
final Scheduler scheduler = getScheduler(scheduledJobDetails);
|
||||||
scheduler.scheduleJob(jobDetail, trigger);
|
scheduler.scheduleJob(jobDetail, trigger);
|
||||||
scheduledJobDetails.updateJobKey(getJobKeyAsString(jobDetail.getKey()));
|
|
||||||
scheduledJobDetails.updateNextRunTime(trigger.getNextFireTime());
|
scheduledJobDetails.updateNextRunTime(trigger.getNextFireTime());
|
||||||
scheduledJobDetails.updateErrorLog(null);
|
scheduledJobDetails.updateErrorLog(null);
|
||||||
} catch (final Throwable throwable) {
|
} catch (final Throwable throwable) {
|
||||||
|
|||||||
Reference in New Issue
Block a user