package org.example.Entity.Attributes;

import java.lang.annotation.*;

// 注解作用在方法或类上
@Target({ElementType.METHOD, ElementType.TYPE})
// 注解保留到运行时（框架需要在运行时获取）
@Retention(RetentionPolicy.RUNTIME)
public @interface RequestCheck {
    // 是否检查登录（默认true，对应RequestCheckAttribute的CheckLogin）
    boolean CheckLogin() default true;

    // 需要校验的参数（对应CheckParams，默认空字符串）
    String CheckParams() default "";

    // 是否打印日志（对应Log，默认true）
    boolean Log() default true;

    // 是否验证（对应Verify，默认true）
    boolean Verify() default true;

    // 是否缓存（对应Cache，默认false）
    boolean Cache() default false;

    // 缓存过期时间（对应ExpirationPeriod，默认10分钟）
    int ExpirationPeriod() default 10;

    // 名称和描述（对应Name和Desp）
    String Name() default "";

    String Desp() default "";

    boolean WriteRespose() default true;
}