T - 数据源类型public interface AnnotationAggregator<T> extends Hierarchical, AnnotationProcessor, RepeatableContainer
HierarchicalAnnotation的聚合器,用于聚合具一组相关的注解,并提供一些批量操作的方法。
注解聚合器可以通过AnnotationProcessor.accept(int, int, Annotation)方法向其注册注解,
或直接作为AnnotationProcessor通过AbstractAnnotationScanner快速对指定元素的相关注解进行聚合。
聚合器还允许被作为RepeatableContainer使用,
当从聚合器中获得可重复的注解时,聚合器将遍历已聚合的注解中所有直接或间接与指定注解相关的注解,
并最终提取出所需的可重复注解对象。该操作支持处理多集嵌套的注解容器。
HORIZONTAL_INDEX_START_POINT, VERTICAL_INDEX_START_POINT| 限定符和类型 | 方法和说明 |
|---|---|
Collection<HierarchicalAnnotation<Annotation>> |
getAllAnnotations()
获取全部注解
|
default <A extends Annotation> |
getAnnotation(Class<A> annotationType,
HierarchySelector<HierarchicalAnnotation<A>> selector)
获取指定类型的注解
|
Collection<HierarchicalAnnotation<Annotation>> |
getAnnotationByVerticalIndex(int verticalIndex)
获取指定层级中的注解
|
<A extends Annotation> |
getAnnotationsByType(Class<A> annotationType)
获取指定类型的注解
|
T |
getRoot()
获取注解的来源
|
boolean |
isPresent(Class<? extends Annotation> annotationType)
注解是否存在
|
getHorizontalIndex, getVerticalIndexaccept, interruptedgetRepeatableAnnotationsT getRoot()
getRoot 在接口中 Hierarchicalboolean isPresent(Class<? extends Annotation> annotationType)
annotationType - 属性类型Collection<HierarchicalAnnotation<Annotation>> getAllAnnotations()
Collection<HierarchicalAnnotation<Annotation>> getAnnotationByVerticalIndex(int verticalIndex)
verticalIndex - 垂直索引<A extends Annotation> Collection<HierarchicalAnnotation<A>> getAnnotationsByType(Class<A> annotationType)
A - 注解类型annotationType - 注解类型default <A extends Annotation> HierarchicalAnnotation<A> getAnnotation(Class<A> annotationType, HierarchySelector<HierarchicalAnnotation<A>> selector)
A - 注解类型annotationType - 注解类型selector - 选择器Copyright © 2022. All rights reserved.