public interface SynthesizedAnnotation extends Annotation, Hierarchical, AnnotationAttributeValueProvider
用于在SynthesizedAggregateAnnotation
中表示一个处于合成状态的注解对象。
当对多个合成注解排序时,默认使用Hierarchical.DEFAULT_HIERARCHICAL_COMPARATOR
进行排序,
从保证合成注解按getVerticalDistance()
与getHorizontalDistance()
的返回值保持有序,
从而使得距离根元素更接近的注解对象在被处理是具有更高的优先级。
SynthesizedAggregateAnnotation
Hierarchical.Selector
DEFAULT_HIERARCHICAL_COMPARATOR
Modifier and Type | Method and Description |
---|---|
Annotation |
getAnnotation()
获取被合成的注解对象
|
Map<String,AnnotationAttribute> |
getAttributes()
获取该注解的全部属性
|
Object |
getAttributeValue(String attributeName)
获取属性值
|
int |
getHorizontalDistance()
获取该合成注解与根对象的水平距离。
|
int |
getVerticalDistance()
获取该合成注解与根对象的垂直距离。
|
boolean |
hasAttribute(String attributeName,
Class<?> returnType)
注解是否存在该名称相同,且类型一致的属性
|
void |
replaceAttribute(String attributeName,
UnaryOperator<AnnotationAttribute> operator)
替换属性值
|
void |
setAttribute(String attributeName,
AnnotationAttribute attribute)
设置属性值
|
default void |
setAttributes(Map<String,AnnotationAttribute> attributes)
设置该注解的全部属性
|
annotationType, equals, hashCode, toString
compareTo, getRoot
getAttributeValue
Annotation getAnnotation()
int getVerticalDistance()
getVerticalDistance
in interface Hierarchical
int getHorizontalDistance()
getHorizontalDistance
in interface Hierarchical
boolean hasAttribute(String attributeName, Class<?> returnType)
attributeName
- 属性名returnType
- 返回值类型Map<String,AnnotationAttribute> getAttributes()
default void setAttributes(Map<String,AnnotationAttribute> attributes)
attributes
- 注解属性void setAttribute(String attributeName, AnnotationAttribute attribute)
attributeName
- 属性名称attribute
- 注解属性void replaceAttribute(String attributeName, UnaryOperator<AnnotationAttribute> operator)
attributeName
- 属性名operator
- 替换操作Copyright © 2024. All rights reserved.