public class org.springframework.core.type.classreading.SimpleMetadataReaderFactory implements org.springframework.core.type.classreading.MetadataReaderFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.core.type.classreading.SimpleMetadataReaderFactory
super_class: java.lang.Object
{
private final org.springframework.core.io.ResourceLoader resourceLoader;
descriptor: Lorg/springframework/core/io/ResourceLoader;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new org.springframework.core.io.DefaultResourceLoader
dup
invokespecial org.springframework.core.io.DefaultResourceLoader.<init>:()V
putfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/core/type/classreading/SimpleMetadataReaderFactory;
public void <init>(org.springframework.core.io.ResourceLoader);
descriptor: (Lorg/springframework/core/io/ResourceLoader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
ifnull 2
aload 1
goto 3
StackMap locals: org.springframework.core.type.classreading.SimpleMetadataReaderFactory org.springframework.core.io.ResourceLoader
StackMap stack: org.springframework.core.type.classreading.SimpleMetadataReaderFactory
2: new org.springframework.core.io.DefaultResourceLoader
dup
invokespecial org.springframework.core.io.DefaultResourceLoader.<init>:()V
StackMap locals: org.springframework.core.type.classreading.SimpleMetadataReaderFactory org.springframework.core.io.ResourceLoader
StackMap stack: org.springframework.core.type.classreading.SimpleMetadataReaderFactory org.springframework.core.io.ResourceLoader
3: putfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/core/type/classreading/SimpleMetadataReaderFactory;
0 5 1 resourceLoader Lorg/springframework/core/io/ResourceLoader;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
resourceLoader
public void <init>(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: aload 1
ifnull 3
new org.springframework.core.io.DefaultResourceLoader
dup
aload 1
invokespecial org.springframework.core.io.DefaultResourceLoader.<init>:(Ljava/lang/ClassLoader;)V
goto 4
StackMap locals: org.springframework.core.type.classreading.SimpleMetadataReaderFactory java.lang.ClassLoader
StackMap stack: org.springframework.core.type.classreading.SimpleMetadataReaderFactory
3: new org.springframework.core.io.DefaultResourceLoader
dup
invokespecial org.springframework.core.io.DefaultResourceLoader.<init>:()V
4: StackMap locals: org.springframework.core.type.classreading.SimpleMetadataReaderFactory java.lang.ClassLoader
StackMap stack: org.springframework.core.type.classreading.SimpleMetadataReaderFactory org.springframework.core.io.DefaultResourceLoader
putfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/core/type/classreading/SimpleMetadataReaderFactory;
0 6 1 classLoader Ljava/lang/ClassLoader;
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
classLoader
public final org.springframework.core.io.ResourceLoader getResourceLoader();
descriptor: ()Lorg/springframework/core/io/ResourceLoader;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/type/classreading/SimpleMetadataReaderFactory;
public org.springframework.core.type.classreading.MetadataReader getMetadataReader(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/springframework/core/type/classreading/MetadataReader;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "classpath:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 1
invokestatic org.springframework.util.ClassUtils.convertClassNameToResourcePath:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".class"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
start local 2 3: aload 0
getfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
aload 2
invokeinterface org.springframework.core.io.ResourceLoader.getResource:(Ljava/lang/String;)Lorg/springframework/core/io/Resource;
astore 3
start local 3 4: aload 0
aload 3
invokevirtual org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader:(Lorg/springframework/core/io/Resource;)Lorg/springframework/core/type/classreading/MetadataReader;
5: areturn
end local 3 end local 2 6: StackMap locals:
StackMap stack: java.io.FileNotFoundException
astore 2
start local 2 7: aload 1
bipush 46
invokevirtual java.lang.String.lastIndexOf:(I)I
istore 3
start local 3 8: iload 3
iconst_m1
if_icmpeq 17
9: new java.lang.StringBuilder
dup
aload 1
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 36
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 1
iload 3
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: astore 4
start local 4 11: new java.lang.StringBuilder
dup
ldc "classpath:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: aload 4
invokestatic org.springframework.util.ClassUtils.convertClassNameToResourcePath:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".class"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 14: aload 0
getfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
aload 5
invokeinterface org.springframework.core.io.ResourceLoader.getResource:(Ljava/lang/String;)Lorg/springframework/core/io/Resource;
astore 6
start local 6 15: aload 6
invokeinterface org.springframework.core.io.Resource.exists:()Z
ifeq 17
16: aload 0
aload 6
invokevirtual org.springframework.core.type.classreading.SimpleMetadataReaderFactory.getMetadataReader:(Lorg/springframework/core/io/Resource;)Lorg/springframework/core/type/classreading/MetadataReader;
areturn
end local 6 end local 5 end local 4 17: StackMap locals: java.io.FileNotFoundException int
StackMap stack:
aload 2
athrow
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/type/classreading/SimpleMetadataReaderFactory;
0 18 1 className Ljava/lang/String;
3 6 2 resourcePath Ljava/lang/String;
4 6 3 resource Lorg/springframework/core/io/Resource;
7 18 2 ex Ljava/io/FileNotFoundException;
8 18 3 lastDotIndex I
11 17 4 innerClassName Ljava/lang/String;
14 17 5 innerClassResourcePath Ljava/lang/String;
15 17 6 innerClassResource Lorg/springframework/core/io/Resource;
Exception table:
from to target type
0 5 6 Class java.io.FileNotFoundException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
className
public org.springframework.core.type.classreading.MetadataReader getMetadataReader(org.springframework.core.io.Resource);
descriptor: (Lorg/springframework/core/io/Resource;)Lorg/springframework/core/type/classreading/MetadataReader;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.springframework.core.type.classreading.SimpleMetadataReader
dup
aload 1
aload 0
getfield org.springframework.core.type.classreading.SimpleMetadataReaderFactory.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
invokeinterface org.springframework.core.io.ResourceLoader.getClassLoader:()Ljava/lang/ClassLoader;
invokespecial org.springframework.core.type.classreading.SimpleMetadataReader.<init>:(Lorg/springframework/core/io/Resource;Ljava/lang/ClassLoader;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/core/type/classreading/SimpleMetadataReaderFactory;
0 1 1 resource Lorg/springframework/core/io/Resource;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
resource
}
SourceFile: "SimpleMetadataReaderFactory.java"