package cn.skcks.matrix.v2.auth.claims;

import io.swagger.v3.oas.annotations.Hidden;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 向 Controller 参数 注入 Claims
 * 从请求头的 token 解析 Claims 并注入到 Controller 参数中
 * @author Shikong
 */
@Target({ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
@Hidden
@SuppressWarnings({"unused"})
public @interface Claim {
    boolean required() default true;
}
