HZERO版本:1.0.0.RELEASE
发起调度
org.hzero.scheduler.infra.job.MyJob#execute
客户端执行
org.hzero.boot.scheduler.app.service.impl.JobExecuteServiceImpl#jobExecute
参数设置
org.hzero.scheduler.domain.service.impl.JobServiceImpl#getMap
逻辑调用
org.hzero.scheduler.infra.job.MyJob#execute
if (Objects.equals(serial, Flag.YES) && !JobLock.addLock(jobId)) {
logger.info(" Scheduler Job Locked. JobId : {} ", jobId);
}
org.hzero.boot.scheduler.infra.init.ExecutorInit#scanJobHandler
org.hzero.boot.scheduler.app.service.impl.JobExecuteServiceImpl#jobExecute
QuartzSchedulerThread通过ThreadPool来执行封装Job的JobRunShell;
Job接口是要实现execute方法的.JobRunShell run方法会实例化job实现类,然后调用execute.run方法
org.quartz.core.QuartzSchedulerThread#run
org.quartz.core.JobRunShell#run
org.hzero.scheduler.infra.job.MyJob#failureStrategy
org.hzero.scheduler.domain.service.impl.UrlServiceImpl#getUrl
org.hzero.scheduler.infra.job.MyJob#failCallback
设置参数
org.hzero.scheduler.infra.job.MyJob#execute
转化参数
org.hzero.boot.scheduler.app.service.impl.JobExecuteServiceImpl#jobRun
org.hzero.scheduler.domain.service.impl.JobServiceImpl#buildTrigger
org.hzero.scheduler.infra.init.SchedulerServiceInit#run