diff --git a/elastic-job-springboot-core/src/main/java/com/example/serive/JobService.java b/elastic-job-springboot-core/src/main/java/com/example/serive/JobService.java index 435f87d..e50c77a 100644 --- a/elastic-job-springboot-core/src/main/java/com/example/serive/JobService.java +++ b/elastic-job-springboot-core/src/main/java/com/example/serive/JobService.java @@ -55,7 +55,15 @@ public interface JobService { void pauseJob(String jobName); /** - * 启动 + * 恢复任务 + * + * @param jobName + */ + void resumeJob(String jobName); + + + /** + * 启动,初始执行 * * @param jobName */ diff --git a/elastic-job-springboot-core/src/main/java/com/example/serive/impl/JobServiceImpl.java b/elastic-job-springboot-core/src/main/java/com/example/serive/impl/JobServiceImpl.java index edc2c56..dfe87fc 100644 --- a/elastic-job-springboot-core/src/main/java/com/example/serive/impl/JobServiceImpl.java +++ b/elastic-job-springboot-core/src/main/java/com/example/serive/impl/JobServiceImpl.java @@ -1,6 +1,6 @@ package com.example.serive.impl; -import com.dangdang.ddframe.job.api.simple.SimpleJob; +import com.dangdang.ddframe.job.api.ElasticJob; import com.dangdang.ddframe.job.config.JobCoreConfiguration; import com.dangdang.ddframe.job.config.simple.SimpleJobConfiguration; import com.dangdang.ddframe.job.lite.api.strategy.impl.AverageAllocationJobShardingStrategy; @@ -65,7 +65,7 @@ public class JobServiceImpl implements JobService { .build(); try { Class aClass = Class.forName(job.getJobClass()); - SimpleJob simpleJob = (SimpleJob) ctx.getBean(aClass); + ElasticJob elasticJob = (ElasticJob) ctx.getBean(aClass); // 配置数据源 // if (job.isJobEvent()) { // JobEventConfiguration jec = new JobEventRdbConfiguration(dataSource); @@ -73,7 +73,8 @@ public class JobServiceImpl implements JobService { // } else { // new SpringJobScheduler(elasticJob, center, ljc).init(); // } - new SpringJobScheduler(simpleJob, center, ljc).init(); + new SpringJobScheduler(elasticJob, center, ljc).init(); + } catch (Exception e) { e.printStackTrace(); log.error("加载任务失败,任务为 {}", job.getJobName()); @@ -109,6 +110,14 @@ public class JobServiceImpl implements JobService { } } + @Override + public void resumeJob(String jobName) { + JobScheduleController jobScheduleController = JobRegistry.getInstance().getJobScheduleController(jobName); + if (jobScheduleController != null) { + jobScheduleController.resumeJob(); + } + } + /** * 立刻启动作业 */