| package cc.mrbird.febs.common.annotation; | 
|   | 
|   | 
| import cc.mrbird.febs.common.entity.LimitType; | 
|   | 
| import java.lang.annotation.ElementType; | 
| import java.lang.annotation.Retention; | 
| import java.lang.annotation.RetentionPolicy; | 
| import java.lang.annotation.Target; | 
|   | 
| /** | 
|  * @author MrBird | 
|  */ | 
| @Target(ElementType.METHOD) | 
| @Retention(RetentionPolicy.RUNTIME) | 
| public @interface Limit { | 
|   | 
|     /** | 
|      * 资源名称,用于描述接口功能 | 
|      */ | 
|     String name() default ""; | 
|   | 
|     /** | 
|      * 资源 key | 
|      */ | 
|     String key() default ""; | 
|   | 
|     /** | 
|      * key prefix | 
|      */ | 
|     String prefix() default ""; | 
|   | 
|     /** | 
|      * 时间范围,单位秒 | 
|      */ | 
|     int period(); | 
|   | 
|     /** | 
|      * 限制访问次数 | 
|      */ | 
|     int count(); | 
|   | 
|     /** | 
|      * 限制类型 | 
|      */ | 
|     LimitType limitType() default LimitType.CUSTOMER; | 
| } |