All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.biz.verification.handler.CheckParameterLongMaxHandler Maven / Gradle / Ivy

Go to download

BizX 是一个灵活而高效的业务开发框架, 其中也有很多为业务开发所需要的工具类的提供。

The newest version!
package com.biz.verification.handler;

import com.biz.common.utils.Common;
import com.biz.verification.annotation.check.BizXCheckLongMax;
import com.biz.verification.error.BizXVerificationException;
import com.biz.verification.strategy.CheckParameterStrategy;
import lombok.extern.slf4j.Slf4j;

import java.lang.annotation.Annotation;

/**
 * 具体实现检查 Long 最大值的处理器
 * 

* 该类实现了 {@link CheckParameterStrategy} 接口,用于处理带有 {@link BizXCheckLongMax} 注解的参数。 *

* * @see CheckParameterStrategy * @see BizXCheckLongMax * @see BizXVerificationException * @see Common * @see Annotation * * @author francis * @since 1.0.1 */ @Slf4j public class CheckParameterLongMaxHandler implements CheckParameterStrategy { /** * 获取当前处理器支持的注解类型 * * @return 支持的注解类型 {@link BizXCheckLongMax} */ @Override public Class getCheckAnnotation() { return BizXCheckLongMax.class; } /** * 检查注解和参数是否满足注解的要求 * * @param annotation 注解实例 * @param value 被检查的参数 * @param className 类名称 * @param methodName 方法名称 * @param fieldName 参数名称 * @throws BizXVerificationException 如果参数不满足注解的要求,则抛出此异常 */ @Override public void check(Annotation annotation, Object value, String className, String methodName, String fieldName) throws BizXVerificationException { if (value == null) { return; } if (annotation instanceof BizXCheckLongMax) { BizXCheckLongMax check = Common.to(annotation); if (value instanceof Long) { Long num = Common.to(value); if (num > check.max()) { throw new BizXVerificationException(check.error().code(), check.error().message(), className, methodName, fieldName); } } } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy