mirror of
https://gitee.com/dromara/hutool.git
synced 2025-05-11 08:08:01 +08:00
fix code
This commit is contained in:
parent
6f24b9d403
commit
adf23e1cf7
@ -146,12 +146,12 @@ public class AnnotationUtil {
|
||||
* @param annotationEle {@link AnnotatedElement},可以是Class、Method、Field、Constructor、ReflectPermission
|
||||
* @param isToCombination 是否为转换为组合注解,组合注解可以递归获取注解的注解
|
||||
* @param predicate 过滤器,{@link Predicate#test(Object)}返回{@code true}保留,否则不保留
|
||||
* @return 注解对象
|
||||
* @return 注解对象,如果提供的{@link AnnotatedElement}为{@code null},返回{@code null}
|
||||
* @since 5.8.0
|
||||
*/
|
||||
public static Annotation[] getAnnotations(AnnotatedElement annotationEle, boolean isToCombination, Predicate<Annotation> predicate) {
|
||||
if (null == annotationEle) {
|
||||
return new Annotation[0];
|
||||
return null;
|
||||
}
|
||||
|
||||
if (isToCombination) {
|
||||
|
@ -14,14 +14,14 @@ public class AnnotationUtilTest {
|
||||
|
||||
@Test
|
||||
public void getCombinationAnnotationsTest(){
|
||||
Annotation[] annotations = AnnotationUtil.getAnnotations(ClassWithAnnotation.class, true);
|
||||
final Annotation[] annotations = AnnotationUtil.getAnnotations(ClassWithAnnotation.class, true);
|
||||
Assert.assertNotNull(annotations);
|
||||
Assert.assertEquals(3, annotations.length);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getCombinationAnnotationsWithClassTest(){
|
||||
AnnotationForTest[] annotations = AnnotationUtil.getCombinationAnnotations(ClassWithAnnotation.class, AnnotationForTest.class);
|
||||
final AnnotationForTest[] annotations = AnnotationUtil.getCombinationAnnotations(ClassWithAnnotation.class, AnnotationForTest.class);
|
||||
Assert.assertNotNull(annotations);
|
||||
Assert.assertEquals(2, annotations.length);
|
||||
Assert.assertEquals("测试", annotations[0].value());
|
||||
@ -29,7 +29,7 @@ public class AnnotationUtilTest {
|
||||
|
||||
@Test
|
||||
public void getAnnotationValueTest() {
|
||||
Object value = AnnotationUtil.getAnnotationValue(ClassWithAnnotation.class, AnnotationForTest.class);
|
||||
final Object value = AnnotationUtil.getAnnotationValue(ClassWithAnnotation.class, AnnotationForTest.class);
|
||||
Assert.assertEquals("测试", value);
|
||||
|
||||
}
|
||||
@ -40,7 +40,7 @@ public class AnnotationUtilTest {
|
||||
Assert.assertEquals("", ClassWithAnnotation.class.getAnnotation(AnnotationForTest.class).retry());
|
||||
|
||||
// 加别名适配
|
||||
AnnotationForTest annotation = AnnotationUtil.getAnnotationAlias(ClassWithAnnotation.class, AnnotationForTest.class);
|
||||
final AnnotationForTest annotation = AnnotationUtil.getAnnotationAlias(ClassWithAnnotation.class, AnnotationForTest.class);
|
||||
Assert.assertEquals("测试", annotation.retry());
|
||||
}
|
||||
|
||||
@ -56,7 +56,7 @@ public class AnnotationUtilTest {
|
||||
public void scanMetaAnnotationTest() {
|
||||
// RootAnnotation -> RootMetaAnnotation1 -> RootMetaAnnotation2 -> RootMetaAnnotation3
|
||||
// -> RootMetaAnnotation3
|
||||
List<Annotation> annotations = AnnotationUtil.scanMetaAnnotation(RootAnnotation.class);
|
||||
final List<Annotation> annotations = AnnotationUtil.scanMetaAnnotation(RootAnnotation.class);
|
||||
Assert.assertEquals(4, annotations.size());
|
||||
Assert.assertEquals(RootMetaAnnotation3.class, annotations.get(0).annotationType());
|
||||
Assert.assertEquals(RootMetaAnnotation1.class, annotations.get(1).annotationType());
|
||||
@ -68,7 +68,7 @@ public class AnnotationUtilTest {
|
||||
public void scanClassTest() {
|
||||
// TargetClass -> TargetSuperClass ----------------------------------> SuperInterface
|
||||
// -> TargetSuperInterface -> SuperTargetSuperInterface -> SuperInterface
|
||||
List<Annotation> annotations = AnnotationUtil.scanClass(TargetClass.class);
|
||||
final List<Annotation> annotations = AnnotationUtil.scanClass(TargetClass.class);
|
||||
Assert.assertEquals(5, annotations.size());
|
||||
Assert.assertEquals("TargetClass", ((AnnotationForTest)annotations.get(0)).value());
|
||||
Assert.assertEquals("TargetSuperClass", ((AnnotationForTest)annotations.get(1)).value());
|
||||
@ -81,9 +81,9 @@ public class AnnotationUtilTest {
|
||||
public void scanMethodTest() {
|
||||
// TargetClass -> TargetSuperClass
|
||||
// -> TargetSuperInterface
|
||||
Method method = ReflectUtil.getMethod(TargetClass.class, "testMethod");
|
||||
final Method method = ReflectUtil.getMethod(TargetClass.class, "testMethod");
|
||||
Assert.assertNotNull(method);
|
||||
List<Annotation> annotations = AnnotationUtil.scanMethod(method);
|
||||
final List<Annotation> annotations = AnnotationUtil.scanMethod(method);
|
||||
Assert.assertEquals(3, annotations.size());
|
||||
Assert.assertEquals("TargetClass", ((AnnotationForTest)annotations.get(0)).value());
|
||||
Assert.assertEquals("TargetSuperClass", ((AnnotationForTest)annotations.get(1)).value());
|
||||
|
Loading…
Reference in New Issue
Block a user