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

info.lostred.ruler.annotation.Rule Maven / Gradle / Ivy

There is a newer version: 3.4.0
Show newest version
package info.lostred.ruler.annotation;

import info.lostred.ruler.constant.Grade;

import java.lang.annotation.*;

/**
 * 规则注解
 * 

* 规则工厂在初始化时,将会解析该注解中的属性,构建一个规则代理类 *

* * @author lostred * @see info.lostred.ruler.factory.RuleFactory */ @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface Rule { /** * 规则编号 * * @return 规则编号 */ String ruleCode() default ""; /** * 业务类型 * * @return 业务类型 */ String businessType(); /** * 规则的严重等级 * * @return 规则的严重等级 */ Grade grade() default Grade.ILLEGAL; /** * 规则描述 * * @return 规则描述 */ String description(); /** * 规则执行的顺序号 *

规则在规则引擎中先后执行的顺序,数值越小的优先会被执行

* * @return 规则执行的顺序号 */ int order() default 0; /** * 是否强制使用 *

强制使用的规则无法在规则引擎中禁用

* * @return 是否强制使用 */ boolean required() default false; /** * 是否启用 * * @return 是否启用 */ boolean enable() default true; /** * 参数表达式 *

定义入参的取值字段

* * @return 参数表达式 */ String parameterExp() default ""; /** * 条件表达式 *

定义规则生效的条件,期望返回一个布尔值,值为true时规则才会生效

* * @return 条件表达式 */ String conditionExp() default ""; /** * 断定表达式 *

定义规则的运行逻辑,期望返回一个布尔值,值为true时表示参数不符合要求

* * @return 断定表达式 */ String predicateExp() default ""; }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy