Quartz test
This commit is contained in:
parent
d5d3770046
commit
9786cc305d
@ -14,6 +14,7 @@ import org.quartz.Calendar;
|
||||
import org.quartz.JobDetail;
|
||||
import org.quartz.Scheduler;
|
||||
import org.quartz.Trigger;
|
||||
import org.quartz.impl.jdbcjobstore.PostgreSQLDelegate;
|
||||
import org.springframework.beans.factory.ObjectProvider;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
||||
@ -58,6 +59,7 @@ public class CustomQuartzConfiguration {
|
||||
@Bean
|
||||
@ConditionalOnMissingBean
|
||||
public SchedulerFactoryBean quartzScheduler(QuartzProperties properties,
|
||||
@Qualifier("masterDataSource") DataSource dataSource,
|
||||
ObjectProvider<SchedulerFactoryBeanCustomizer> customizers,
|
||||
ObjectProvider<JobDetail> jobDetails,
|
||||
Map<String, Calendar> calendars,
|
||||
@ -72,6 +74,7 @@ public class CustomQuartzConfiguration {
|
||||
schedulerFactoryBean.setSchedulerName(properties.getSchedulerName());
|
||||
}
|
||||
|
||||
schedulerFactoryBean.setDataSource(dataSource);
|
||||
schedulerFactoryBean.setAutoStartup(properties.isAutoStartup());
|
||||
schedulerFactoryBean.setStartupDelay((int) properties.getStartupDelay().getSeconds());
|
||||
schedulerFactoryBean.setWaitForJobsToCompleteOnShutdown(properties.isWaitForJobsToCompleteOnShutdown());
|
||||
@ -80,11 +83,11 @@ public class CustomQuartzConfiguration {
|
||||
schedulerFactoryBean.setQuartzProperties(this.asProperties(properties.getProperties()));
|
||||
}
|
||||
|
||||
schedulerFactoryBean.setJobDetails((JobDetail[]) jobDetails.orderedStream().toArray((x$0) -> {
|
||||
schedulerFactoryBean.setJobDetails(jobDetails.orderedStream().toArray((x$0) -> {
|
||||
return new JobDetail[x$0];
|
||||
}));
|
||||
schedulerFactoryBean.setCalendars(calendars);
|
||||
schedulerFactoryBean.setTriggers((Trigger[]) triggers.orderedStream().toArray((x$0) -> {
|
||||
schedulerFactoryBean.setTriggers(triggers.orderedStream().toArray((x$0) -> {
|
||||
return new Trigger[x$0];
|
||||
}));
|
||||
customizers.orderedStream().forEach((customizer) -> {
|
||||
@ -135,7 +138,7 @@ public class CustomQuartzConfiguration {
|
||||
|
||||
private DataSource getDataSource(DataSource dataSource, ObjectProvider<DataSource> quartzDataSource) {
|
||||
|
||||
DataSource dataSourceIfAvailable = (DataSource) quartzDataSource.getIfAvailable();
|
||||
DataSource dataSourceIfAvailable = quartzDataSource.getIfAvailable();
|
||||
return dataSourceIfAvailable != null ? dataSourceIfAvailable : dataSource;
|
||||
}
|
||||
|
||||
@ -143,8 +146,8 @@ public class CustomQuartzConfiguration {
|
||||
private PlatformTransactionManager getTransactionManager(ObjectProvider<PlatformTransactionManager> transactionManager,
|
||||
ObjectProvider<PlatformTransactionManager> quartzTransactionManager) {
|
||||
|
||||
PlatformTransactionManager transactionManagerIfAvailable = (PlatformTransactionManager) quartzTransactionManager.getIfAvailable();
|
||||
return transactionManagerIfAvailable != null ? transactionManagerIfAvailable : (PlatformTransactionManager) transactionManager.getIfUnique();
|
||||
PlatformTransactionManager transactionManagerIfAvailable = quartzTransactionManager.getIfAvailable();
|
||||
return transactionManagerIfAvailable != null ? transactionManagerIfAvailable : transactionManager.getIfUnique();
|
||||
}
|
||||
|
||||
|
||||
@ -164,7 +167,7 @@ public class CustomQuartzConfiguration {
|
||||
|
||||
OnQuartzDatasourceInitializationCondition() {
|
||||
|
||||
super("Quartz", new String[]{"spring.quartz.jdbc.initialize-schema"});
|
||||
super("Quartz", "spring.quartz.jdbc.initialize-schema");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -41,7 +41,6 @@ spring:
|
||||
max-attempts: 3
|
||||
max-interval: 15000
|
||||
prefetch: 1
|
||||
|
||||
liquibase:
|
||||
change-log: classpath:/db/changelog/db.changelog-master.yaml
|
||||
quartz:
|
||||
@ -52,12 +51,13 @@ spring:
|
||||
org:
|
||||
quartz:
|
||||
jobStore:
|
||||
class: org.springframework.scheduling.quartz.LocalDataSourceJobStore
|
||||
clusterCheckinInterval: 1000
|
||||
isClustered: true
|
||||
driverDelegateClass: org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
|
||||
scheduler:
|
||||
instanceId: AUTO
|
||||
job-store-type: jdbc
|
||||
job-store-type: JDBC
|
||||
|
||||
management:
|
||||
endpoint:
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user