@Bean public SchedulerFactoryBean schedulerFactory(JobFactory jobFactory) { SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean(); schedulerFactoryBean.setApplicationContext(applicationContext); schedulerFactoryBean.setAutoStartup(schedulerProperties.isAutoStartup()); schedulerFactoryBean.setDataSource(dataSource); schedulerFactoryBean.setTransactionManager(platformTransactionManager); schedulerFactoryBean.setOverwriteExistingJobs(schedulerProperties.isOverwriteExistingJobs()); schedulerFactoryBean.setSchedulerFactoryClass(StdSchedulerFactory.class); schedulerFactoryBean.setBeanName(schedulerProperties.getBeanName()); schedulerFactoryBean.setJobFactory(jobFactory); schedulerFactoryBean.setWaitForJobsToCompleteOnShutdown(schedulerProperties.isWaitOnShutdown()); schedulerFactoryBean.setQuartzProperties(schedulerProperties.getProperties()); schedulerFactoryBean.setStartupDelay(schedulerProperties.getStartupDelay()); schedulerFactoryBean.setCalendars(calendarMap); schedulerFactoryBean.setSchedulerListeners(schedulerListeners); return schedulerFactoryBean; }
/** * Defines a clustered Quartz Scheduler configured by properties from * {@link #acBackendProperties}. * * @return Quart scheduler */ @Bean public SchedulerFactoryBean schedulerFactory() { SchedulerFactoryBean schedulerFactory = new SchedulerFactoryBean(); schedulerFactory.setAutoStartup(true); schedulerFactory.setDataSource(dataSource); schedulerFactory.setWaitForJobsToCompleteOnShutdown(true); schedulerFactory.setOverwriteExistingJobs(true); schedulerFactory.setSchedulerName("LogsnifferScheduler"); Properties quartzProperties = new Properties(logSnifferProperties); quartzProperties.setProperty("org.quartz.scheduler.instanceIdGenerator.class", SafeSimpleInstanceIdGenerator.class.getName()); schedulerFactory.setQuartzProperties(quartzProperties); return schedulerFactory; }
@PostConstruct public void init() { schedulerFactoryBean = new SchedulerFactoryBean(); schedulerFactoryBean.setQuartzProperties(schedulerProperties); schedulerFactoryBean.setWaitForJobsToCompleteOnShutdown(getBooleanWithDefault(schedulerProperties.getProperty("scheduler.waitForJobsToCompleteOnShutdown"), true)); schedulerFactoryBean.setApplicationContextSchedulerContextKey("applicationContext"); schedulerFactoryBean.setApplicationContext(applicationContext); try { schedulerFactoryBean.afterPropertiesSet(); schedulerFactoryBean.getScheduler().start(); } catch (Exception e) { log.error("Failed to instantiate scheduler with configuration from quartz.properties"); throw new SchedulerInstantiationException(e); } }
result.setWaitForJobsToCompleteOnShutdown(true); result.setOverwriteExistingJobs(true);
@Bean public SchedulerFactoryBean init(){ SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean(); schedulerFactoryBean.setDataSource(dataSource); schedulerFactoryBean.setTransactionManager(platformTransactionManager); schedulerFactoryBean.setQuartzProperties(externalPathConfig.quartzCfg()); schedulerFactoryBean.setAutoStartup(true); // 覆盖已存在定时任务 schedulerFactoryBean.setOverwriteExistingJobs(true); schedulerFactoryBean.setWaitForJobsToCompleteOnShutdown(false); schedulerFactoryBean.setJobFactory(autowiringQuartzJobFactory); return schedulerFactoryBean; }
factory.setStartupDelay(factorySettings.getStartupDelay()); factory.setAutoStartup(factorySettings.isAutoStartup()); factory.setWaitForJobsToCompleteOnShutdown(factorySettings.isWaitForJobsToCompleteOnShutdown()); factory.setOverwriteExistingJobs(factorySettings.isOverwriteExistingJobs()); factory.setExposeSchedulerInRepository(factorySettings.isExposeSchedulerInRepository());
@Bean public SchedulerFactoryBean schedulerFactory(JobFactory jobFactory) { SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean(); schedulerFactoryBean.setApplicationContext(applicationContext); schedulerFactoryBean.setAutoStartup(schedulerProperties.isAutoStartup()); schedulerFactoryBean.setDataSource(dataSource); schedulerFactoryBean.setTransactionManager(platformTransactionManager); schedulerFactoryBean.setOverwriteExistingJobs(schedulerProperties.isOverwriteExistingJobs()); schedulerFactoryBean.setSchedulerFactoryClass(StdSchedulerFactory.class); schedulerFactoryBean.setBeanName(schedulerProperties.getBeanName()); schedulerFactoryBean.setJobFactory(jobFactory); schedulerFactoryBean.setWaitForJobsToCompleteOnShutdown(schedulerProperties.isWaitOnShutdown()); schedulerFactoryBean.setQuartzProperties(schedulerProperties.getProperties()); schedulerFactoryBean.setStartupDelay(schedulerProperties.getStartupDelay()); schedulerFactoryBean.setCalendars(calendarMap); schedulerFactoryBean.setSchedulerListeners(schedulerListeners); return schedulerFactoryBean; } }
@Bean public SchedulerFactoryBean scheduler() { SchedulerFactoryBean schedulerFactoryBean = new SchedulerFactoryBean(); schedulerFactoryBean.setDataSource(dataSource); schedulerFactoryBean.setTransactionManager(transactionManager); schedulerFactoryBean.setJobFactory(jobFactory()); schedulerFactoryBean.setWaitForJobsToCompleteOnShutdown(true); schedulerFactoryBean.setJobDetails(dataSourceCheckJob().getObject(), dataSourceIngestionCheckJob().getObject(), dataSourceSizeCheckJob().getObject(), incrementalJob().getObject(), tempDataSourceCleanJob().getObject(), calculatePopularityJob().getObject(), notebookKillKernelJob().getObject(), tempCSVFileCleanJob().getObject(), timeoutWorkbenchConnectionCloseJob().getObject()); schedulerFactoryBean.setTriggers(dataSourceCheckTrigger().getObject(), dataSourceIngestionCheckTrigger().getObject(), dataSourceSizeCheckTrigger().getObject(), tempDataSourceCleanTrigger().getObject(), calculatePopularityTrigger().getObject(), notebookKillKernelTrigger().getObject(), tempCSVFileCleanTrigger().getObject(), timeoutWorkbenchConnectionCloseTrigger().getObject()); return schedulerFactoryBean; }