edi.rule.extend.interfaces.IJSRuleDesensitizedInfo Maven / Gradle / Ivy
package edi.rule.extend.interfaces;
import edi.rule.annotation.JSRuleDesensitized;
import edi.rule.work.constant.ZSSign;
import java.lang.annotation.Annotation;
/**
* @author 摩拉克斯
* @date 2023年12月13日 下午1:11:21
* 自定义脱敏类型扩展接口,实现此接口的类必须存在一个无参的构造函数
* @see JSRuleDesensitized
*/
public interface IJSRuleDesensitizedInfo extends JSRuleDesensitized {
@Override
default Class extends JSRuleDesensitized> type(){
return JSRuleDesensitized.class;
}
@Override
default Class extends Annotation> annotationType() {
return type();
}
@Override
default char replaced() {
return ZSSign.ASTERISK;
}
@Override
default int startIndex() {
return -1;
}
@Override
default int endIndex() {
return -1;
}
@Override
default String startToken() {
return null;
}
@Override
default String endToken() {
return null;
}
@Override
default boolean isFirst() {
return true;
}
@Override
default boolean isLast() {
return true;
}
@Override
default boolean isKeepSt() {
return false;
}
@Override
default boolean isKeepEd() {
return false;
}
@Override
default String regex() {return null;}
}