com.alibaba.dubbo.common.extension
Annotation Type Activate


@Documented
@Retention(value=RUNTIME)
@Target(value={TYPE,METHOD})
public @interface Activate

Activate

对于可以被框架中自动激活加载扩展,此Annotation用于配置扩展被自动激活加载条件。 比如,过滤扩展,有多个实现,使用Activate Annotation的扩展可以根据条件被自动加载。

  1. group()生效的Group。具体的有哪些Group值由框架SPI给出。
  2. value()URL中Key集合中有,则生效。

底层框架SPI提供者通过ExtensionLoaderExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)方法 获得条件的扩展。

Author:
william.liangf, ding.lid
See Also:
SPI, ExtensionLoader, ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, String[], String)

Optional Element Summary
 String[] after
          排序信息,可以不提供。
 String[] before
          排序信息,可以不提供。
 String[] group
          Group过滤条件。
包含ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)的group参数给的值,则返回扩展。
如没有Group设置,则不过滤。
 int order
          排序信息,可以不提供。
 String[] value
          Key过滤条件。包含ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)的URL的参数Key中有,则返回扩展。

示例:
注解的值 @Activate("cache,validatioin"), 则ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)的URL的参数有cacheKey,或是validatioin则返回扩展。
如没有设置,则不过滤。

 

group

public abstract String[] group
Group过滤条件。
包含ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)的group参数给的值,则返回扩展。
如没有Group设置,则不过滤。

Default:
{}

value

public abstract String[] value
Key过滤条件。包含ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)的URL的参数Key中有,则返回扩展。

示例:
注解的值 @Activate("cache,validatioin"), 则ExtensionLoader.getActivateExtension(com.alibaba.dubbo.common.URL, java.lang.String)的URL的参数有cacheKey,或是validatioin则返回扩展。
如没有设置,则不过滤。

Default:
{}

before

public abstract String[] before
排序信息,可以不提供。

Default:
{}

after

public abstract String[] after
排序信息,可以不提供。

Default:
{}

order

public abstract int order
排序信息,可以不提供。

Default:
0


Copyright © 2012–2017 Alibaba. All rights reserved.