feat(sj_1.0.0): 客户端接口采用@Validated+@Valid校验
This commit is contained in:
parent
d930624185
commit
c447379f7c
@ -19,9 +19,11 @@ import com.aizuda.snailjob.common.core.model.Result;
|
|||||||
import com.aizuda.snailjob.common.log.SnailJobLog;
|
import com.aizuda.snailjob.common.log.SnailJobLog;
|
||||||
import com.aizuda.snailjob.common.log.enums.LogTypeEnum;
|
import com.aizuda.snailjob.common.log.enums.LogTypeEnum;
|
||||||
import jakarta.validation.ConstraintViolation;
|
import jakarta.validation.ConstraintViolation;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import jakarta.validation.Validation;
|
import jakarta.validation.Validation;
|
||||||
import jakarta.validation.Validator;
|
import jakarta.validation.Validator;
|
||||||
import jakarta.validation.ValidatorFactory;
|
import jakarta.validation.ValidatorFactory;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@ -35,17 +37,11 @@ import static com.aizuda.snailjob.common.core.constant.SystemConstants.HTTP_PATH
|
|||||||
* @date : 2023-09-27 16:33
|
* @date : 2023-09-27 16:33
|
||||||
*/
|
*/
|
||||||
@SnailEndPoint
|
@SnailEndPoint
|
||||||
|
@Validated
|
||||||
public class JobEndPoint {
|
public class JobEndPoint {
|
||||||
|
|
||||||
@Mapping(path = JOB_DISPATCH, method = RequestMethod.POST)
|
@Mapping(path = JOB_DISPATCH, method = RequestMethod.POST)
|
||||||
public Result<Boolean> dispatchJob(DispatchJobRequest dispatchJob) {
|
public Result<Boolean> dispatchJob(@Valid DispatchJobRequest dispatchJob) {
|
||||||
|
|
||||||
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
|
||||||
Validator validator = vf.getValidator();
|
|
||||||
Set<ConstraintViolation<DispatchJobRequest>> set = validator.validate(dispatchJob);
|
|
||||||
for (final ConstraintViolation<DispatchJobRequest> violation : set) {
|
|
||||||
return new Result<>(violation.getMessage(), Boolean.FALSE);
|
|
||||||
}
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
JobContext jobContext = buildJobContext(dispatchJob);
|
JobContext jobContext = buildJobContext(dispatchJob);
|
||||||
@ -118,7 +114,7 @@ public class JobEndPoint {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Mapping(path = JOB_STOP, method = RequestMethod.POST)
|
@Mapping(path = JOB_STOP, method = RequestMethod.POST)
|
||||||
public Result<Boolean> stopJob(StopJobDTO interruptJob) {
|
public Result<Boolean> stopJob(@Valid StopJobDTO interruptJob) {
|
||||||
|
|
||||||
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
||||||
Validator validator = vf.getValidator();
|
Validator validator = vf.getValidator();
|
||||||
|
@ -31,6 +31,7 @@ import com.aizuda.snailjob.common.log.SnailJobLog;
|
|||||||
import com.aizuda.snailjob.common.log.enums.LogTypeEnum;
|
import com.aizuda.snailjob.common.log.enums.LogTypeEnum;
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||||
import jakarta.validation.ConstraintViolation;
|
import jakarta.validation.ConstraintViolation;
|
||||||
|
import jakarta.validation.Valid;
|
||||||
import jakarta.validation.Validation;
|
import jakarta.validation.Validation;
|
||||||
import jakarta.validation.Validator;
|
import jakarta.validation.Validator;
|
||||||
import jakarta.validation.ValidatorFactory;
|
import jakarta.validation.ValidatorFactory;
|
||||||
@ -38,6 +39,7 @@ import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
|||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.beans.factory.annotation.Qualifier;
|
import org.springframework.beans.factory.annotation.Qualifier;
|
||||||
import org.springframework.util.ReflectionUtils;
|
import org.springframework.util.ReflectionUtils;
|
||||||
|
import org.springframework.validation.annotation.Validated;
|
||||||
|
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
@ -52,6 +54,7 @@ import static com.aizuda.snailjob.common.core.constant.SystemConstants.HTTP_PATH
|
|||||||
* @date : 2022-03-09 16:33
|
* @date : 2022-03-09 16:33
|
||||||
*/
|
*/
|
||||||
@SnailEndPoint
|
@SnailEndPoint
|
||||||
|
@Validated
|
||||||
public class SnailRetryEndPoint {
|
public class SnailRetryEndPoint {
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
@ -62,14 +65,7 @@ public class SnailRetryEndPoint {
|
|||||||
* 服务端调度重试入口
|
* 服务端调度重试入口
|
||||||
*/
|
*/
|
||||||
@Mapping(path = RETRY_DISPATCH, method = RequestMethod.POST)
|
@Mapping(path = RETRY_DISPATCH, method = RequestMethod.POST)
|
||||||
public Result<DispatchRetryResultDTO> dispatch(DispatchRetryDTO executeReqDto) {
|
public Result<DispatchRetryResultDTO> dispatch(@Valid DispatchRetryDTO executeReqDto) {
|
||||||
|
|
||||||
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
|
||||||
Validator validator = vf.getValidator();
|
|
||||||
Set<ConstraintViolation<DispatchRetryDTO>> set = validator.validate(executeReqDto);
|
|
||||||
for (final ConstraintViolation<DispatchRetryDTO> violation : set) {
|
|
||||||
return new Result<>(violation.getMessage(), null);
|
|
||||||
}
|
|
||||||
|
|
||||||
RetryerInfo retryerInfo = RetryerInfoCache.get(executeReqDto.getScene(), executeReqDto.getExecutorName());
|
RetryerInfo retryerInfo = RetryerInfoCache.get(executeReqDto.getScene(), executeReqDto.getExecutorName());
|
||||||
if (Objects.isNull(retryerInfo)) {
|
if (Objects.isNull(retryerInfo)) {
|
||||||
@ -148,7 +144,7 @@ public class SnailRetryEndPoint {
|
|||||||
|
|
||||||
|
|
||||||
@Mapping(path = RETRY_CALLBACK, method = RequestMethod.POST)
|
@Mapping(path = RETRY_CALLBACK, method = RequestMethod.POST)
|
||||||
public Result callback(RetryCallbackDTO callbackDTO) {
|
public Result callback(@Valid RetryCallbackDTO callbackDTO) {
|
||||||
|
|
||||||
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
||||||
Validator validator = vf.getValidator();
|
Validator validator = vf.getValidator();
|
||||||
@ -266,7 +262,7 @@ public class SnailRetryEndPoint {
|
|||||||
* @return idempotentId
|
* @return idempotentId
|
||||||
*/
|
*/
|
||||||
@Mapping(path = RETRY_GENERATE_IDEM_ID, method = RequestMethod.POST)
|
@Mapping(path = RETRY_GENERATE_IDEM_ID, method = RequestMethod.POST)
|
||||||
public Result<String> idempotentIdGenerate(
|
public Result<String> idempotentIdGenerate(@Valid
|
||||||
GenerateRetryIdempotentIdDTO generateRetryIdempotentIdDTO) {
|
GenerateRetryIdempotentIdDTO generateRetryIdempotentIdDTO) {
|
||||||
|
|
||||||
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
|
||||||
|
Loading…
Reference in New Issue
Block a user