package com.qmth.boot.core.retrofit.annotatioin;

import com.qmth.boot.core.retrofit.core.RetrofitClientScannerRegistrar;
import org.springframework.context.annotation.Import;
import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.*;

@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
@Import(RetrofitClientScannerRegistrar.class)
public @interface RetrofitScan {

    /**
     * 扫描包路径
     * 等同于basePackages
     *
     * @return basePackages
     */
    @AliasFor("basePackages") String[] value() default {};

    /**
     * 扫描包路径
     *
     * @return basePackages
     */
    @AliasFor("value") String[] basePackages() default {};

    /**
     * 扫描类集合
     *
     * @return Scan package classes
     */
    Class<?>[] basePackageClasses() default {};

}
