package com.iplatform.scheduler.config;
|
|
import com.iplatform.core.PlatformConfiguration;
|
import com.iplatform.scheduler.MemorySchedulerManager;
|
import com.iplatform.scheduler.support.MemoryScheduleEngine;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Configuration;
|
|
/**
|
* 如果没有引入包: walker-jdbc 则默认使用内存方式管理调度器。
|
* @author 时克英
|
* @date 2022-09-22
|
*/
|
@Configuration
|
@ConditionalOnProperty(prefix = "iplatform.scheduler", name = "enabled", havingValue = "true", matchIfMissing = true)
|
@ConditionalOnMissingClass("com.walker.jdbc.JdbcInspector")
|
public class LocalSchedulerConfig extends PlatformConfiguration {
|
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
//~ 初始化基于内存的实现对象。2022-09-08
|
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
@Bean
|
// @ConditionalOnProperty(prefix = "iplatform.scheduler", name = "database-enabled", havingValue = "false", matchIfMissing = false)
|
public MemoryScheduleEngine memoryScheduleEngine(){
|
return new MemoryScheduleEngine();
|
}
|
|
@Bean
|
// @ConditionalOnProperty(prefix = "iplatform.scheduler", name = "database-enabled", havingValue = "false", matchIfMissing = false)
|
public MemorySchedulerManager memorySchedulerManager(MemoryScheduleEngine scheduleEngine){
|
MemorySchedulerManager schedulerManager = new MemorySchedulerManager();
|
schedulerManager.setScheduleEngine((MemoryScheduleEngine) scheduleEngine);
|
logger.info("创建了 MemorySchedulerManager, scheduleEngine=" + scheduleEngine.getClass().getName());
|
schedulerManager.startup();
|
return schedulerManager;
|
}
|
}
|