package com.yaochen.boss.job;
import org.quartz.JobExecutionException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
import com.yaochen.boss.job.component.JobComponent;
import com.yaochen.boss.model.CfgData;
import com.yaochen.myquartz.Job2;
import com.yaochen.myquartz.Job2ExecutionContext;
/**
* 业务基础数据加载
*
* @author Tom
*/
@Service
public class BusiCfgDataJob implements Job2, InitializingBean {
private final Logger logger = LoggerFactory.getLogger(getClass());
private JobComponent jobComponent;
public static CfgData CFG = null;
@Override
public void execute(Job2ExecutionContext context)
throws JobExecutionException {
this.execute();
}
private void execute(){
logger.info(" ----- 加载基础数据 ------ ");
try {
CFG = jobComponent.loadCfgData();
jobComponent.loadBaseConfig();
} catch (Exception e) {
logger.error("加载基础数据失败", e);
}
}
@Override
public void afterPropertiesSet() throws Exception {
// 在Spring初始化的时候自动加载基础数据
if(CFG == null){
this.execute();
}
}
public void setJobComponent(JobComponent jobComponent) {
this.jobComponent = jobComponent;
}
}