From 4913d76abc0f9815dacbb34627cd022ffeba40da Mon Sep 17 00:00:00 2001 From: wjt Date: Mon, 28 Aug 2023 13:19:35 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=81=A2=E5=A4=8D=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/example/serive/JobService.java | 10 +++++++++- .../com/example/serive/impl/JobServiceImpl.java | 15 ++++++++++++--- 2 files changed, 21 insertions(+), 4 deletions(-) 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(); + } + } + /** * 立刻启动作业 */