class com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry implements com.sun.tools.jdeprscan.scan.ClassFinder$PathEntry
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry
super_class: java.lang.Object
{
final java.util.jar.JarFile jarFile;
descriptor: Ljava/util/jar/JarFile;
flags: (0x0010) ACC_FINAL
final com.sun.tools.jdeprscan.scan.ClassFinder this$0;
descriptor: Lcom/sun/tools/jdeprscan/scan/ClassFinder;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.sun.tools.jdeprscan.scan.ClassFinder, java.util.jar.JarFile);
descriptor: (Lcom/sun/tools/jdeprscan/scan/ClassFinder;Ljava/util/jar/JarFile;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 // com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry this
start local 2 // java.util.jar.JarFile jf
0: .line 125
aload 0 /* this */
aload 1
putfield com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry.this$0:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 126
aload 0 /* this */
aload 2 /* jf */
putfield com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry.jarFile:Ljava/util/jar/JarFile;
2: .line 127
return
end local 2 // java.util.jar.JarFile jf
end local 0 // com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdeprscan/scan/ClassFinder$JarPathEntry;
0 3 2 jf Ljava/util/jar/JarFile;
MethodParameters:
Name Flags
this$0 final
jf
public com.sun.tools.classfile.ClassFile find(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/tools/classfile/ClassFile;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 // com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry this
start local 1 // java.lang.String className
0: .line 131
aload 0 /* this */
getfield com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry.jarFile:Ljava/util/jar/JarFile;
new java.lang.StringBuilder
dup
aload 1 /* className */
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".class"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.util.jar.JarFile.getJarEntry:(Ljava/lang/String;)Ljava/util/jar/JarEntry;
astore 2 /* entry */
start local 2 // java.util.jar.JarEntry entry
1: .line 132
aload 2 /* entry */
ifnonnull 3
2: .line 133
aconst_null
areturn
3: .line 136
StackMap locals: java.util.jar.JarEntry
StackMap stack:
aload 0 /* this */
getfield com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry.jarFile:Ljava/util/jar/JarFile;
aload 2 /* entry */
invokevirtual java.util.jar.JarFile.getInputStream:(Ljava/util/zip/ZipEntry;)Ljava/io/InputStream;
invokestatic com.sun.tools.classfile.ClassFile.read:(Ljava/io/InputStream;)Lcom/sun/tools/classfile/ClassFile;
4: areturn
5: .line 137
StackMap locals:
StackMap stack: java.lang.Exception
astore 3 /* ex */
start local 3 // java.lang.Exception ex
6: .line 138
aload 0 /* this */
getfield com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry.this$0:Lcom/sun/tools/jdeprscan/scan/ClassFinder;
getfield com.sun.tools.jdeprscan.scan.ClassFinder.verbose:Z
ifeq 8
7: .line 139
aload 3 /* ex */
invokevirtual java.lang.Exception.printStackTrace:()V
end local 3 // java.lang.Exception ex
8: .line 142
StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 // java.util.jar.JarEntry entry
end local 1 // java.lang.String className
end local 0 // com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/jdeprscan/scan/ClassFinder$JarPathEntry;
0 9 1 className Ljava/lang/String;
1 9 2 entry Ljava/util/jar/JarEntry;
6 8 3 ex Ljava/lang/Exception;
Exception table:
from to target type
3 4 5 Class java.io.IOException
3 4 5 Class com.sun.tools.classfile.ConstantPoolException
MethodParameters:
Name Flags
className
}
SourceFile: "ClassFinder.java"
NestHost: com.sun.tools.jdeprscan.scan.ClassFinder
InnerClasses:
JarPathEntry = com.sun.tools.jdeprscan.scan.ClassFinder$JarPathEntry of com.sun.tools.jdeprscan.scan.ClassFinder
abstract PathEntry = com.sun.tools.jdeprscan.scan.ClassFinder$PathEntry of com.sun.tools.jdeprscan.scan.ClassFinder