测试openapi
This commit is contained in:
parent
04b6ba9d4a
commit
503c401e09
@ -1,6 +1,10 @@
|
|||||||
package com.example.snailjob.controller;
|
package com.example.snailjob.controller;
|
||||||
|
|
||||||
|
import com.aizuda.snailjob.client.job.core.dto.JobResponseVO;
|
||||||
import com.example.snailjob.handler.TestAddJobHandler;
|
import com.example.snailjob.handler.TestAddJobHandler;
|
||||||
|
import com.example.snailjob.handler.TestQueryJobHandler;
|
||||||
|
import com.example.snailjob.handler.TestTriggerJobHandler;
|
||||||
|
import com.example.snailjob.handler.TestUpdateJobStatusHandler;
|
||||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
@ -16,9 +20,47 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class JobController {
|
public class JobController {
|
||||||
private final TestAddJobHandler testAddJobHandler;
|
private final TestAddJobHandler testAddJobHandler;
|
||||||
|
private final TestQueryJobHandler testQueryJobHandler;
|
||||||
|
private final TestTriggerJobHandler testTriggerJobHandler;
|
||||||
|
private final TestUpdateJobStatusHandler testUpdateJobStatusHandler;
|
||||||
|
|
||||||
@PostMapping("/custer/add")
|
@PostMapping("/custer/add")
|
||||||
public Long addClusterJob(@RequestBody String jobName) {
|
public Long addClusterJob(@RequestBody String jobName) {
|
||||||
return testAddJobHandler.addClusterJob(jobName);
|
return testAddJobHandler.addClusterJob(jobName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/broadcast/add")
|
||||||
|
public Long addBroadcastJob(@RequestBody String jobName) {
|
||||||
|
return testAddJobHandler.addBroadcastJob(jobName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/sharding/add")
|
||||||
|
public Long addShardingJob(@RequestBody String jobName) {
|
||||||
|
return testAddJobHandler.addShardingJob(jobName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/map/add")
|
||||||
|
public Long addMapJob(@RequestBody String jobName) {
|
||||||
|
return testAddJobHandler.addMapJob(jobName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/map-reduce/add")
|
||||||
|
public Long addMapReduceJob(@RequestBody String jobName) {
|
||||||
|
return testAddJobHandler.addMapReduceJob(jobName);
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/detail/id")
|
||||||
|
public JobResponseVO addMapReduceJob(@RequestParam("id") Long id) {
|
||||||
|
return testQueryJobHandler.queryJob(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PostMapping("/trigger/{id}")
|
||||||
|
public Boolean triggerJob(@PathVariable("id") Long id) {
|
||||||
|
return testTriggerJobHandler.triggerJob(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/update/status/{id}")
|
||||||
|
public Boolean updateJob(@PathVariable("id") Long id) {
|
||||||
|
return testUpdateJobStatusHandler.updateJobStatus(id);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -39,6 +39,29 @@ public class TestAddJobHandler {
|
|||||||
* @param jobName 任务名称
|
* @param jobName 任务名称
|
||||||
* @return 任务id
|
* @return 任务id
|
||||||
*/
|
*/
|
||||||
|
public Long addBroadcastJob(String jobName) {
|
||||||
|
return SnailJobOpenApi.addBroadcastJob()
|
||||||
|
.setJobName(jobName)
|
||||||
|
.setExecutorInfo("testJobExecutor")
|
||||||
|
.setExecutorTimeout(30)
|
||||||
|
.setDescription("add")
|
||||||
|
.setBlockStrategy(BlockStrategyEnum.DISCARD)
|
||||||
|
.setMaxRetryTimes(1)
|
||||||
|
.setTriggerType(TriggerTypeEnum.CRON)
|
||||||
|
.setTriggerInterval("afas")
|
||||||
|
.addArgsStr("测试数据", 123)
|
||||||
|
.addArgsStr("addArg", "args")
|
||||||
|
.setRetryInterval(3)
|
||||||
|
.execute();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增Sharding模式的任务
|
||||||
|
*
|
||||||
|
* @param jobName 任务名称
|
||||||
|
* @return 任务id
|
||||||
|
*/
|
||||||
public Long addShardingJob(String jobName) {
|
public Long addShardingJob(String jobName) {
|
||||||
return SnailJobOpenApi.addShardingJob()
|
return SnailJobOpenApi.addShardingJob()
|
||||||
.setJobName(jobName)
|
.setJobName(jobName)
|
||||||
@ -48,8 +71,54 @@ public class TestAddJobHandler {
|
|||||||
.setBlockStrategy(BlockStrategyEnum.DISCARD)
|
.setBlockStrategy(BlockStrategyEnum.DISCARD)
|
||||||
.setMaxRetryTimes(1)
|
.setMaxRetryTimes(1)
|
||||||
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
||||||
.setTriggerInterval(String.valueOf(60))
|
.setTriggerInterval(60)
|
||||||
.addShardingArgs("分片1", "分片2", "分片3")
|
.addShardingArgs("分片1", "分片2", "分片3")
|
||||||
|
.setParallelNum(1)
|
||||||
|
.setRetryInterval(3)
|
||||||
|
.execute();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增MapReduce模式的任务
|
||||||
|
*
|
||||||
|
* @param jobName 任务名称
|
||||||
|
* @return 任务id
|
||||||
|
*/
|
||||||
|
public Long addMapJob(String jobName) {
|
||||||
|
return SnailJobOpenApi.addMapJob()
|
||||||
|
.setJobName(jobName)
|
||||||
|
.setExecutorInfo("testJobExecutor")
|
||||||
|
.setExecutorTimeout(30)
|
||||||
|
.setDescription("add")
|
||||||
|
.setBlockStrategy(BlockStrategyEnum.DISCARD)
|
||||||
|
.setMaxRetryTimes(1)
|
||||||
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
||||||
|
.setTriggerInterval(String.valueOf(60))
|
||||||
|
.setParallelNum(3)
|
||||||
|
.setRetryInterval(3)
|
||||||
|
.execute();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增MapReduce模式的任务
|
||||||
|
*
|
||||||
|
* @param jobName 任务名称
|
||||||
|
* @return 任务id
|
||||||
|
*/
|
||||||
|
public Long addMapReduceJob(String jobName) {
|
||||||
|
return SnailJobOpenApi.addMapReduceJob()
|
||||||
|
.setJobName(jobName)
|
||||||
|
.setExecutorInfo("testJobExecutor")
|
||||||
|
.setExecutorTimeout(30)
|
||||||
|
.setDescription("add")
|
||||||
|
.setBlockStrategy(BlockStrategyEnum.DISCARD)
|
||||||
|
.setMaxRetryTimes(1)
|
||||||
|
.setTriggerType(TriggerTypeEnum.SCHEDULED_TIME)
|
||||||
|
.setTriggerInterval(String.valueOf(60))
|
||||||
|
.setParallelNum(3)
|
||||||
|
.setShardNum(2)
|
||||||
.setRetryInterval(3)
|
.setRetryInterval(3)
|
||||||
.execute();
|
.execute();
|
||||||
|
|
||||||
|
@ -1,23 +0,0 @@
|
|||||||
package com.example.snailjob.handler;
|
|
||||||
|
|
||||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobResponseVO;
|
|
||||||
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
||||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
|
||||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@JobExecutor(name = "testGetJobDetailExecutor")
|
|
||||||
public class TestGetJobDetailExecutor {
|
|
||||||
public ExecuteResult jobExecute(JobArgs jobArgs) {
|
|
||||||
Object jobParams = jobArgs.getJobParams();
|
|
||||||
Map<Object, Object> hashMap = JsonUtil.parseHashMap((String) jobParams);
|
|
||||||
String id = String.valueOf(hashMap.get("id"));
|
|
||||||
JobResponseVO execute = SnailJobOpenApi.getJobDetail(Long.valueOf(id)).execute();
|
|
||||||
return ExecuteResult.success(execute);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
package com.example.snailjob.handler;
|
|
||||||
|
|
||||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
|
|
||||||
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
||||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
|
||||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@JobExecutor(name = "testTriggerJobExecutor")
|
|
||||||
public class TestTriggerJobExecutor {
|
|
||||||
public ExecuteResult jobExecute(JobArgs jobArgs) {
|
|
||||||
Object jobParams = jobArgs.getJobParams();
|
|
||||||
Map<Object, Object> hashMap = JsonUtil.parseHashMap((String) jobParams);
|
|
||||||
String id = String.valueOf(hashMap.get("id"));
|
|
||||||
Boolean execute = SnailJobOpenApi.triggerJob(Long.valueOf(id)).execute();
|
|
||||||
return ExecuteResult.success(execute);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,23 +0,0 @@
|
|||||||
package com.example.snailjob.handler;
|
|
||||||
|
|
||||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
|
|
||||||
import com.aizuda.snailjob.client.job.core.handler.RequestTriggerJobHandler;
|
|
||||||
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
||||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
|
||||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@JobExecutor(name = "testTriggerWorkFlowExecutor")
|
|
||||||
public class TestTriggerWorkFlowExecutor {
|
|
||||||
public ExecuteResult jobExecute(JobArgs jobArgs) {
|
|
||||||
Object jobParams = jobArgs.getJobParams();
|
|
||||||
Map<Object, Object> hashMap = JsonUtil.parseHashMap((String) jobParams);
|
|
||||||
String id = String.valueOf(hashMap.get("id"));
|
|
||||||
RequestTriggerJobHandler jobHandler = SnailJobOpenApi.triggerWorkFlow(Long.valueOf(id));
|
|
||||||
return ExecuteResult.success(jobHandler.execute());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
package com.example.snailjob.handler;
|
|
||||||
|
|
||||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
|
|
||||||
import com.aizuda.snailjob.client.job.core.enums.TriggerTypeEnum;
|
|
||||||
import com.aizuda.snailjob.client.job.core.handler.RequestUpdateHandler;
|
|
||||||
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
||||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
|
||||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@JobExecutor(name = "testUpdateJobExecutor")
|
|
||||||
public class TestUpdateJobExecutor {
|
|
||||||
public ExecuteResult jobExecute(JobArgs jobArgs) {
|
|
||||||
Object jobParams = jobArgs.getJobParams();
|
|
||||||
Map<Object, Object> hashMap = JsonUtil.parseHashMap((String) jobParams);
|
|
||||||
String id = String.valueOf(hashMap.get("id"));
|
|
||||||
String jobName = String.valueOf(hashMap.get("jobName"));
|
|
||||||
RequestUpdateHandler updateHandler = SnailJobOpenApi.updateJob(Long.valueOf(id));
|
|
||||||
updateHandler.setJobName(jobName);
|
|
||||||
updateHandler.setTriggerType(TriggerTypeEnum.WORK_FLOW);
|
|
||||||
return ExecuteResult.success(updateHandler.execute());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,26 +0,0 @@
|
|||||||
package com.example.snailjob.handler;
|
|
||||||
|
|
||||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
|
|
||||||
import com.aizuda.snailjob.client.job.core.handler.RequestUpdateStatusHandler;
|
|
||||||
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
||||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
|
||||||
import com.aizuda.snailjob.common.core.enums.StatusEnum;
|
|
||||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@JobExecutor(name = "testUpdateJobStatusExecutor")
|
|
||||||
public class TestUpdateJobStatusExecutor {
|
|
||||||
public ExecuteResult jobExecute(JobArgs jobArgs) {
|
|
||||||
Object jobParams = jobArgs.getJobParams();
|
|
||||||
Map<Object, Object> hashMap = JsonUtil.parseHashMap((String) jobParams);
|
|
||||||
String id = String.valueOf(hashMap.get("id"));
|
|
||||||
RequestUpdateStatusHandler updateJobStatus = SnailJobOpenApi.updateJobStatus(Long.valueOf(id));
|
|
||||||
updateJobStatus.setStatus(StatusEnum.NO);
|
|
||||||
|
|
||||||
return ExecuteResult.success(updateJobStatus.execute());
|
|
||||||
}
|
|
||||||
}
|
|
@ -16,7 +16,7 @@ public class TestUpdateJobStatusHandler {
|
|||||||
public Boolean updateJobStatus(Long jobId){
|
public Boolean updateJobStatus(Long jobId){
|
||||||
return SnailJobOpenApi
|
return SnailJobOpenApi
|
||||||
.updateJobStatus(jobId)
|
.updateJobStatus(jobId)
|
||||||
.setStatus(StatusEnum.NO)
|
.setStatus(StatusEnum.YES)
|
||||||
.execute();
|
.execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
package com.example.snailjob.handler;
|
|
||||||
|
|
||||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
|
|
||||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
|
|
||||||
import com.aizuda.snailjob.client.job.core.handler.RequestUpdateStatusHandler;
|
|
||||||
import com.aizuda.snailjob.client.job.core.openapi.SnailJobOpenApi;
|
|
||||||
import com.aizuda.snailjob.client.model.ExecuteResult;
|
|
||||||
import com.aizuda.snailjob.common.core.enums.StatusEnum;
|
|
||||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Component
|
|
||||||
@JobExecutor(name = "testUpdateWorkFLowStatusExecutor")
|
|
||||||
public class TestUpdateWorkFLowStatusExecutor {
|
|
||||||
public ExecuteResult jobExecute(JobArgs jobArgs) {
|
|
||||||
Object jobParams = jobArgs.getJobParams();
|
|
||||||
Map<Object, Object> hashMap = JsonUtil.parseHashMap((String) jobParams);
|
|
||||||
String id = String.valueOf(hashMap.get("id"));
|
|
||||||
RequestUpdateStatusHandler updateJobStatus = SnailJobOpenApi.updateWorkFlowStatus(Long.valueOf(id));
|
|
||||||
updateJobStatus.setStatus(StatusEnum.NO);
|
|
||||||
|
|
||||||
return ExecuteResult.success(updateJobStatus.execute());
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user