final class org.springframework.core.annotation.TypeMappedAnnotation<A extends java.lang.annotation.Annotation> extends org.springframework.core.annotation.AbstractMergedAnnotation<A>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.springframework.core.annotation.TypeMappedAnnotation
super_class: org.springframework.core.annotation.AbstractMergedAnnotation
{
private static final java.util.Map<java.lang.Class<?>, java.lang.Object> EMPTY_ARRAYS;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Object;>;
private final org.springframework.core.annotation.AnnotationTypeMapping mapping;
descriptor: Lorg/springframework/core/annotation/AnnotationTypeMapping;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.ClassLoader classLoader;
descriptor: Ljava/lang/ClassLoader;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private final java.lang.Object source;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private final java.lang.Object rootAttributes;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private final org.springframework.core.annotation.ValueExtractor ;
descriptor: Lorg/springframework/core/annotation/ValueExtractor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int aggregateIndex;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final boolean useMergedValues;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.function.Predicate<java.lang.String> attributeFilter;
descriptor: Ljava/util/function/Predicate;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/function/Predicate<Ljava/lang/String;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private final int[] resolvedRootMirrors;
descriptor: [I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int[] resolvedMirrors;
descriptor: [I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 0
start local 0 1: aload 0
getstatic java.lang.Boolean.TYPE:Ljava/lang/Class;
iconst_0
newarray 4
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 0
getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
iconst_0
newarray 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 0
getstatic java.lang.Character.TYPE:Ljava/lang/Class;
iconst_0
newarray 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 0
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
iconst_0
newarray 7
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 0
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
iconst_0
newarray 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 0
getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
iconst_0
newarray 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: aload 0
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
iconst_0
newarray 11
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 0
getstatic java.lang.Short.TYPE:Ljava/lang/Class;
iconst_0
newarray 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 0
ldc Ljava/lang/String;
iconst_0
anewarray java.lang.String
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 0
invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
putstatic org.springframework.core.annotation.TypeMappedAnnotation.EMPTY_ARRAYS:Ljava/util/Map;
end local 0 11: return
LocalVariableTable:
Start End Slot Name Signature
1 11 0 emptyArrays Ljava/util/Map<Ljava/lang/Class<*>;Ljava/lang/Object;>;
private void (org.springframework.core.annotation.AnnotationTypeMapping, java.lang.ClassLoader, java.lang.Object, java.lang.Object, org.springframework.core.annotation.ValueExtractor, int);
descriptor: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=7, 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 0
aload 1
aload 2
aload 3
aload 4
aload 5
iload 6
aconst_null
invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I[I)V
1: return
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 2 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 2 1 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
0 2 2 classLoader Ljava/lang/ClassLoader;
0 2 3 source Ljava/lang/Object;
0 2 4 rootAttributes Ljava/lang/Object;
0 2 5 valueExtractor Lorg/springframework/core/annotation/ValueExtractor;
0 2 6 aggregateIndex I
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
5:
MethodParameters:
Name Flags
mapping
classLoader
source
rootAttributes
valueExtractor
aggregateIndex
private void (org.springframework.core.annotation.AnnotationTypeMapping, java.lang.ClassLoader, java.lang.Object, java.lang.Object, org.springframework.core.annotation.ValueExtractor, int, int[]);
descriptor: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I[I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=8, 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 0
invokespecial org.springframework.core.annotation.AbstractMergedAnnotation.<init>:()V
1: aload 0
aload 1
putfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
2: aload 0
aload 2
putfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
3: aload 0
aload 3
putfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
4: aload 0
aload 4
putfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
5: aload 0
aload 5
putfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
6: aload 0
iload 6
putfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
7: aload 0
iconst_1
putfield org.springframework.core.annotation.TypeMappedAnnotation.useMergedValues:Z
8: aload 0
aconst_null
putfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
9: aload 0
aload 7
ifnull 10
aload 7
goto 11
10: StackMap locals: org.springframework.core.annotation.TypeMappedAnnotation org.springframework.core.annotation.AnnotationTypeMapping java.lang.ClassLoader java.lang.Object java.lang.Object org.springframework.core.annotation.ValueExtractor int int[]
StackMap stack: org.springframework.core.annotation.TypeMappedAnnotation
aload 1
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getRoot:()Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getMirrorSets:()Lorg/springframework/core/annotation/AnnotationTypeMapping$MirrorSets;
aload 3
aload 4
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping$MirrorSets.resolve:(Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;)[I
11: StackMap locals: org.springframework.core.annotation.TypeMappedAnnotation org.springframework.core.annotation.AnnotationTypeMapping java.lang.ClassLoader java.lang.Object java.lang.Object org.springframework.core.annotation.ValueExtractor int int[]
StackMap stack: org.springframework.core.annotation.TypeMappedAnnotation int[]
putfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
12: aload 0
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getDistance:()I
ifne 13
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
goto 14
13: StackMap locals:
StackMap stack: org.springframework.core.annotation.TypeMappedAnnotation
aload 1
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getMirrorSets:()Lorg/springframework/core/annotation/AnnotationTypeMapping$MirrorSets;
aload 3
aload 0
aload 0
invokedynamic extract(Lorg/springframework/core/annotation/TypeMappedAnnotation;)Lorg/springframework/core/annotation/ValueExtractor;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.getValueForMirrorResolution(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object; (7)
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping$MirrorSets.resolve:(Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;)[I
14: StackMap locals: org.springframework.core.annotation.TypeMappedAnnotation org.springframework.core.annotation.AnnotationTypeMapping java.lang.ClassLoader java.lang.Object java.lang.Object org.springframework.core.annotation.ValueExtractor int int[]
StackMap stack: org.springframework.core.annotation.TypeMappedAnnotation int[]
putfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedMirrors:[I
15: return
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 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 16 1 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
0 16 2 classLoader Ljava/lang/ClassLoader;
0 16 3 source Ljava/lang/Object;
0 16 4 rootAttributes Ljava/lang/Object;
0 16 5 valueExtractor Lorg/springframework/core/annotation/ValueExtractor;
0 16 6 aggregateIndex I
0 16 7 resolvedRootMirrors [I
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
5:
6:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
mapping
classLoader
source
rootAttributes
valueExtractor
aggregateIndex
resolvedRootMirrors
private void <init>(org.springframework.core.annotation.AnnotationTypeMapping, java.lang.ClassLoader, , , org.springframework.core.annotation.ValueExtractor, int, boolean, java.util.function.Predicate<java.lang.String>, int[], );
descriptor: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;IZLjava/util/function/Predicate;[I[I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=11, args_size=11
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 0: aload 0
invokespecial org.springframework.core.annotation.AbstractMergedAnnotation.<init>:()V
1: aload 0
aload 2
putfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
2: aload 0
aload 3
putfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
3: aload 0
aload 4
putfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
4: aload 0
aload 5
putfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
5: aload 0
aload 1
putfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
6: aload 0
iload 6
putfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
7: aload 0
iload 7
putfield org.springframework.core.annotation.TypeMappedAnnotation.useMergedValues:Z
8: aload 0
aload 8
putfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
9: aload 0
aload 9
putfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
10: aload 0
aload 10
putfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedMirrors:[I
11: return
end local 10 end local 9 end local 8 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 12 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 12 1 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
0 12 2 classLoader Ljava/lang/ClassLoader;
0 12 3 source Ljava/lang/Object;
0 12 4 rootAnnotation Ljava/lang/Object;
0 12 5 valueExtractor Lorg/springframework/core/annotation/ValueExtractor;
0 12 6 aggregateIndex I
0 12 7 useMergedValues Z
0 12 8 attributeFilter Ljava/util/function/Predicate<Ljava/lang/String;>;
0 12 9 resolvedRootMirrors [I
0 12 10 resolvedMirrors [I
Signature: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;IZLjava/util/function/Predicate<Ljava/lang/String;>;[I[I)V
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
4:
5:
6:
7:
org.springframework.lang.Nullable()
8:
9:
MethodParameters:
Name Flags
mapping
classLoader
source
rootAnnotation
valueExtractor
aggregateIndex
useMergedValues
attributeFilter
resolvedRootMirrors
resolvedMirrors
public java.lang.Class<A> getType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAnnotationType:()Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
Signature: ()Ljava/lang/Class<TA;>;
public java.util.List<java.lang.Class<? extends java.lang.annotation.Annotation>> getMetaTypes();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getMetaTypes:()Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
Signature: ()Ljava/util/List<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;>;
public boolean isPresent();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
public int getDistance();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getDistance:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
public int getAggregateIndex();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
public java.lang.Object getSource();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public org.springframework.core.annotation.MergedAnnotation<?> getMetaSource();
descriptor: ()Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=2, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getSource:()Lorg/springframework/core/annotation/AnnotationTypeMapping;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: org.springframework.core.annotation.AnnotationTypeMapping
StackMap stack:
new org.springframework.core.annotation.TypeMappedAnnotation
dup
aload 1
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
5: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I[I)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
1 6 1 metaSourceMapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
Signature: ()Lorg/springframework/core/annotation/MergedAnnotation<*>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public org.springframework.core.annotation.MergedAnnotation<?> getRoot();
descriptor: ()Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getDistance:()I
ifne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getRoot:()Lorg/springframework/core/annotation/AnnotationTypeMapping;
astore 1
start local 1 3: new org.springframework.core.annotation.TypeMappedAnnotation
dup
aload 1
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
5: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I[I)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
3 6 1 rootMapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
Signature: ()Lorg/springframework/core/annotation/MergedAnnotation<*>;
public boolean hasDefaultValue(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getAttributeIndex:(Ljava/lang/String;Z)I
istore 2
start local 2 1: aload 0
iload 2
iconst_1
iconst_0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValue:(IZZ)Ljava/lang/Object;
astore 3
start local 3 2: aload 3
ifnull 3
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
iload 2
aload 3
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.isEquivalentToDefaultValue:(ILjava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;)Z
ifne 3
iconst_0
ireturn
StackMap locals: int java.lang.Object
StackMap stack:
3: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 4 1 attributeName Ljava/lang/String;
1 4 2 attributeIndex I
2 4 3 value Ljava/lang/Object;
MethodParameters:
Name Flags
attributeName
public <T extends java.lang.annotation.Annotation> org.springframework.core.annotation.MergedAnnotation<T> getAnnotation(java.lang.String, java.lang.Class<T>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getAttributeIndex:(Ljava/lang/String;Z)I
istore 3
start local 3 1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
iload 3
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 4
start local 4 2: aload 2
ldc "Type must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
3: aload 2
aload 4
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
4: aload 1
invokedynamic get(Ljava/lang/String;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.lambda$1(Ljava/lang/String;)Ljava/lang/String; (6)
()Ljava/lang/String;
5: invokestatic org.springframework.util.Assert.isAssignable:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Supplier;)V
6: aload 0
iload 3
aload 1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getRequiredValue:(ILjava/lang/String;)Ljava/lang/Object;
checkcast org.springframework.core.annotation.MergedAnnotation
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 7 1 attributeName Ljava/lang/String;
0 7 2 type Ljava/lang/Class<TT;>;
1 7 3 attributeIndex I
2 7 4 attribute Ljava/lang/reflect/Method;
Exceptions:
throws java.util.NoSuchElementException
Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)Lorg/springframework/core/annotation/MergedAnnotation<TT;>;
MethodParameters:
Name Flags
attributeName
type
public <T extends java.lang.annotation.Annotation> org.springframework.core.annotation.MergedAnnotation<T>[] getAnnotationArray(java.lang.String, java.lang.Class<T>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)[Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getAttributeIndex:(Ljava/lang/String;Z)I
istore 3
start local 3 1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
iload 3
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 4
start local 4 2: aload 4
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
astore 5
start local 5 3: aload 2
ldc "Type must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
4: aload 5
aload 1
invokedynamic get(Ljava/lang/String;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.lambda$2(Ljava/lang/String;)Ljava/lang/String; (6)
()Ljava/lang/String;
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/util/function/Supplier;)V
5: aload 2
aload 5
aload 1
invokedynamic get(Ljava/lang/String;)Ljava/util/function/Supplier;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.lambda$3(Ljava/lang/String;)Ljava/lang/String; (6)
()Ljava/lang/String;
invokestatic org.springframework.util.Assert.isAssignable:(Ljava/lang/Class;Ljava/lang/Class;Ljava/util/function/Supplier;)V
6: aload 0
iload 3
aload 1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getRequiredValue:(ILjava/lang/String;)Ljava/lang/Object;
checkcast org.springframework.core.annotation.MergedAnnotation[]
areturn
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 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 7 1 attributeName Ljava/lang/String;
0 7 2 type Ljava/lang/Class<TT;>;
1 7 3 attributeIndex I
2 7 4 attribute Ljava/lang/reflect/Method;
3 7 5 componentType Ljava/lang/Class<*>;
Exceptions:
throws java.util.NoSuchElementException
Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)[Lorg/springframework/core/annotation/MergedAnnotation<TT;>;
MethodParameters:
Name Flags
attributeName
type
public <T> java.util.Optional<T> getDefaultValue(java.lang.String, java.lang.Class<T>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)Ljava/util/Optional;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getAttributeIndex:(Ljava/lang/String;Z)I
istore 3
start local 3 1: iload 3
iconst_m1
if_icmpne 3
2: invokestatic java.util.Optional.empty:()Ljava/util/Optional;
areturn
3: StackMap locals: int
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
iload 3
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 4
start local 4 4: aload 0
aload 4
aload 4
invokevirtual java.lang.reflect.Method.getDefaultValue:()Ljava/lang/Object;
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adapt:(Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
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 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 5 1 attributeName Ljava/lang/String;
0 5 2 type Ljava/lang/Class<TT;>;
1 5 3 attributeIndex I
4 5 4 attribute Ljava/lang/reflect/Method;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)Ljava/util/Optional<TT;>;
MethodParameters:
Name Flags
attributeName
type
public org.springframework.core.annotation.MergedAnnotation<A> filterAttributes(java.util.function.Predicate<java.lang.String>);
descriptor: (Ljava/util/function/Predicate;)Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
ifnull 2
1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
aload 1
invokeinterface java.util.function.Predicate.and:(Ljava/util/function/Predicate;)Ljava/util/function/Predicate;
astore 1
2: StackMap locals:
StackMap stack:
new org.springframework.core.annotation.TypeMappedAnnotation
dup
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
3: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.useMergedValues:Z
aload 1
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedMirrors:[I
5: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;IZLjava/util/function/Predicate;[I[I)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 6 1 predicate Ljava/util/function/Predicate<Ljava/lang/String;>;
Signature: (Ljava/util/function/Predicate<Ljava/lang/String;>;)Lorg/springframework/core/annotation/MergedAnnotation<TA;>;
MethodParameters:
Name Flags
predicate
public org.springframework.core.annotation.MergedAnnotation<A> withNonMergedAttributes();
descriptor: ()Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=1, args_size=1
start local 0 0: new org.springframework.core.annotation.TypeMappedAnnotation
dup
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
iconst_0
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
2: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedMirrors:[I
3: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;IZLjava/util/function/Predicate;[I[I)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
Signature: ()Lorg/springframework/core/annotation/MergedAnnotation<TA;>;
public java.util.Map<java.lang.String, java.lang.Object> asMap(org.springframework.core.annotation.MergedAnnotation$Adapt[]);
descriptor: ([Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/util/Map;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.lambda$4(Lorg/springframework/core/annotation/MergedAnnotation;)Ljava/util/LinkedHashMap; (6)
(Lorg/springframework/core/annotation/MergedAnnotation;)Ljava/util/LinkedHashMap;
aload 1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.asMap:(Ljava/util/function/Function;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/util/Map;
invokestatic java.util.Collections.unmodifiableMap:(Ljava/util/Map;)Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 1 1 adaptations [Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
Signature: ([Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
MethodParameters:
Name Flags
adaptations
public <T extends java.util.Map<java.lang.String, java.lang.Object>> T asMap(java.util.function.Function<org.springframework.core.annotation.MergedAnnotation<?>, T>, org.springframework.core.annotation.MergedAnnotation$Adapt[]);
descriptor: (Ljava/util/function/Function;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/util/Map;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=8, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Map
astore 3
start local 3 1: aload 3
ifnull 2
iconst_1
goto 3
StackMap locals: java.util.Map
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: ldc "Factory used to create MergedAnnotation Map must not return null"
invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 16
7: StackMap locals: org.springframework.core.annotation.AttributeMethods int
StackMap stack:
aload 4
iload 5
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 6
start local 6 8: aload 0
aload 6
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.isFiltered:(Ljava/lang/String;)Z
ifeq 9
aconst_null
goto 10
9: StackMap locals: java.lang.reflect.Method
StackMap stack:
aload 0
iload 5
aload 0
aload 6
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getTypeForMapOptions:(Ljava/lang/reflect/Method;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/lang/Class;
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValue:(ILjava/lang/Class;)Ljava/lang/Object;
10: StackMap locals:
StackMap stack: java.lang.Object
astore 7
start local 7 11: aload 7
ifnull 15
12: aload 3
aload 6
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
13: aload 0
aload 6
aload 7
aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 1
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adaptValueForMapOptions:(Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class;Ljava/util/function/Function;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/lang/Object;
14: invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 6 15: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
aload 4
invokevirtual org.springframework.core.annotation.AttributeMethods.size:()I
if_icmplt 7
end local 5 17: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 18 1 factory Ljava/util/function/Function<Lorg/springframework/core/annotation/MergedAnnotation<*>;TT;>;
0 18 2 adaptations [Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
1 18 3 map TT;
5 18 4 attributes Lorg/springframework/core/annotation/AttributeMethods;
6 17 5 i I
8 15 6 attribute Ljava/lang/reflect/Method;
11 15 7 value Ljava/lang/Object;
Signature: <T::Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;>(Ljava/util/function/Function<Lorg/springframework/core/annotation/MergedAnnotation<*>;TT;>;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)TT;
MethodParameters:
Name Flags
factory
adaptations
private java.lang.Class<?> getTypeForMapOptions(java.lang.reflect.Method, org.springframework.core.annotation.MergedAnnotation$Adapt[]);
descriptor: (Ljava/lang/reflect/Method;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
astore 3
start local 3 1: aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 2
aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
goto 3
StackMap locals: java.lang.Class
StackMap stack:
2: aload 3
StackMap locals:
StackMap stack: java.lang.Class
3: astore 4
start local 4 4: getstatic org.springframework.core.annotation.MergedAnnotation$Adapt.CLASS_TO_STRING:Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
aload 2
invokevirtual org.springframework.core.annotation.MergedAnnotation$Adapt.isIn:([Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Z
ifeq 8
aload 4
ldc Ljava/lang/Class;
if_acmpne 8
5: aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 6
ldc [Ljava/lang/String;
goto 7
StackMap locals: java.lang.Class
StackMap stack:
6: ldc Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.Class
7: areturn
8: StackMap locals:
StackMap stack:
ldc Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 9 1 attribute Ljava/lang/reflect/Method;
0 9 2 adaptations [Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
1 9 3 attributeType Ljava/lang/Class<*>;
4 9 4 componentType Ljava/lang/Class<*>;
Signature: (Ljava/lang/reflect/Method;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
attribute
adaptations
private <T extends java.util.Map<java.lang.String, java.lang.Object>> adaptValueForMapOptions(java.lang.reflect.Method, , java.lang.Class<?>, java.util.function.Function<org.springframework.core.annotation.MergedAnnotation<?>, T>, org.springframework.core.annotation.MergedAnnotation$Adapt[]);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class;Ljava/util/function/Function;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 2
instanceof org.springframework.core.annotation.MergedAnnotation
ifeq 6
1: aload 2
checkcast org.springframework.core.annotation.MergedAnnotation
astore 6
start local 6 2: getstatic org.springframework.core.annotation.MergedAnnotation$Adapt.ANNOTATION_TO_MAP:Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
aload 5
invokevirtual org.springframework.core.annotation.MergedAnnotation$Adapt.isIn:([Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Z
ifeq 4
3: aload 6
aload 4
aload 5
invokeinterface org.springframework.core.annotation.MergedAnnotation.asMap:(Ljava/util/function/Function;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/util/Map;
goto 5
StackMap locals: org.springframework.core.annotation.MergedAnnotation
StackMap stack:
4: aload 6
invokeinterface org.springframework.core.annotation.MergedAnnotation.synthesize:()Ljava/lang/annotation/Annotation;
5: StackMap locals:
StackMap stack: java.lang.Object
areturn
end local 6 6: StackMap locals:
StackMap stack:
aload 2
instanceof org.springframework.core.annotation.MergedAnnotation[]
ifeq 24
7: aload 2
checkcast org.springframework.core.annotation.MergedAnnotation[]
astore 6
start local 6 8: getstatic org.springframework.core.annotation.MergedAnnotation$Adapt.ANNOTATION_TO_MAP:Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
aload 5
invokevirtual org.springframework.core.annotation.MergedAnnotation$Adapt.isIn:([Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Z
ifeq 16
9: aload 3
aload 6
arraylength
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
astore 7
start local 7 10: iconst_0
istore 8
start local 8 11: goto 14
12: StackMap locals: org.springframework.core.annotation.MergedAnnotation[] java.lang.Object int
StackMap stack:
aload 7
iload 8
aload 6
iload 8
aaload
aload 4
aload 5
invokeinterface org.springframework.core.annotation.MergedAnnotation.asMap:(Ljava/util/function/Function;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/util/Map;
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
13: iinc 8 1
StackMap locals:
StackMap stack:
14: iload 8
aload 6
arraylength
if_icmplt 12
end local 8 15: aload 7
areturn
end local 7 16: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
aload 6
arraylength
17: invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
astore 7
start local 7 18: iconst_0
istore 8
start local 8 19: goto 22
20: StackMap locals: java.lang.Object int
StackMap stack:
aload 7
iload 8
aload 6
iload 8
aaload
invokeinterface org.springframework.core.annotation.MergedAnnotation.synthesize:()Ljava/lang/annotation/Annotation;
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
21: iinc 8 1
StackMap locals:
StackMap stack:
22: iload 8
aload 6
arraylength
if_icmplt 20
end local 8 23: aload 7
areturn
end local 7 end local 6 24: StackMap locals:
StackMap stack:
aload 2
areturn
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 25 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 25 1 attribute Ljava/lang/reflect/Method;
0 25 2 value Ljava/lang/Object;
0 25 3 mapType Ljava/lang/Class<*>;
0 25 4 factory Ljava/util/function/Function<Lorg/springframework/core/annotation/MergedAnnotation<*>;TT;>;
0 25 5 adaptations [Lorg/springframework/core/annotation/MergedAnnotation$Adapt;
2 6 6 annotation Lorg/springframework/core/annotation/MergedAnnotation<*>;
8 24 6 annotations [Lorg/springframework/core/annotation/MergedAnnotation;
10 16 7 result Ljava/lang/Object;
11 15 8 i I
18 24 7 result Ljava/lang/Object;
19 23 8 i I
Signature: <T::Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;>(Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class<*>;Ljava/util/function/Function<Lorg/springframework/core/annotation/MergedAnnotation<*>;TT;>;[Lorg/springframework/core/annotation/MergedAnnotation$Adapt;)Ljava/lang/Object;
MethodParameters:
Name Flags
attribute
value
mapType
factory
adaptations
protected A createSynthesized();
descriptor: ()Ljava/lang/annotation/Annotation;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getType:()Ljava/lang/Class;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifeq 2
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.isSynthesizable:()Z
ifne 2
1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
checkcast java.lang.annotation.Annotation
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getType:()Ljava/lang/Class;
invokestatic org.springframework.core.annotation.SynthesizedMergedAnnotationInvocationHandler.createProxy:(Lorg/springframework/core/annotation/MergedAnnotation;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
Signature: ()TA;
private boolean isSynthesizable();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
instanceof org.springframework.core.annotation.SynthesizedAnnotation
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.isSynthesizable:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
protected <T> T getAttributeValue(java.lang.String, java.lang.Class<T>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getAttributeIndex:(Ljava/lang/String;Z)I
istore 3
start local 3 1: iload 3
iconst_m1
if_icmpeq 2
aload 0
iload 3
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValue:(ILjava/lang/Class;)Ljava/lang/Object;
goto 3
StackMap locals: int
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 4 1 attributeName Ljava/lang/String;
0 4 2 type Ljava/lang/Class<TT;>;
1 4 3 attributeIndex I
Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
attributeName
type
private java.lang.Object getRequiredValue(int, java.lang.String);
descriptor: (ILjava/lang/String;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
ldc Ljava/lang/Object;
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValue:(ILjava/lang/Class;)Ljava/lang/Object;
astore 3
start local 3 1: aload 3
ifnonnull 5
2: new java.util.NoSuchElementException
dup
new java.lang.StringBuilder
dup
ldc "No element at attribute index "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " for name "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.util.NoSuchElementException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: java.lang.Object
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 6 1 attributeIndex I
0 6 2 attributeName Ljava/lang/String;
1 6 3 value Ljava/lang/Object;
MethodParameters:
Name Flags
attributeIndex
attributeName
private <T> T getValue(int, java.lang.Class<T>);
descriptor: (ILjava/lang/Class;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
iload 1
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 3
start local 3 1: aload 0
iload 1
iconst_1
iconst_0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValue:(IZZ)Ljava/lang/Object;
astore 4
start local 4 2: aload 4
ifnonnull 4
3: aload 3
invokevirtual java.lang.reflect.Method.getDefaultValue:()Ljava/lang/Object;
astore 4
4: StackMap locals: java.lang.reflect.Method java.lang.Object
StackMap stack:
aload 0
aload 3
aload 4
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adapt:(Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
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 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 5 1 attributeIndex I
0 5 2 type Ljava/lang/Class<TT;>;
1 5 3 attribute Ljava/lang/reflect/Method;
2 5 4 value Ljava/lang/Object;
Signature: <T:Ljava/lang/Object;>(ILjava/lang/Class<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
attributeIndex
type
private java.lang.Object getValue(int, boolean, boolean);
descriptor: (IZZ)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
astore 4
start local 4 1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.useMergedValues:Z
ifeq 8
2: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
iload 1
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAliasMapping:(I)I
istore 5
start local 5 3: iload 5
iconst_m1
if_icmpne 5
iload 2
ifeq 5
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
iload 1
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getConventionMapping:(I)I
istore 5
5: StackMap locals: org.springframework.core.annotation.AnnotationTypeMapping int
StackMap stack:
iload 5
iconst_m1
if_icmpeq 8
6: aload 4
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getRoot:()Lorg/springframework/core/annotation/AnnotationTypeMapping;
astore 4
7: iload 5
istore 1
end local 5 8: StackMap locals:
StackMap stack:
iload 3
ifne 13
9: aload 4
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getDistance:()I
ifeq 10
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedMirrors:[I
goto 11
StackMap locals:
StackMap stack:
10: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.resolvedRootMirrors:[I
StackMap locals:
StackMap stack: int[]
11: iload 1
iaload
12: istore 1
13: StackMap locals:
StackMap stack:
iload 1
iconst_m1
if_icmpne 15
14: aconst_null
areturn
15: StackMap locals:
StackMap stack:
aload 4
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getDistance:()I
ifne 21
16: aload 4
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
iload 1
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 5
start local 5 17: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
aload 5
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
invokeinterface org.springframework.core.annotation.ValueExtractor.extract:(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
astore 6
start local 6 18: aload 6
ifnull 19
aload 6
goto 20
StackMap locals: java.lang.reflect.Method java.lang.Object
StackMap stack:
19: aload 5
invokevirtual java.lang.reflect.Method.getDefaultValue:()Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
20: areturn
end local 6 end local 5 21: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 3
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValueFromMetaAnnotation:(IZ)Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 22 1 attributeIndex I
0 22 2 useConventionMapping Z
0 22 3 forMirrorResolution Z
1 22 4 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
3 8 5 mappedIndex I
17 21 5 attribute Ljava/lang/reflect/Method;
18 21 6 result Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
attributeIndex
useConventionMapping
forMirrorResolution
private java.lang.Object getValueFromMetaAnnotation(int, boolean);
descriptor: (IZ)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.useMergedValues:Z
ifne 2
iload 2
ifeq 3
2: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
iload 1
iload 2
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getMappedAnnotationValue:(IZ)Ljava/lang/Object;
astore 3
3: StackMap locals:
StackMap stack:
aload 3
ifnonnull 6
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
iload 1
invokevirtual org.springframework.core.annotation.AttributeMethods.get:(I)Ljava/lang/reflect/Method;
astore 4
start local 4 5: aload 4
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAnnotation:()Ljava/lang/annotation/Annotation;
invokestatic org.springframework.util.ReflectionUtils.invokeMethod:(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
astore 3
end local 4 6: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 7 1 attributeIndex I
0 7 2 forMirrorResolution Z
1 7 3 value Ljava/lang/Object;
5 6 4 attribute Ljava/lang/reflect/Method;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
attributeIndex
forMirrorResolution
private java.lang.Object getValueForMirrorResolution(java.lang.reflect.Method, java.lang.Object);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
aload 1
invokevirtual org.springframework.core.annotation.AttributeMethods.indexOf:(Ljava/lang/reflect/Method;)I
istore 3
start local 3 1: ldc "value"
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
istore 4
start local 4 2: aload 0
iload 3
iload 4
ifeq 3
iconst_0
goto 4
StackMap locals: org.springframework.core.annotation.TypeMappedAnnotation java.lang.reflect.Method java.lang.Object int int
StackMap stack: org.springframework.core.annotation.TypeMappedAnnotation int
3: iconst_1
StackMap locals: org.springframework.core.annotation.TypeMappedAnnotation java.lang.reflect.Method java.lang.Object int int
StackMap stack: org.springframework.core.annotation.TypeMappedAnnotation int int
4: iconst_1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValue:(IZZ)Ljava/lang/Object;
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 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 5 1 attribute Ljava/lang/reflect/Method;
0 5 2 annotation Ljava/lang/Object;
1 5 3 attributeIndex I
2 5 4 valueAttribute Z
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
attribute
annotation
private <T> T adapt(java.lang.reflect.Method, , java.lang.Class<T>);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adaptForAttribute:(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
astore 2
3: aload 0
aload 1
aload 3
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getAdaptType:(Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/Class;
astore 3
4: aload 2
instanceof java.lang.Class
ifeq 7
aload 3
ldc Ljava/lang/String;
if_acmpne 7
5: aload 2
checkcast java.lang.Class
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 2
6: goto 43
7: StackMap locals:
StackMap stack:
aload 2
instanceof java.lang.String
ifeq 10
aload 3
ldc Ljava/lang/Class;
if_acmpne 10
8: aload 2
checkcast java.lang.String
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic org.springframework.util.ClassUtils.resolveClassName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
astore 2
9: goto 43
10: StackMap locals:
StackMap stack:
aload 2
instanceof java.lang.Class[]
ifeq 20
aload 3
ldc [Ljava/lang/String;
if_acmpne 20
11: aload 2
checkcast java.lang.Class[]
astore 4
start local 4 12: aload 4
arraylength
anewarray java.lang.String
astore 5
start local 5 13: iconst_0
istore 6
start local 6 14: goto 17
15: StackMap locals: java.lang.Class[] java.lang.String[] int
StackMap stack:
aload 5
iload 6
aload 4
iload 6
aaload
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aastore
16: iinc 6 1
StackMap locals:
StackMap stack:
17: iload 6
aload 4
arraylength
if_icmplt 15
end local 6 18: aload 5
astore 2
end local 5 end local 4 19: goto 43
20: StackMap locals:
StackMap stack:
aload 2
instanceof java.lang.String[]
ifeq 30
aload 3
ldc [Ljava/lang/Class;
if_acmpne 30
21: aload 2
checkcast java.lang.String[]
astore 4
start local 4 22: aload 4
arraylength
anewarray java.lang.Class
astore 5
start local 5 23: iconst_0
istore 6
start local 6 24: goto 27
25: StackMap locals: java.lang.String[] java.lang.Class[] int
StackMap stack:
aload 5
iload 6
aload 4
iload 6
aaload
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic org.springframework.util.ClassUtils.resolveClassName:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Class;
aastore
26: iinc 6 1
StackMap locals:
StackMap stack:
27: iload 6
aload 4
arraylength
if_icmplt 25
end local 6 28: aload 5
astore 2
end local 5 end local 4 29: goto 43
30: StackMap locals:
StackMap stack:
aload 2
instanceof org.springframework.core.annotation.MergedAnnotation
ifeq 34
aload 3
invokevirtual java.lang.Class.isAnnotation:()Z
ifeq 34
31: aload 2
checkcast org.springframework.core.annotation.MergedAnnotation
astore 4
start local 4 32: aload 4
invokeinterface org.springframework.core.annotation.MergedAnnotation.synthesize:()Ljava/lang/annotation/Annotation;
astore 2
end local 4 33: goto 43
34: StackMap locals:
StackMap stack:
aload 2
instanceof org.springframework.core.annotation.MergedAnnotation[]
ifeq 43
aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 43
aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAnnotation:()Z
ifeq 43
35: aload 2
checkcast org.springframework.core.annotation.MergedAnnotation[]
astore 4
start local 4 36: aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
aload 4
arraylength
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
astore 5
start local 5 37: iconst_0
istore 6
start local 6 38: goto 41
39: StackMap locals: org.springframework.core.annotation.MergedAnnotation[] java.lang.Object int
StackMap stack:
aload 5
iload 6
aload 4
iload 6
aaload
invokeinterface org.springframework.core.annotation.MergedAnnotation.synthesize:()Ljava/lang/annotation/Annotation;
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
40: iinc 6 1
StackMap locals:
StackMap stack:
41: iload 6
aload 4
arraylength
if_icmplt 39
end local 6 42: aload 5
astore 2
end local 5 end local 4 43: StackMap locals:
StackMap stack:
aload 3
aload 2
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifne 47
44: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Unable to adapt value of type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
45: aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
46: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
47: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 48 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 48 1 attribute Ljava/lang/reflect/Method;
0 48 2 value Ljava/lang/Object;
0 48 3 type Ljava/lang/Class<TT;>;
12 19 4 classes [Ljava/lang/Class;
13 19 5 names [Ljava/lang/String;
14 18 6 i I
22 29 4 names [Ljava/lang/String;
23 29 5 classes [Ljava/lang/Class;
24 28 6 i I
32 33 4 annotation Lorg/springframework/core/annotation/MergedAnnotation<*>;
36 43 4 annotations [Lorg/springframework/core/annotation/MergedAnnotation;
37 43 5 array Ljava/lang/Object;
38 42 6 i I
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/Method;Ljava/lang/Object;Ljava/lang/Class<TT;>;)TT;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
MethodParameters:
Name Flags
attribute
value
type
private java.lang.Object adaptForAttribute(java.lang.reflect.Method, java.lang.Object);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
invokestatic org.springframework.util.ClassUtils.resolvePrimitiveIfNecessary:(Ljava/lang/Class;)Ljava/lang/Class;
astore 3
start local 3 1: aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 5
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isArray:()Z
ifne 5
2: aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
iconst_1
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
astore 4
start local 4 3: aload 4
iconst_0
aload 2
invokestatic java.lang.reflect.Array.set:(Ljava/lang/Object;ILjava/lang/Object;)V
4: aload 0
aload 1
aload 4
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adaptForAttribute:(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 4 5: StackMap locals: java.lang.Class
StackMap stack:
aload 3
invokevirtual java.lang.Class.isAnnotation:()Z
ifeq 7
6: aload 0
aload 2
aload 3
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adaptToMergedAnnotation:(Ljava/lang/Object;Ljava/lang/Class;)Lorg/springframework/core/annotation/MergedAnnotation;
areturn
7: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 17
aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAnnotation:()Z
ifeq 17
8: aload 2
invokestatic java.lang.reflect.Array.getLength:(Ljava/lang/Object;)I
anewarray org.springframework.core.annotation.MergedAnnotation
astore 4
start local 4 9: iconst_0
istore 5
start local 5 10: goto 15
11: StackMap locals: org.springframework.core.annotation.MergedAnnotation[] int
StackMap stack:
aload 4
iload 5
aload 0
aload 2
iload 5
invokestatic java.lang.reflect.Array.get:(Ljava/lang/Object;I)Ljava/lang/Object;
12: aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
13: invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.adaptToMergedAnnotation:(Ljava/lang/Object;Ljava/lang/Class;)Lorg/springframework/core/annotation/MergedAnnotation;
aastore
14: iinc 5 1
StackMap locals:
StackMap stack:
15: iload 5
aload 4
arraylength
if_icmplt 11
end local 5 16: aload 4
areturn
end local 4 17: StackMap locals:
StackMap stack:
aload 3
ldc Ljava/lang/Class;
if_acmpne 18
aload 2
instanceof java.lang.String
ifne 21
18: StackMap locals:
StackMap stack:
aload 3
ldc [Ljava/lang/Class;
if_acmpne 19
aload 2
instanceof java.lang.String[]
ifne 21
19: StackMap locals:
StackMap stack:
aload 3
ldc Ljava/lang/String;
if_acmpne 20
aload 2
instanceof java.lang.Class
ifne 21
20: StackMap locals:
StackMap stack:
aload 3
ldc [Ljava/lang/String;
if_acmpne 22
aload 2
instanceof java.lang.Class[]
ifeq 22
21: StackMap locals:
StackMap stack:
aload 2
areturn
22: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 24
aload 0
aload 2
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.isEmptyObjectArray:(Ljava/lang/Object;)Z
ifeq 24
23: aload 0
aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.emptyArray:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
24: StackMap locals:
StackMap stack:
aload 3
aload 2
invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
ifne 30
25: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Attribute '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: ldc "' in annotation "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " should be compatible with "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: aload 3
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " but a "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
28: ldc " value was returned"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
29: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
30: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 31 1 attribute Ljava/lang/reflect/Method;
0 31 2 value Ljava/lang/Object;
1 31 3 attributeType Ljava/lang/Class<*>;
3 5 4 array Ljava/lang/Object;
9 17 4 result [Lorg/springframework/core/annotation/MergedAnnotation;
10 16 5 i I
MethodParameters:
Name Flags
attribute
value
private boolean isEmptyObjectArray(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.Object[]
ifeq 1
aload 1
checkcast java.lang.Object[]
arraylength
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 2 1 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
private emptyArray(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.springframework.core.annotation.TypeMappedAnnotation.EMPTY_ARRAYS:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 1: aload 2
ifnonnull 3
2: aload 1
iconst_0
invokestatic java.lang.reflect.Array.newInstance:(Ljava/lang/Class;I)Ljava/lang/Object;
astore 2
3: StackMap locals: java.lang.Object
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 4 1 componentType Ljava/lang/Class<*>;
1 4 2 result Ljava/lang/Object;
Signature: (Ljava/lang/Class<*>;)Ljava/lang/Object;
MethodParameters:
Name Flags
componentType
private org.springframework.core.annotation.MergedAnnotation<?> adaptToMergedAnnotation(, java.lang.Class<? extends java.lang.annotation.Annotation>);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof org.springframework.core.annotation.MergedAnnotation
ifeq 2
1: aload 1
checkcast org.springframework.core.annotation.MergedAnnotation
areturn
2: StackMap locals:
StackMap stack:
aload 2
invokestatic org.springframework.core.annotation.AnnotationTypeMappings.forAnnotationType:(Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationTypeMappings;
iconst_0
invokevirtual org.springframework.core.annotation.AnnotationTypeMappings.get:(I)Lorg/springframework/core/annotation/AnnotationTypeMapping;
astore 3
start local 3 3: new org.springframework.core.annotation.TypeMappedAnnotation
dup
4: aload 3
aconst_null
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
aload 1
aload 0
aload 1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getValueExtractor:(Ljava/lang/Object;)Lorg/springframework/core/annotation/ValueExtractor;
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
5: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 6 1 value Ljava/lang/Object;
0 6 2 annotationType Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;
3 6 3 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
Signature: (Ljava/lang/Object;Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;)Lorg/springframework/core/annotation/MergedAnnotation<*>;
MethodParameters:
Name Flags
value
annotationType
private org.springframework.core.annotation.ValueExtractor (java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/springframework/core/annotation/ValueExtractor;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.annotation.Annotation
ifeq 2
1: invokedynamic extract()Lorg/springframework/core/annotation/ValueExtractor;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/util/ReflectionUtils.invokeMethod(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object; (6)
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
areturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof java.util.Map
ifeq 4
3: invokedynamic extract()Lorg/springframework/core/annotation/ValueExtractor;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.extractFromMap(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object; (6)
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 5 1 value Ljava/lang/Object;
MethodParameters:
Name Flags
value
private <T> java.lang.Class<T> getAdaptType(java.lang.reflect.Method, java.lang.Class<T>);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ldc Ljava/lang/Object;
if_acmpeq 2
1: aload 2
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
astore 3
start local 3 3: aload 3
invokevirtual java.lang.Class.isAnnotation:()Z
ifeq 5
4: ldc Lorg/springframework/core/annotation/MergedAnnotation;
areturn
5: StackMap locals: java.lang.Class
StackMap stack:
aload 3
invokevirtual java.lang.Class.isArray:()Z
ifeq 7
aload 3
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAnnotation:()Z
ifeq 7
6: ldc [Lorg/springframework/core/annotation/MergedAnnotation;
areturn
7: StackMap locals:
StackMap stack:
aload 3
invokestatic org.springframework.util.ClassUtils.resolvePrimitiveIfNecessary:(Ljava/lang/Class;)Ljava/lang/Class;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 8 1 attribute Ljava/lang/reflect/Method;
0 8 2 type Ljava/lang/Class<TT;>;
3 8 3 attributeType Ljava/lang/Class<*>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/reflect/Method;Ljava/lang/Class<TT;>;)Ljava/lang/Class<TT;>;
MethodParameters:
Name Flags
attribute
type
private int getAttributeIndex(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "Attribute name must not be null"
invokestatic org.springframework.util.Assert.hasText:(Ljava/lang/String;Ljava/lang/String;)V
1: aload 0
aload 1
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.isFiltered:(Ljava/lang/String;)Z
ifeq 2
iconst_m1
goto 3
StackMap locals:
StackMap stack:
2: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.mapping:Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAttributes:()Lorg/springframework/core/annotation/AttributeMethods;
aload 1
invokevirtual org.springframework.core.annotation.AttributeMethods.indexOf:(Ljava/lang/String;)I
StackMap locals:
StackMap stack: int
3: istore 3
start local 3 4: iload 3
iconst_m1
if_icmpne 8
iload 2
ifeq 8
5: new java.util.NoSuchElementException
dup
new java.lang.StringBuilder
dup
ldc "No attribute named '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "' present in merged annotation "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.springframework.core.annotation.TypeMappedAnnotation.getType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokespecial java.util.NoSuchElementException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: int
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 9 1 attributeName Ljava/lang/String;
0 9 2 required Z
4 9 3 attributeIndex I
MethodParameters:
Name Flags
attributeName
required
private boolean isFiltered(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
ifnull 4
1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.attributeFilter:Ljava/util/function/Predicate;
aload 1
invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
ifeq 2
iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
0 5 1 attributeName Ljava/lang/String;
MethodParameters:
Name Flags
attributeName
private java.lang.ClassLoader getClassLoader();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
ifnull 2
1: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.classLoader:Ljava/lang/ClassLoader;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
ifnull 7
3: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
instanceof java.lang.Class
ifeq 5
4: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
checkcast java.lang.Class
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
instanceof java.lang.reflect.Member
ifeq 7
6: aload 0
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
checkcast java.lang.reflect.Member
invokeinterface java.lang.reflect.Member.getDeclaringClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
pop
7: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
static <A extends java.lang.annotation.Annotation> org.springframework.core.annotation.MergedAnnotation<A> from(, A);
descriptor: (Ljava/lang/Object;Ljava/lang/annotation/Annotation;)Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "Annotation must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 1
invokeinterface java.lang.annotation.Annotation.annotationType:()Ljava/lang/Class;
invokestatic org.springframework.core.annotation.AnnotationTypeMappings.forAnnotationType:(Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationTypeMappings;
astore 2
start local 2 2: new org.springframework.core.annotation.TypeMappedAnnotation
dup
aload 2
iconst_0
invokevirtual org.springframework.core.annotation.AnnotationTypeMappings.get:(I)Lorg/springframework/core/annotation/AnnotationTypeMapping;
aconst_null
aload 0
aload 1
invokedynamic extract()Lorg/springframework/core/annotation/ValueExtractor;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/util/ReflectionUtils.invokeMethod(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object; (6)
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
iconst_0
invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 source Ljava/lang/Object;
0 3 1 annotation TA;
2 3 2 mappings Lorg/springframework/core/annotation/AnnotationTypeMappings;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/Object;TA;)Lorg/springframework/core/annotation/MergedAnnotation<TA;>;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
MethodParameters:
Name Flags
source
annotation
static <A extends java.lang.annotation.Annotation> org.springframework.core.annotation.MergedAnnotation<A> of(java.lang.ClassLoader, , java.lang.Class<A>, java.util.Map<java.lang.String, ?>);
descriptor: (Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Class;Ljava/util/Map;)Lorg/springframework/core/annotation/MergedAnnotation;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ldc "Annotation type must not be null"
invokestatic org.springframework.util.Assert.notNull:(Ljava/lang/Object;Ljava/lang/String;)V
1: aload 2
invokestatic org.springframework.core.annotation.AnnotationTypeMappings.forAnnotationType:(Ljava/lang/Class;)Lorg/springframework/core/annotation/AnnotationTypeMappings;
astore 4
start local 4 2: new org.springframework.core.annotation.TypeMappedAnnotation
dup
3: aload 4
iconst_0
invokevirtual org.springframework.core.annotation.AnnotationTypeMappings.get:(I)Lorg/springframework/core/annotation/AnnotationTypeMapping;
aload 0
aload 1
aload 3
invokedynamic extract()Lorg/springframework/core/annotation/ValueExtractor;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/core/annotation/TypeMappedAnnotation.extractFromMap(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object; (6)
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
iconst_0
4: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I)V
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 classLoader Ljava/lang/ClassLoader;
0 5 1 source Ljava/lang/Object;
0 5 2 annotationType Ljava/lang/Class<TA;>;
0 5 3 attributes Ljava/util/Map<Ljava/lang/String;*>;
2 5 4 mappings Lorg/springframework/core/annotation/AnnotationTypeMappings;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Class<TA;>;Ljava/util/Map<Ljava/lang/String;*>;)Lorg/springframework/core/annotation/MergedAnnotation<TA;>;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
1:
org.springframework.lang.Nullable()
2:
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
classLoader
source
annotationType
attributes
static <A extends java.lang.annotation.Annotation> org.springframework.core.annotation.TypeMappedAnnotation<A> createIfPossible(org.springframework.core.annotation.AnnotationTypeMapping, org.springframework.core.annotation.MergedAnnotation<?>, org.springframework.core.annotation.IntrospectionFailureLogger);
descriptor: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Lorg/springframework/core/annotation/MergedAnnotation;Lorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof org.springframework.core.annotation.TypeMappedAnnotation
ifeq 7
1: aload 1
checkcast org.springframework.core.annotation.TypeMappedAnnotation
astore 3
start local 3 2: aload 0
aload 3
getfield org.springframework.core.annotation.TypeMappedAnnotation.source:Ljava/lang/Object;
3: aload 3
getfield org.springframework.core.annotation.TypeMappedAnnotation.rootAttributes:Ljava/lang/Object;
4: aload 3
getfield org.springframework.core.annotation.TypeMappedAnnotation.valueExtractor:Lorg/springframework/core/annotation/ValueExtractor;
5: aload 3
getfield org.springframework.core.annotation.TypeMappedAnnotation.aggregateIndex:I
aload 2
6: invokestatic org.springframework.core.annotation.TypeMappedAnnotation.createIfPossible:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation;
areturn
end local 3 7: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface org.springframework.core.annotation.MergedAnnotation.getSource:()Ljava/lang/Object;
aload 1
invokeinterface org.springframework.core.annotation.MergedAnnotation.synthesize:()Ljava/lang/annotation/Annotation;
8: aload 1
invokeinterface org.springframework.core.annotation.MergedAnnotation.getAggregateIndex:()I
aload 2
9: invokestatic org.springframework.core.annotation.TypeMappedAnnotation.createIfPossible:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/annotation/Annotation;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
0 10 1 annotation Lorg/springframework/core/annotation/MergedAnnotation<*>;
0 10 2 logger Lorg/springframework/core/annotation/IntrospectionFailureLogger;
2 7 3 typeMappedAnnotation Lorg/springframework/core/annotation/TypeMappedAnnotation<*>;
Signature: <A::Ljava/lang/annotation/Annotation;>(Lorg/springframework/core/annotation/AnnotationTypeMapping;Lorg/springframework/core/annotation/MergedAnnotation<*>;Lorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
mapping
annotation
logger
static <A extends java.lang.annotation.Annotation> org.springframework.core.annotation.TypeMappedAnnotation<A> createIfPossible(org.springframework.core.annotation.AnnotationTypeMapping, , java.lang.annotation.Annotation, int, org.springframework.core.annotation.IntrospectionFailureLogger);
descriptor: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/annotation/Annotation;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=5, 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
1: invokedynamic extract()Lorg/springframework/core/annotation/ValueExtractor;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/util/ReflectionUtils.invokeMethod(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object; (6)
(Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
iload 3
aload 4
2: invokestatic org.springframework.core.annotation.TypeMappedAnnotation.createIfPossible:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
0 3 1 source Ljava/lang/Object;
0 3 2 annotation Ljava/lang/annotation/Annotation;
0 3 3 aggregateIndex I
0 3 4 logger Lorg/springframework/core/annotation/IntrospectionFailureLogger;
Signature: <A::Ljava/lang/annotation/Annotation;>(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/annotation/Annotation;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
3:
4:
MethodParameters:
Name Flags
mapping
source
annotation
aggregateIndex
logger
private static <A extends java.lang.annotation.Annotation> org.springframework.core.annotation.TypeMappedAnnotation<A> createIfPossible(org.springframework.core.annotation.AnnotationTypeMapping, , , org.springframework.core.annotation.ValueExtractor, int, org.springframework.core.annotation.IntrospectionFailureLogger);
descriptor: (Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=8, locals=9, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new org.springframework.core.annotation.TypeMappedAnnotation
dup
aload 0
aconst_null
aload 1
aload 2
1: aload 3
iload 4
2: invokespecial org.springframework.core.annotation.TypeMappedAnnotation.<init>:(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/ClassLoader;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;I)V
3: areturn
4: StackMap locals:
StackMap stack: java.lang.Exception
astore 6
start local 6 5: aload 6
invokestatic org.springframework.core.annotation.AnnotationUtils.rethrowAnnotationConfigurationException:(Ljava/lang/Throwable;)V
6: aload 5
invokevirtual org.springframework.core.annotation.IntrospectionFailureLogger.isEnabled:()Z
ifeq 12
7: aload 0
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAnnotationType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 7
start local 7 8: aload 0
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getDistance:()I
ifne 9
new java.lang.StringBuilder
dup
ldc "annotation "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 10
9: StackMap locals: java.lang.Exception java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
ldc "meta-annotation "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " from "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getRoot:()Lorg/springframework/core/annotation/AnnotationTypeMapping;
invokevirtual org.springframework.core.annotation.AnnotationTypeMapping.getAnnotationType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: StackMap locals:
StackMap stack: java.lang.String
astore 8
start local 8 11: aload 5
new java.lang.StringBuilder
dup
ldc "Failed to introspect "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
aload 6
invokevirtual org.springframework.core.annotation.IntrospectionFailureLogger.log:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Exception;)V
end local 8 end local 7 12: 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 13 0 mapping Lorg/springframework/core/annotation/AnnotationTypeMapping;
0 13 1 source Ljava/lang/Object;
0 13 2 rootAttribute Ljava/lang/Object;
0 13 3 valueExtractor Lorg/springframework/core/annotation/ValueExtractor;
0 13 4 aggregateIndex I
0 13 5 logger Lorg/springframework/core/annotation/IntrospectionFailureLogger;
5 13 6 ex Ljava/lang/Exception;
8 12 7 type Ljava/lang/String;
11 12 8 item Ljava/lang/String;
Exception table:
from to target type
0 3 4 Class java.lang.Exception
Signature: <A::Ljava/lang/annotation/Annotation;>(Lorg/springframework/core/annotation/AnnotationTypeMapping;Ljava/lang/Object;Ljava/lang/Object;Lorg/springframework/core/annotation/ValueExtractor;ILorg/springframework/core/annotation/IntrospectionFailureLogger;)Lorg/springframework/core/annotation/TypeMappedAnnotation<TA;>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
2:
org.springframework.lang.Nullable()
3:
4:
5:
MethodParameters:
Name Flags
mapping
source
rootAttribute
valueExtractor
aggregateIndex
logger
static java.lang.Object (java.lang.reflect.Method, java.lang.Object);
descriptor: (Ljava/lang/reflect/Method;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 1
aload 1
checkcast java.util.Map
aload 0
invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: java.lang.Object
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 attribute Ljava/lang/reflect/Method;
0 3 1 map Ljava/lang/Object;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
attribute
map
private static java.lang.String lambda$1(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
0: new java.lang.StringBuilder
dup
ldc "Attribute "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " type mismatch:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.String lambda$2(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
0: new java.lang.StringBuilder
dup
ldc "Attribute "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is not an array"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.lang.String lambda$3(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
0: new java.lang.StringBuilder
dup
ldc "Attribute "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " component type mismatch:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static java.util.LinkedHashMap lambda$4(org.springframework.core.annotation.MergedAnnotation);
descriptor: (Lorg/springframework/core/annotation/MergedAnnotation;)Ljava/util/LinkedHashMap;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 mergedAnnotation Lorg/springframework/core/annotation/MergedAnnotation<*>;
}
Signature: <A::Ljava/lang/annotation/Annotation;>Lorg/springframework/core/annotation/AbstractMergedAnnotation<TA;>;
SourceFile: "TypeMappedAnnotation.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
MirrorSets = org.springframework.core.annotation.AnnotationTypeMapping$MirrorSets of org.springframework.core.annotation.AnnotationTypeMapping
public final Adapt = org.springframework.core.annotation.MergedAnnotation$Adapt of org.springframework.core.annotation.MergedAnnotation