public abstract class org.springframework.core.annotation.AnnotatedElementUtils
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.springframework.core.annotation.AnnotatedElementUtils
super_class: java.lang.Object
{
private static final java.lang.Boolean CONTINUE;
descriptor: Ljava/lang/Boolean;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private static final java.lang.annotation.Annotation[] EMPTY_ANNOTATION_ARRAY;
descriptor: [Ljava/lang/annotation/Annotation;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.springframework.core.annotation.AnnotatedElementUtils$Processor<java.lang.Boolean> alwaysTrueAnnotationProcessor;
descriptor: Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<Ljava/lang/Boolean;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: aconst_null
putstatic org.springframework.core.annotation.AnnotatedElementUtils.CONTINUE:Ljava/lang/Boolean;
1: iconst_0
anewarray java.lang.annotation.Annotation
putstatic org.springframework.core.annotation.AnnotatedElementUtils.EMPTY_ANNOTATION_ARRAY:[Ljava/lang/annotation/Annotation;
2: new org.springframework.core.annotation.AnnotatedElementUtils$AlwaysTrueBooleanAnnotationProcessor
dup
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$AlwaysTrueBooleanAnnotationProcessor.<init>:()V
putstatic org.springframework.core.annotation.AnnotatedElementUtils.alwaysTrueAnnotationProcessor:Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/AnnotatedElementUtils;
public static java.lang.reflect.AnnotatedElement forAnnotations(java.lang.annotation.Annotation[]);
descriptor: ([Ljava/lang/annotation/Annotation;)Ljava/lang/reflect/AnnotatedElement;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=1, args_size=1
start local 0 0: new org.springframework.core.annotation.AnnotatedElementUtils$1
dup
aload 0
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$1.<init>:([Ljava/lang/annotation/Annotation;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 annotations [Ljava/lang/annotation/Annotation;
MethodParameters:
Name Flags
annotations final
public static java.util.Set<java.lang.String> getMetaAnnotationTypes(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
aload 1
invokeinterface java.lang.reflect.AnnotatedElement.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getMetaAnnotationTypes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
element
annotationType
public static java.util.Set<java.lang.String> getMetaAnnotationTypes(java.lang.reflect.AnnotatedElement, java.lang.String);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
aload 1
invokestatic org.springframework.core.annotation.AnnotationUtils.getAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Ljava/lang/annotation/Annotation;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getMetaAnnotationTypes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationName Ljava/lang/String;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Ljava/util/Set<Ljava/lang/String;>;
MethodParameters:
Name Flags
element
annotationName
private static java.util.Set<java.lang.String> getMetaAnnotationTypes(java.lang.reflect.AnnotatedElement, java.lang.annotation.Annotation);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
areturn
2: StackMap locals:
StackMap stack:
new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 2
start local 2 3: aload 1
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
aconst_null
aconst_null
new org.springframework.core.annotation.AnnotatedElementUtils$2
dup
iconst_1
aload 2
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$2.<init>:(ZLjava/util/Set;)V
4: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
iconst_1
5: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
pop
6: aload 2
7: areturn
end local 2 8: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
start local 2 9: aload 2
invokestatic org.springframework.core.annotation.AnnotationUtils.rethrowAnnotationConfigurationException:(Ljava/lang/Throwable;)V
10: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Failed to introspect annotations on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 element Ljava/lang/reflect/AnnotatedElement;
0 11 1 composed Ljava/lang/annotation/Annotation;
3 8 2 types Ljava/util/Set<Ljava/lang/String;>;
9 11 2 ex Ljava/lang/Throwable;
Exception table:
from to target type
2 7 8 Class java.lang.Throwable
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)Ljava/util/Set<Ljava/lang/String;>;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
composed
public static boolean hasMetaAnnotationTypes(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.hasMetaAnnotationTypes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Z
MethodParameters:
Name Flags
element
annotationType
public static boolean hasMetaAnnotationTypes(java.lang.reflect.AnnotatedElement, java.lang.String);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aconst_null
aload 1
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.hasMetaAnnotationTypes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationName Ljava/lang/String;
MethodParameters:
Name Flags
element
annotationName
private static boolean hasMetaAnnotationTypes(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.String);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
1: aload 0
aload 1
aload 2
new org.springframework.core.annotation.AnnotatedElementUtils$3
dup
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$3.<init>:()V
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
2: invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 3 2 annotationName Ljava/lang/String;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/String;)Z
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
annotationName
public static boolean isAnnotated(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface java.lang.reflect.AnnotatedElement.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
aload 0
aload 1
aconst_null
getstatic org.springframework.core.annotation.AnnotatedElementUtils.alwaysTrueAnnotationProcessor:Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Z
MethodParameters:
Name Flags
element
annotationType
public static boolean isAnnotated(java.lang.reflect.AnnotatedElement, java.lang.String);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
aload 0
aconst_null
aload 1
getstatic org.springframework.core.annotation.AnnotatedElementUtils.alwaysTrueAnnotationProcessor:Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationName Ljava/lang/String;
MethodParameters:
Name Flags
element
annotationName
public static org.springframework.core.annotation.AnnotationAttributes getMergedAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationAttributes;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
1: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:()V
2: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
checkcast org.springframework.core.annotation.AnnotationAttributes
astore 2
start local 2 3: aload 0
aload 2
iconst_0
iconst_0
invokestatic org.springframework.core.annotation.AnnotationUtils.postProcessAnnotationAttributes:(Ljava/lang/Object;Lorg/springframework/core/annotation/AnnotationAttributes;ZZ)V
4: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
3 5 2 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Lorg/springframework/core/annotation/AnnotationAttributes;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
public static org.springframework.core.annotation.AnnotationAttributes getMergedAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.String);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Lorg/springframework/core/annotation/AnnotationAttributes;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
iconst_0
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getMergedAnnotationAttributes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationName Ljava/lang/String;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationName
public static org.springframework.core.annotation.AnnotationAttributes getMergedAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.String, boolean, boolean);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aconst_null
aload 1
1: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iload 2
iload 3
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZ)V
2: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
checkcast org.springframework.core.annotation.AnnotationAttributes
astore 4
start local 4 3: aload 0
aload 4
iload 2
iload 3
invokestatic org.springframework.core.annotation.AnnotationUtils.postProcessAnnotationAttributes:(Ljava/lang/Object;Lorg/springframework/core/annotation/AnnotationAttributes;ZZ)V
4: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationName Ljava/lang/String;
0 5 2 classValuesAsString Z
0 5 3 nestedAnnotationsAsMap Z
3 5 4 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationName
classValuesAsString
nestedAnnotationsAsMap
public static <A extends java.lang.annotation.Annotation> A getMergedAnnotation(java.lang.reflect.AnnotatedElement, java.lang.Class<A>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface java.lang.reflect.AnnotatedElement.getDeclaredAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.synthesizeAnnotation:(Ljava/lang/annotation/Annotation;Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/annotation/Annotation;
areturn
3: StackMap locals: java.lang.annotation.Annotation
StackMap stack:
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.hasPlainJavaAnnotationsOnly:(Ljava/lang/Object;)Z
ifeq 5
4: aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 1
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getMergedAnnotationAttributes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationAttributes;
astore 3
start local 3 6: aload 3
ifnull 7
aload 3
aload 1
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.synthesizeAnnotation:(Ljava/util/Map;Ljava/lang/Class;Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/annotation/Annotation;
goto 8
StackMap locals: org.springframework.core.annotation.AnnotationAttributes
StackMap stack:
7: aconst_null
StackMap locals:
StackMap stack: java.lang.annotation.Annotation
8: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 element Ljava/lang/reflect/AnnotatedElement;
0 9 1 annotationType Ljava/lang/Class<TA;>;
1 9 2 annotation TA;
6 9 3 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;)TA;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
public static <A extends java.lang.annotation.Annotation> java.util.Set<A> getAllMergedAnnotations(java.lang.reflect.AnnotatedElement, java.lang.Class<A>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iconst_0
iconst_0
iconst_1
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZZ)V
astore 2
start local 2 1: aload 0
aload 1
aconst_null
aload 2
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
2: aload 0
aload 2
invokevirtual org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.getAggregatedResults:()Ljava/util/List;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.postProcessAndSynthesizeAggregatedResults:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationType Ljava/lang/Class<TA;>;
1 3 2 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$MergedAnnotationAttributesProcessor;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;)Ljava/util/Set<TA;>;
MethodParameters:
Name Flags
element
annotationType
public static java.util.Set<java.lang.annotation.Annotation> getAllMergedAnnotations(java.lang.reflect.AnnotatedElement, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iconst_0
iconst_0
iconst_1
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZZ)V
astore 2
start local 2 1: aload 0
aload 1
aconst_null
aconst_null
aload 2
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
2: aload 0
aload 2
invokevirtual org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.getAggregatedResults:()Ljava/util/List;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.postProcessAndSynthesizeAggregatedResults:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
1 3 2 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$MergedAnnotationAttributesProcessor;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;)Ljava/util/Set<Ljava/lang/annotation/Annotation;>;
MethodParameters:
Name Flags
element
annotationTypes
public static <A extends java.lang.annotation.Annotation> java.util.Set<A> getMergedRepeatableAnnotations(java.lang.reflect.AnnotatedElement, java.lang.Class<A>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getMergedRepeatableAnnotations:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationType Ljava/lang/Class<TA;>;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;)Ljava/util/Set<TA;>;
MethodParameters:
Name Flags
element
annotationType
public static <A extends java.lang.annotation.Annotation> java.util.Set<A> getMergedRepeatableAnnotations(java.lang.reflect.AnnotatedElement, java.lang.Class<A>, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 3
1: aload 1
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.resolveContainerType:(Ljava/lang/Class;)Ljava/lang/Class;
astore 2
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
aload 2
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.validateContainerType:(Ljava/lang/Class;Ljava/lang/Class;)V
4: StackMap locals:
StackMap stack:
new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iconst_0
iconst_0
iconst_1
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZZ)V
astore 3
start local 3 5: aload 0
aload 1
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
aconst_null
aload 2
aload 3
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
6: aload 0
aload 3
invokevirtual org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.getAggregatedResults:()Ljava/util/List;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.postProcessAndSynthesizeAggregatedResults:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 element Ljava/lang/reflect/AnnotatedElement;
0 7 1 annotationType Ljava/lang/Class<TA;>;
0 7 2 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
5 7 3 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$MergedAnnotationAttributesProcessor;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<TA;>;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
containerType
public static org.springframework.util.MultiValueMap<java.lang.String, java.lang.Object> getAllAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.String);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Lorg/springframework/util/MultiValueMap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
iconst_0
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getAllAnnotationAttributes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/util/MultiValueMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationName Ljava/lang/String;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;)Lorg/springframework/util/MultiValueMap<Ljava/lang/String;Ljava/lang/Object;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationName
public static org.springframework.util.MultiValueMap<java.lang.String, java.lang.Object> getAllAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.String, boolean, boolean);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/util/MultiValueMap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.springframework.util.LinkedMultiValueMap
dup
invokespecial org.springframework.util.LinkedMultiValueMap.<init>:()V
astore 4
start local 4 1: aload 0
aconst_null
aload 1
new org.springframework.core.annotation.AnnotatedElementUtils$4
dup
iload 2
iload 3
aload 4
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$4.<init>:(ZZLorg/springframework/util/MultiValueMap;)V
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
2: aload 4
invokeinterface org.springframework.util.MultiValueMap.isEmpty:()Z
ifne 3
aload 4
goto 4
StackMap locals: org.springframework.util.MultiValueMap
StackMap stack:
3: aconst_null
StackMap locals:
StackMap stack: org.springframework.util.MultiValueMap
4: areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationName Ljava/lang/String;
0 5 2 classValuesAsString Z
0 5 3 nestedAnnotationsAsMap Z
1 5 4 attributesMap Lorg/springframework/util/MultiValueMap<Ljava/lang/String;Ljava/lang/Object;>;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/util/MultiValueMap<Ljava/lang/String;Ljava/lang/Object;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationName
classValuesAsString final
nestedAnnotationsAsMap final
public static boolean hasAnnotation(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface java.lang.reflect.AnnotatedElement.isAnnotationPresent:(Ljava/lang/Class;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
getstatic java.lang.Boolean.TRUE:Ljava/lang/Boolean;
aload 0
aload 1
aconst_null
getstatic org.springframework.core.annotation.AnnotatedElementUtils.alwaysTrueAnnotationProcessor:Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
invokevirtual java.lang.Boolean.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Z
MethodParameters:
Name Flags
element
annotationType
public static org.springframework.core.annotation.AnnotationAttributes findMergedAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>, boolean, boolean);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aconst_null
1: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iload 2
iload 3
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZ)V
2: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
checkcast org.springframework.core.annotation.AnnotationAttributes
astore 4
start local 4 3: aload 0
aload 4
iload 2
iload 3
invokestatic org.springframework.core.annotation.AnnotationUtils.postProcessAnnotationAttributes:(Ljava/lang/Object;Lorg/springframework/core/annotation/AnnotationAttributes;ZZ)V
4: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 5 2 classValuesAsString Z
0 5 3 nestedAnnotationsAsMap Z
3 5 4 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
classValuesAsString
nestedAnnotationsAsMap
public static org.springframework.core.annotation.AnnotationAttributes findMergedAnnotationAttributes(java.lang.reflect.AnnotatedElement, java.lang.String, boolean, boolean);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/String;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aconst_null
aload 1
1: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iload 2
iload 3
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZ)V
2: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
checkcast org.springframework.core.annotation.AnnotationAttributes
astore 4
start local 4 3: aload 0
aload 4
iload 2
iload 3
invokestatic org.springframework.core.annotation.AnnotationUtils.postProcessAnnotationAttributes:(Ljava/lang/Object;Lorg/springframework/core/annotation/AnnotationAttributes;ZZ)V
4: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationName Ljava/lang/String;
0 5 2 classValuesAsString Z
0 5 3 nestedAnnotationsAsMap Z
3 5 4 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationName
classValuesAsString
nestedAnnotationsAsMap
public static <A extends java.lang.annotation.Annotation> A findMergedAnnotation(java.lang.reflect.AnnotatedElement, java.lang.Class<A>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface java.lang.reflect.AnnotatedElement.getDeclaredAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
astore 2
start local 2 1: aload 2
ifnull 3
2: aload 2
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.synthesizeAnnotation:(Ljava/lang/annotation/Annotation;Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/annotation/Annotation;
areturn
3: StackMap locals: java.lang.annotation.Annotation
StackMap stack:
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.hasPlainJavaAnnotationsOnly:(Ljava/lang/Object;)Z
ifeq 5
4: aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 0
aload 1
iconst_0
iconst_0
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.findMergedAnnotationAttributes:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;ZZ)Lorg/springframework/core/annotation/AnnotationAttributes;
astore 3
start local 3 6: aload 3
ifnull 7
aload 3
aload 1
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.synthesizeAnnotation:(Ljava/util/Map;Ljava/lang/Class;Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/annotation/Annotation;
goto 8
StackMap locals: org.springframework.core.annotation.AnnotationAttributes
StackMap stack:
7: aconst_null
StackMap locals:
StackMap stack: java.lang.annotation.Annotation
8: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 element Ljava/lang/reflect/AnnotatedElement;
0 9 1 annotationType Ljava/lang/Class<TA;>;
1 9 2 annotation TA;
6 9 3 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;)TA;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
public static <A extends java.lang.annotation.Annotation> java.util.Set<A> findAllMergedAnnotations(java.lang.reflect.AnnotatedElement, java.lang.Class<A>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iconst_0
iconst_0
iconst_1
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZZ)V
astore 2
start local 2 1: aload 0
aload 1
aconst_null
aload 2
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
2: aload 0
aload 2
invokevirtual org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.getAggregatedResults:()Ljava/util/List;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.postProcessAndSynthesizeAggregatedResults:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationType Ljava/lang/Class<TA;>;
1 3 2 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$MergedAnnotationAttributesProcessor;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;)Ljava/util/Set<TA;>;
MethodParameters:
Name Flags
element
annotationType
public static java.util.Set<java.lang.annotation.Annotation> findAllMergedAnnotations(java.lang.reflect.AnnotatedElement, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iconst_0
iconst_0
iconst_1
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZZ)V
astore 2
start local 2 1: aload 0
aload 1
aconst_null
aconst_null
aload 2
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
2: aload 0
aload 2
invokevirtual org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.getAggregatedResults:()Ljava/util/List;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.postProcessAndSynthesizeAggregatedResults:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 element Ljava/lang/reflect/AnnotatedElement;
0 3 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
1 3 2 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$MergedAnnotationAttributesProcessor;
Signature: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;)Ljava/util/Set<Ljava/lang/annotation/Annotation;>;
MethodParameters:
Name Flags
element
annotationTypes
public static <A extends java.lang.annotation.Annotation> java.util.Set<A> findMergedRepeatableAnnotations(java.lang.reflect.AnnotatedElement, java.lang.Class<A>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.findMergedRepeatableAnnotations:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Set;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 element Ljava/lang/reflect/AnnotatedElement;
0 1 1 annotationType Ljava/lang/Class<TA;>;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;)Ljava/util/Set<TA;>;
MethodParameters:
Name Flags
element
annotationType
public static <A extends java.lang.annotation.Annotation> java.util.Set<A> findMergedRepeatableAnnotations(java.lang.reflect.AnnotatedElement, java.lang.Class<A>, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/Class;)Ljava/util/Set;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 3
1: aload 1
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.resolveContainerType:(Ljava/lang/Class;)Ljava/lang/Class;
astore 2
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
aload 2
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.validateContainerType:(Ljava/lang/Class;Ljava/lang/Class;)V
4: StackMap locals:
StackMap stack:
new org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor
dup
iconst_0
iconst_0
iconst_1
invokespecial org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.<init>:(ZZZ)V
astore 3
start local 3 5: aload 0
aload 1
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
aconst_null
aload 2
aload 3
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
pop
6: aload 0
aload 3
invokevirtual org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor.getAggregatedResults:()Ljava/util/List;
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.postProcessAndSynthesizeAggregatedResults:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 element Ljava/lang/reflect/AnnotatedElement;
0 7 1 annotationType Ljava/lang/Class<TA;>;
0 7 2 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
5 7 3 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$MergedAnnotationAttributesProcessor;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<TA;>;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/util/Set<TA;>;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
element
annotationType
containerType
private static <T> T searchWithGetSemantics(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.String, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
1: aload 1
ifnull 2
aload 1
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
goto 3
StackMap locals:
StackMap stack: java.lang.reflect.AnnotatedElement
2: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
3: StackMap locals: java.lang.reflect.AnnotatedElement java.lang.Class java.lang.String org.springframework.core.annotation.AnnotatedElementUtils$Processor
StackMap stack: java.lang.reflect.AnnotatedElement java.util.Set
aload 2
aconst_null
aload 3
4: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 5 2 annotationName Ljava/lang/String;
0 5 3 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
3:
MethodParameters:
Name Flags
element
annotationType
annotationName
processor
private static <T> T searchWithGetSemantics(java.lang.reflect.AnnotatedElement, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>, java.lang.String, java.lang.Class<? extends java.lang.annotation.Annotation>, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
1: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
iconst_0
2: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
3: areturn
4: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
start local 5 5: aload 5
invokestatic org.springframework.core.annotation.AnnotationUtils.rethrowAnnotationConfigurationException:(Ljava/lang/Throwable;)V
6: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Failed to introspect annotations on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 element Ljava/lang/reflect/AnnotatedElement;
0 7 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
0 7 2 annotationName Ljava/lang/String;
0 7 3 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 7 4 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
5 7 5 ex Ljava/lang/Throwable;
Exception table:
from to target type
0 3 4 Class java.lang.Throwable
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;Ljava/lang/String;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
MethodParameters:
Name Flags
element
annotationTypes
annotationName
containerType
processor
private static <T> T searchWithGetSemantics(java.lang.reflect.AnnotatedElement, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>, java.lang.String, java.lang.Class<? extends java.lang.annotation.Annotation>, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>, java.util.Set<java.lang.reflect.AnnotatedElement>, );
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=15, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 5
aload 0
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
ifeq 26
1: aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.getDeclaredAnnotations:(Ljava/lang/reflect/AnnotatedElement;)[Ljava/lang/annotation/Annotation;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 7
start local 7 2: aload 0
aload 7
3: aload 1
aload 2
aload 3
aload 4
aload 5
iload 6
4: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemanticsInAnnotations:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 8
start local 8 5: aload 8
ifnull 8
6: aload 8
7: areturn
8: StackMap locals: java.util.List java.lang.Object
StackMap stack:
aload 0
instanceof java.lang.Class
ifeq 26
9: aload 0
checkcast java.lang.Class
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 9
start local 9 10: aload 9
ifnull 26
aload 9
ldc Ljava/lang/Object;
if_acmpeq 26
11: new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
astore 10
start local 10 12: aload 0
invokeinterface java.lang.reflect.AnnotatedElement.getAnnotations:()[Ljava/lang/annotation/Annotation;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 17
StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.util.List java.lang.Object java.lang.Class java.util.List top int int java.lang.annotation.Annotation[]
StackMap stack:
13: aload 14
iload 12
aaload
astore 11
start local 11 14: aload 7
aload 11
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 16
15: aload 10
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 11 16: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
17: iload 12
iload 13
if_icmplt 13
18: aload 0
aload 10
19: aload 1
aload 2
aload 3
aload 4
aload 5
iload 6
20: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemanticsInAnnotations:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 8
21: aload 8
ifnull 26
22: aload 8
23: areturn
end local 10 end local 9 end local 8 end local 7 24: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int
StackMap stack: java.lang.Throwable
astore 7
start local 7 25: aload 0
aload 7
invokestatic org.springframework.core.annotation.AnnotationUtils.handleIntrospectionFailure:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Throwable;)V
end local 7 26: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 element Ljava/lang/reflect/AnnotatedElement;
0 27 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
0 27 2 annotationName Ljava/lang/String;
0 27 3 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 27 4 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
0 27 5 visited Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;
0 27 6 metaDepth I
2 24 7 declaredAnnotations Ljava/util/List<Ljava/lang/annotation/Annotation;>;
5 24 8 result TT;
10 24 9 superclass Ljava/lang/Class<*>;
12 24 10 inheritedAnnotations Ljava/util/List<Ljava/lang/annotation/Annotation;>;
14 16 11 annotation Ljava/lang/annotation/Annotation;
25 26 7 ex Ljava/lang/Throwable;
Exception table:
from to target type
1 7 24 Class java.lang.Throwable
8 23 24 Class java.lang.Throwable
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;Ljava/lang/String;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;I)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
5:
6:
MethodParameters:
Name Flags
element
annotationTypes
annotationName
containerType
processor
visited
metaDepth
private static <T> T searchWithGetSemanticsInAnnotations(java.lang.reflect.AnnotatedElement, java.util.List<java.lang.annotation.Annotation>, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>, java.lang.String, java.lang.Class<? extends java.lang.annotation.Annotation>, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>, java.util.Set<java.lang.reflect.AnnotatedElement>, );
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=16, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 21
StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int top java.util.Iterator
StackMap stack:
1: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.annotation.Annotation
astore 8
start local 8 2: aload 8
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
astore 10
start local 10 3: aload 10
invokestatic org.springframework.core.annotation.AnnotationUtils.isInJavaLangAnnotationPackage:(Ljava/lang/Class;)Z
ifne 21
4: aload 2
aload 10
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 7
5: aload 10
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 3
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 7
6: aload 5
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.alwaysProcesses:()Z
ifeq 13
7: StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation java.util.Iterator java.lang.Class
StackMap stack:
aload 5
aload 0
aload 8
iload 7
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.process:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;I)Ljava/lang/Object;
astore 11
start local 11 8: aload 11
ifnull 21
9: aload 5
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.aggregates:()Z
ifeq 12
iload 7
ifne 12
10: aload 5
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.getAggregatedResults:()Ljava/util/List;
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
11: goto 21
12: StackMap locals: java.lang.Object
StackMap stack:
aload 11
areturn
end local 11 13: StackMap locals:
StackMap stack:
aload 10
aload 4
if_acmpne 21
14: aload 0
aload 8
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getRawAnnotationsFromContainer:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)[Ljava/lang/annotation/Annotation;
dup
astore 14
arraylength
istore 13
iconst_0
istore 12
goto 20
StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation java.util.Iterator java.lang.Class top int int java.lang.annotation.Annotation[]
StackMap stack:
15: aload 14
iload 12
aaload
astore 11
start local 11 16: aload 5
aload 0
aload 11
iload 7
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.process:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;I)Ljava/lang/Object;
astore 15
start local 15 17: aload 15
ifnull 19
18: aload 5
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.getAggregatedResults:()Ljava/util/List;
aload 15
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 15 end local 11 19: StackMap locals:
StackMap stack:
iinc 12 1
StackMap locals:
StackMap stack:
20: iload 12
iload 13
if_icmplt 15
end local 10 end local 8 21: StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
22: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 35
StackMap locals:
StackMap stack:
23: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.annotation.Annotation
astore 8
start local 8 24: aload 8
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
astore 10
start local 10 25: aload 10
invokestatic org.springframework.core.annotation.AnnotationUtils.hasPlainJavaAnnotationsOnly:(Ljava/lang/Object;)Z
ifne 35
26: aload 10
aload 2
27: aload 3
aload 4
aload 5
aload 6
iload 7
iconst_1
iadd
28: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithGetSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 11
start local 11 29: aload 11
ifnull 35
30: aload 5
aload 0
aload 8
aload 11
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.postProcess:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;Ljava/lang/Object;)V
31: aload 5
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.aggregates:()Z
ifeq 34
iload 7
ifne 34
32: aload 5
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.getAggregatedResults:()Ljava/util/List;
aload 11
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
33: goto 35
34: StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation java.util.Iterator java.lang.Class java.lang.Object
StackMap stack:
aload 11
areturn
end local 11 end local 10 end local 8 35: StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
36: aconst_null
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 element Ljava/lang/reflect/AnnotatedElement;
0 37 1 annotations Ljava/util/List<Ljava/lang/annotation/Annotation;>;
0 37 2 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
0 37 3 annotationName Ljava/lang/String;
0 37 4 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 37 5 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
0 37 6 visited Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;
0 37 7 metaDepth I
2 21 8 annotation Ljava/lang/annotation/Annotation;
3 21 10 currentAnnotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
8 13 11 result TT;
16 19 11 contained Ljava/lang/annotation/Annotation;
17 19 15 result TT;
24 35 8 annotation Ljava/lang/annotation/Annotation;
25 35 10 currentAnnotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
29 35 11 result TT;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List<Ljava/lang/annotation/Annotation;>;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;Ljava/lang/String;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;I)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
2:
3:
org.springframework.lang.Nullable()
4:
org.springframework.lang.Nullable()
5:
6:
7:
MethodParameters:
Name Flags
element
annotations
annotationTypes
annotationName
containerType
processor
visited
metaDepth
private static <T> T searchWithFindSemantics(java.lang.reflect.AnnotatedElement, java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.String, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
1: aload 1
ifnull 2
aload 1
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
goto 3
StackMap locals:
StackMap stack: java.lang.reflect.AnnotatedElement
2: invokestatic java.util.Collections.emptySet:()Ljava/util/Set;
3: StackMap locals: java.lang.reflect.AnnotatedElement java.lang.Class java.lang.String org.springframework.core.annotation.AnnotatedElementUtils$Processor
StackMap stack: java.lang.reflect.AnnotatedElement java.util.Set
aload 2
aconst_null
aload 3
4: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 element Ljava/lang/reflect/AnnotatedElement;
0 5 1 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 5 2 annotationName Ljava/lang/String;
0 5 3 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/String;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
3:
MethodParameters:
Name Flags
element
annotationType
annotationName
processor
private static <T> T searchWithFindSemantics(java.lang.reflect.AnnotatedElement, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>, java.lang.String, java.lang.Class<? extends java.lang.annotation.Annotation>, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
ifnull 4
aload 4
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.aggregates:()Z
ifne 4
1: new java.lang.IllegalArgumentException
dup
2: ldc "Searches for repeatable annotations must supply an aggregating Processor"
3: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
iconst_0
5: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
6: areturn
7: StackMap locals:
StackMap stack: java.lang.Throwable
astore 5
start local 5 8: aload 5
invokestatic org.springframework.core.annotation.AnnotationUtils.rethrowAnnotationConfigurationException:(Ljava/lang/Throwable;)V
9: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Failed to introspect annotations on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 5
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 element Ljava/lang/reflect/AnnotatedElement;
0 10 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
0 10 2 annotationName Ljava/lang/String;
0 10 3 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 10 4 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
8 10 5 ex Ljava/lang/Throwable;
Exception table:
from to target type
4 6 7 Class java.lang.Throwable
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;Ljava/lang/String;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
MethodParameters:
Name Flags
element
annotationTypes
annotationName
containerType
processor
private static <T> T searchWithFindSemantics(java.lang.reflect.AnnotatedElement, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>, java.lang.String, java.lang.Class<? extends java.lang.annotation.Annotation>, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>, java.util.Set<java.lang.reflect.AnnotatedElement>, );
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=19, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 5
aload 0
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
ifeq 112
1: aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.getDeclaredAnnotations:(Ljava/lang/reflect/AnnotatedElement;)[Ljava/lang/annotation/Annotation;
astore 7
start local 7 2: aload 7
arraylength
ifle 48
3: aload 4
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.aggregates:()Z
ifeq 4
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
goto 5
StackMap locals: java.lang.annotation.Annotation[]
StackMap stack:
4: aconst_null
StackMap locals:
StackMap stack: java.util.ArrayList
5: astore 8
start local 8 6: aload 7
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 29
StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.util.List top int int java.lang.annotation.Annotation[]
StackMap stack:
7: aload 12
iload 10
aaload
astore 9
start local 9 8: aload 9
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
astore 13
start local 13 9: aload 13
invokestatic org.springframework.core.annotation.AnnotationUtils.isInJavaLangAnnotationPackage:(Ljava/lang/Class;)Z
ifne 28
10: aload 1
aload 13
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 13
11: aload 13
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
12: aload 4
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.alwaysProcesses:()Z
ifeq 20
13: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.util.List java.lang.annotation.Annotation int int java.lang.annotation.Annotation[] java.lang.Class
StackMap stack:
aload 4
aload 0
aload 9
iload 6
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.process:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;I)Ljava/lang/Object;
astore 14
start local 14 14: aload 14
ifnull 28
15: aload 8
ifnull 18
iload 6
ifne 18
16: aload 8
aload 14
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
17: goto 28
18: StackMap locals: java.lang.Object
StackMap stack:
aload 14
19: areturn
end local 14 20: StackMap locals:
StackMap stack:
aload 13
aload 3
if_acmpne 28
21: aload 0
aload 9
invokestatic org.springframework.core.annotation.AnnotatedElementUtils.getRawAnnotationsFromContainer:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)[Ljava/lang/annotation/Annotation;
dup
astore 17
arraylength
istore 16
iconst_0
istore 15
goto 27
StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.util.List java.lang.annotation.Annotation int int java.lang.annotation.Annotation[] java.lang.Class top int int java.lang.annotation.Annotation[]
StackMap stack:
22: aload 17
iload 15
aaload
astore 14
start local 14 23: aload 4
aload 0
aload 14
iload 6
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.process:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;I)Ljava/lang/Object;
astore 18
start local 18 24: aload 8
ifnull 26
aload 18
ifnull 26
25: aload 8
aload 18
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 18 end local 14 26: StackMap locals:
StackMap stack:
iinc 15 1
StackMap locals:
StackMap stack:
27: iload 15
iload 16
if_icmplt 22
end local 13 end local 9 28: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.util.List top int int java.lang.annotation.Annotation[]
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
29: iload 10
iload 11
if_icmplt 7
30: aload 7
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 45
StackMap locals:
StackMap stack:
31: aload 12
iload 10
aaload
astore 9
start local 9 32: aload 9
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
astore 13
start local 13 33: aload 13
invokestatic org.springframework.core.annotation.AnnotationUtils.hasPlainJavaAnnotationsOnly:(Ljava/lang/Object;)Z
ifne 44
34: aload 13
aload 1
aload 2
35: aload 3
aload 4
aload 5
iload 6
iconst_1
iadd
36: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 14
start local 14 37: aload 14
ifnull 44
38: aload 4
aload 13
aload 9
aload 14
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.postProcess:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;Ljava/lang/Object;)V
39: aload 8
ifnull 42
iload 6
ifne 42
40: aload 8
aload 14
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
41: goto 44
42: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.util.List java.lang.annotation.Annotation int int java.lang.annotation.Annotation[] java.lang.Class java.lang.Object
StackMap stack:
aload 14
43: areturn
end local 14 end local 13 end local 9 44: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.util.List top int int java.lang.annotation.Annotation[]
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
45: iload 10
iload 11
if_icmplt 31
46: aload 8
invokestatic org.springframework.util.CollectionUtils.isEmpty:(Ljava/util/Collection;)Z
ifne 48
47: aload 4
invokeinterface org.springframework.core.annotation.AnnotatedElementUtils$Processor.getAggregatedResults:()Ljava/util/List;
iconst_0
aload 8
invokeinterface java.util.List.addAll:(ILjava/util/Collection;)Z
pop
end local 8 48: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[]
StackMap stack:
aload 0
instanceof java.lang.reflect.Method
ifeq 89
49: aload 0
checkcast java.lang.reflect.Method
astore 8
start local 8 50: aload 8
invokestatic org.springframework.core.BridgeMethodResolver.findBridgedMethod:(Ljava/lang/reflect/Method;)Ljava/lang/reflect/Method;
astore 10
start local 10 51: aload 10
aload 8
if_acmpeq 58
52: aload 10
aload 1
aload 2
53: aload 3
aload 4
aload 5
iload 6
54: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 9
start local 9 55: aload 9
ifnull 58
56: aload 9
57: areturn
end local 9 58: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.lang.reflect.Method top java.lang.reflect.Method
StackMap stack:
aload 8
invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
astore 11
start local 11 59: aload 11
arraylength
ifle 66
60: aload 8
aload 1
aload 2
61: aload 3
aload 4
aload 5
iload 6
aload 11
62: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchOnInterfaces:(Ljava/lang/reflect/Method;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I[Ljava/lang/Class;)Ljava/lang/Object;
astore 9
start local 9 63: aload 9
ifnull 66
64: aload 9
65: areturn
end local 9 66: StackMap locals: java.lang.Class[]
StackMap stack:
aload 8
invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
astore 12
start local 12 67: StackMap locals: java.lang.Class
StackMap stack:
aload 12
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 12
68: aload 12
ifnull 112
aload 12
ldc Ljava/lang/Object;
if_acmpne 70
69: goto 112
70: StackMap locals:
StackMap stack:
aload 12
invokestatic org.springframework.core.annotation.AnnotationUtils.getAnnotatedMethodsInBaseType:(Ljava/lang/Class;)Ljava/util/Set;
astore 13
start local 13 71: aload 13
invokeinterface java.util.Set.isEmpty:()Z
ifne 83
72: aload 13
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 15
goto 82
StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.lang.reflect.Method top java.lang.reflect.Method java.lang.Class[] java.lang.Class java.util.Set top java.util.Iterator
StackMap stack:
73: aload 15
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
astore 14
start local 14 74: aload 8
aload 14
invokestatic org.springframework.core.annotation.AnnotationUtils.isOverride:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z
ifeq 82
75: aload 14
invokestatic org.springframework.core.BridgeMethodResolver.findBridgedMethod:(Ljava/lang/reflect/Method;)Ljava/lang/reflect/Method;
astore 16
start local 16 76: aload 16
aload 1
77: aload 2
aload 3
aload 4
aload 5
iload 6
78: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 9
start local 9 79: aload 9
ifnull 82
80: aload 9
81: areturn
end local 16 end local 14 end local 9 82: StackMap locals:
StackMap stack:
aload 15
invokeinterface java.util.Iterator.hasNext:()Z
ifne 73
83: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.lang.reflect.Method top java.lang.reflect.Method java.lang.Class[] java.lang.Class java.util.Set
StackMap stack:
aload 8
aload 1
aload 2
84: aload 3
aload 4
aload 5
iload 6
aload 12
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
85: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchOnInterfaces:(Ljava/lang/reflect/Method;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I[Ljava/lang/Class;)Ljava/lang/Object;
astore 9
start local 9 86: aload 9
ifnull 67
87: aload 9
88: areturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 89: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[]
StackMap stack:
aload 0
instanceof java.lang.Class
ifeq 112
90: aload 0
checkcast java.lang.Class
astore 8
start local 8 91: ldc Ljava/lang/annotation/Annotation;
aload 8
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 112
92: aload 8
invokevirtual java.lang.Class.getInterfaces:()[Ljava/lang/Class;
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 101
StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.annotation.Annotation[] java.lang.Class top int int java.lang.Class[]
StackMap stack:
93: aload 12
iload 10
aaload
astore 9
start local 9 94: aload 9
aload 1
aload 2
95: aload 3
aload 4
aload 5
iload 6
96: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 13
start local 13 97: aload 13
ifnull 100
98: aload 13
99: areturn
end local 13 end local 9 100: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
101: iload 10
iload 11
if_icmplt 93
102: aload 8
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 9
start local 9 103: aload 9
ifnull 112
aload 9
ldc Ljava/lang/Object;
if_acmpeq 112
104: aload 9
aload 1
aload 2
105: aload 3
aload 4
aload 5
iload 6
106: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 10
start local 10 107: aload 10
ifnull 112
108: aload 10
109: areturn
end local 10 end local 9 end local 8 end local 7 110: StackMap locals: java.lang.reflect.AnnotatedElement java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int
StackMap stack: java.lang.Throwable
astore 7
start local 7 111: aload 0
aload 7
invokestatic org.springframework.core.annotation.AnnotationUtils.handleIntrospectionFailure:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Throwable;)V
end local 7 112: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 113 0 element Ljava/lang/reflect/AnnotatedElement;
0 113 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
0 113 2 annotationName Ljava/lang/String;
0 113 3 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 113 4 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
0 113 5 visited Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;
0 113 6 metaDepth I
2 110 7 annotations [Ljava/lang/annotation/Annotation;
6 48 8 aggregatedResults Ljava/util/List<TT;>;
8 28 9 annotation Ljava/lang/annotation/Annotation;
9 28 13 currentAnnotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
14 20 14 result TT;
23 26 14 contained Ljava/lang/annotation/Annotation;
24 26 18 result TT;
32 44 9 annotation Ljava/lang/annotation/Annotation;
33 44 13 currentAnnotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
37 44 14 result TT;
50 89 8 method Ljava/lang/reflect/Method;
55 58 9 result TT;
63 66 9 result TT;
79 82 9 result TT;
86 89 9 result TT;
51 89 10 resolvedMethod Ljava/lang/reflect/Method;
59 89 11 ifcs [Ljava/lang/Class;
67 89 12 clazz Ljava/lang/Class<*>;
71 89 13 annotatedMethods Ljava/util/Set<Ljava/lang/reflect/Method;>;
74 82 14 annotatedMethod Ljava/lang/reflect/Method;
76 82 16 resolvedSuperMethod Ljava/lang/reflect/Method;
91 110 8 clazz Ljava/lang/Class<*>;
94 100 9 ifc Ljava/lang/Class<*>;
97 100 13 result TT;
103 110 9 superclass Ljava/lang/Class<*>;
107 110 10 result TT;
111 112 7 ex Ljava/lang/Throwable;
Exception table:
from to target type
1 19 110 Class java.lang.Throwable
20 43 110 Class java.lang.Throwable
44 57 110 Class java.lang.Throwable
58 65 110 Class java.lang.Throwable
66 81 110 Class java.lang.Throwable
82 88 110 Class java.lang.Throwable
89 99 110 Class java.lang.Throwable
100 109 110 Class java.lang.Throwable
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;Ljava/lang/String;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;I)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
5:
6:
MethodParameters:
Name Flags
element
annotationTypes
annotationName
containerType
processor
visited
metaDepth
private static <T> T searchOnInterfaces(java.lang.reflect.Method, java.util.Set<java.lang.Class<? extends java.lang.annotation.Annotation>>, java.lang.String, java.lang.Class<? extends java.lang.annotation.Annotation>, org.springframework.core.annotation.AnnotatedElementUtils$Processor<T>, java.util.Set<java.lang.reflect.AnnotatedElement>, int, java.lang.Class<?>[]);
descriptor: (Ljava/lang/reflect/Method;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I[Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=7, locals=16, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 7
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 14
StackMap locals: java.lang.reflect.Method java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.Class[] top int int java.lang.Class[]
StackMap stack:
1: aload 11
iload 9
aaload
astore 8
start local 8 2: aload 8
invokestatic org.springframework.core.annotation.AnnotationUtils.getAnnotatedMethodsInBaseType:(Ljava/lang/Class;)Ljava/util/Set;
astore 12
start local 12 3: aload 12
invokeinterface java.util.Set.isEmpty:()Z
ifne 13
4: aload 12
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 14
goto 12
StackMap locals: java.lang.reflect.Method java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.Class[] java.lang.Class int int java.lang.Class[] java.util.Set top java.util.Iterator
StackMap stack:
5: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.reflect.Method
astore 13
start local 13 6: aload 0
aload 13
invokestatic org.springframework.core.annotation.AnnotationUtils.isOverride:(Ljava/lang/reflect/Method;Ljava/lang/reflect/Method;)Z
ifeq 12
7: aload 13
aload 1
aload 2
8: aload 3
aload 4
aload 5
iload 6
9: invokestatic org.springframework.core.annotation.AnnotatedElementUtils.searchWithFindSemantics:(Ljava/lang/reflect/AnnotatedElement;Ljava/util/Set;Ljava/lang/String;Ljava/lang/Class;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor;Ljava/util/Set;I)Ljava/lang/Object;
astore 15
start local 15 10: aload 15
ifnull 12
11: aload 15
areturn
end local 15 end local 13 12: StackMap locals:
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 12 end local 8 13: StackMap locals: java.lang.reflect.Method java.util.Set java.lang.String java.lang.Class org.springframework.core.annotation.AnnotatedElementUtils$Processor java.util.Set int java.lang.Class[] top int int java.lang.Class[]
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
14: iload 9
iload 10
if_icmplt 1
15: aconst_null
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 method Ljava/lang/reflect/Method;
0 16 1 annotationTypes Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
0 16 2 annotationName Ljava/lang/String;
0 16 3 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 16 4 processor Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;
0 16 5 visited Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;
0 16 6 metaDepth I
0 16 7 ifcs [Ljava/lang/Class;
2 13 8 ifc Ljava/lang/Class<*>;
3 13 12 annotatedMethods Ljava/util/Set<Ljava/lang/reflect/Method;>;
6 12 13 annotatedMethod Ljava/lang/reflect/Method;
10 12 15 result TT;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/Method;Ljava/util/Set<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;Ljava/lang/String;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Lorg/springframework/core/annotation/AnnotatedElementUtils$Processor<TT;>;Ljava/util/Set<Ljava/lang/reflect/AnnotatedElement;>;I[Ljava/lang/Class<*>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
5:
6:
7:
MethodParameters:
Name Flags
method
annotationTypes
annotationName
containerType
processor
visited
metaDepth
ifcs
private static <A extends java.lang.annotation.Annotation> A[] getRawAnnotationsFromContainer(java.lang.reflect.AnnotatedElement, java.lang.annotation.Annotation);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)[Ljava/lang/annotation/Annotation;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic org.springframework.core.annotation.AnnotationUtils.getValue:(Ljava/lang/annotation/Annotation;)Ljava/lang/Object;
checkcast java.lang.annotation.Annotation[]
astore 2
start local 2 1: aload 2
ifnull 6
2: aload 2
3: areturn
end local 2 4: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
start local 2 5: aload 0
aload 2
invokestatic org.springframework.core.annotation.AnnotationUtils.handleIntrospectionFailure:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Throwable;)V
end local 2 6: StackMap locals:
StackMap stack:
getstatic org.springframework.core.annotation.AnnotatedElementUtils.EMPTY_ANNOTATION_ARRAY:[Ljava/lang/annotation/Annotation;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 element Ljava/lang/reflect/AnnotatedElement;
0 7 1 container Ljava/lang/annotation/Annotation;
1 4 2 value [Ljava/lang/annotation/Annotation;
5 6 2 ex Ljava/lang/Throwable;
Exception table:
from to target type
0 3 4 Class java.lang.Throwable
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/annotation/Annotation;)[TA;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
MethodParameters:
Name Flags
element
container
private static java.lang.Class<? extends java.lang.annotation.Annotation> resolveContainerType(java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.resolveContainerAnnotationType:(Ljava/lang/Class;)Ljava/lang/Class;
astore 1
start local 1 1: aload 1
ifnonnull 7
2: new java.lang.IllegalArgumentException
dup
3: new java.lang.StringBuilder
dup
ldc "Annotation type must be a repeatable annotation: failed to resolve container type for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals: java.lang.Class
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
1 8 1 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
MethodParameters:
Name Flags
annotationType
private static void validateContainerType(java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Class;Ljava/lang/Class;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ldc "value"
iconst_0
anewarray java.lang.Class
invokevirtual java.lang.Class.getDeclaredMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 2
start local 2 1: aload 2
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
astore 3
start local 3 2: aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 3
aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
aload 0
if_acmpeq 13
3: StackMap locals: java.lang.reflect.Method java.lang.Class
StackMap stack:
ldc "Container type [%s] must declare a 'value' attribute for an array of type [%s]"
iconst_2
anewarray java.lang.Object
dup
iconst_0
4: aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
5: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 4
start local 4 6: new org.springframework.core.annotation.AnnotationConfigurationException
dup
aload 4
invokespecial org.springframework.core.annotation.AnnotationConfigurationException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 2 7: StackMap locals: java.lang.Class java.lang.Class
StackMap stack: java.lang.Throwable
astore 2
start local 2 8: aload 2
invokestatic org.springframework.core.annotation.AnnotationUtils.rethrowAnnotationConfigurationException:(Ljava/lang/Throwable;)V
9: ldc "Invalid declaration of container type [%s] for repeatable annotation [%s]"
iconst_2
anewarray java.lang.Object
dup
iconst_0
10: aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
11: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 3
start local 3 12: new org.springframework.core.annotation.AnnotationConfigurationException
dup
aload 3
aload 2
invokespecial org.springframework.core.annotation.AnnotationConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 end local 2 13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
0 14 1 containerType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
1 7 2 method Ljava/lang/reflect/Method;
2 7 3 returnType Ljava/lang/Class<*>;
6 7 4 msg Ljava/lang/String;
8 13 2 ex Ljava/lang/Throwable;
12 13 3 msg Ljava/lang/String;
Exception table:
from to target type
0 7 7 Class java.lang.Throwable
Signature: (Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)V
MethodParameters:
Name Flags
annotationType
containerType
private static <A extends java.lang.annotation.Annotation> java.util.Set<A> postProcessAndSynthesizeAggregatedResults(java.lang.reflect.AnnotatedElement, java.util.List<org.springframework.core.annotation.AnnotationAttributes>);
descriptor: (Ljava/lang/reflect/AnnotatedElement;Ljava/util/List;)Ljava/util/Set;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 7
StackMap locals: java.lang.reflect.AnnotatedElement java.util.List java.util.Set top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.springframework.core.annotation.AnnotationAttributes
astore 3
start local 3 3: aload 0
aload 3
iconst_0
iconst_0
invokestatic org.springframework.core.annotation.AnnotationUtils.postProcessAnnotationAttributes:(Ljava/lang/Object;Lorg/springframework/core/annotation/AnnotationAttributes;ZZ)V
4: aload 3
invokevirtual org.springframework.core.annotation.AnnotationAttributes.annotationType:()Ljava/lang/Class;
astore 5
start local 5 5: aload 5
ifnull 7
6: aload 2
aload 3
aload 5
aload 0
invokestatic org.springframework.core.annotation.AnnotationUtils.synthesizeAnnotation:(Ljava/util/Map;Ljava/lang/Class;Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/annotation/Annotation;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 7: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
8: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 element Ljava/lang/reflect/AnnotatedElement;
0 9 1 aggregatedResults Ljava/util/List<Lorg/springframework/core/annotation/AnnotationAttributes;>;
1 9 2 annotations Ljava/util/Set<TA;>;
3 7 3 attributes Lorg/springframework/core/annotation/AnnotationAttributes;
5 7 5 annType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/reflect/AnnotatedElement;Ljava/util/List<Lorg/springframework/core/annotation/AnnotationAttributes;>;)Ljava/util/Set<TA;>;
MethodParameters:
Name Flags
element
aggregatedResults
}
SourceFile: "AnnotatedElementUtils.java"
NestMembers:
org.springframework.core.annotation.AnnotatedElementUtils$1 org.springframework.core.annotation.AnnotatedElementUtils$2 org.springframework.core.annotation.AnnotatedElementUtils$3 org.springframework.core.annotation.AnnotatedElementUtils$4 org.springframework.core.annotation.AnnotatedElementUtils$AlwaysTrueBooleanAnnotationProcessor org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor org.springframework.core.annotation.AnnotatedElementUtils$Processor org.springframework.core.annotation.AnnotatedElementUtils$SimpleAnnotationProcessor
InnerClasses:
org.springframework.core.annotation.AnnotatedElementUtils$1
org.springframework.core.annotation.AnnotatedElementUtils$2
org.springframework.core.annotation.AnnotatedElementUtils$3
org.springframework.core.annotation.AnnotatedElementUtils$4
AlwaysTrueBooleanAnnotationProcessor = org.springframework.core.annotation.AnnotatedElementUtils$AlwaysTrueBooleanAnnotationProcessor of org.springframework.core.annotation.AnnotatedElementUtils
private MergedAnnotationAttributesProcessor = org.springframework.core.annotation.AnnotatedElementUtils$MergedAnnotationAttributesProcessor of org.springframework.core.annotation.AnnotatedElementUtils
private abstract Processor = org.springframework.core.annotation.AnnotatedElementUtils$Processor of org.springframework.core.annotation.AnnotatedElementUtils
private abstract SimpleAnnotationProcessor = org.springframework.core.annotation.AnnotatedElementUtils$SimpleAnnotationProcessor of org.springframework.core.annotation.AnnotatedElementUtils