SchedulerTriggerListener really should just be normally injected, like
everything else; it's an anti pattern to directly use applicationContext, unless there is a specific good reason for it.
This commit is contained in:
+7
-2
@@ -54,6 +54,7 @@ public class JobRegisterServiceImpl implements JobRegisterService {
|
||||
private TenantDetailsService tenantDetailsService;
|
||||
private SchedulerJobListener schedulerJobListener;
|
||||
private SchedulerStopListener schedulerStopListener;
|
||||
private SchedulerTriggerListener globalSchedulerTriggerListener;
|
||||
|
||||
private final HashMap<String, Scheduler> schedulers = new HashMap<String, Scheduler>(4);
|
||||
|
||||
@@ -82,6 +83,11 @@ public class JobRegisterServiceImpl implements JobRegisterService {
|
||||
this.schedulerStopListener = schedulerStopListener;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
public void setGlobalTriggerListener(SchedulerTriggerListener globalTriggerListener) {
|
||||
this.globalSchedulerTriggerListener = globalTriggerListener;
|
||||
}
|
||||
|
||||
@PostConstruct
|
||||
public void loadAllJobs() {
|
||||
final List<MifosPlatformTenant> allTenants = this.tenantDetailsService.findAllTenants();
|
||||
@@ -277,8 +283,7 @@ public class JobRegisterServiceImpl implements JobRegisterService {
|
||||
final SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean();
|
||||
schedulerFactoryBean.setSchedulerName(name);
|
||||
schedulerFactoryBean.setGlobalJobListeners(jobListeners);
|
||||
final TriggerListener globalTriggerListener = this.applicationContext.getBean("schedulerTriggerListener", TriggerListener.class);
|
||||
final TriggerListener[] globalTriggerListeners = { globalTriggerListener };
|
||||
final TriggerListener[] globalTriggerListeners = { globalSchedulerTriggerListener };
|
||||
schedulerFactoryBean.setGlobalTriggerListeners(globalTriggerListeners);
|
||||
final Properties quartzProperties = new Properties();
|
||||
quartzProperties.put(SchedulerFactoryBean.PROP_THREAD_COUNT, Integer.toString(noOfThreads));
|
||||
|
||||
Reference in New Issue
Block a user