public class edu.umd.cs.findbugs.classfile.impl.ClassFactory implements edu.umd.cs.findbugs.classfile.IClassFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: edu.umd.cs.findbugs.classfile.impl.ClassFactory
super_class: java.lang.Object
{
private static edu.umd.cs.findbugs.classfile.IClassFactory theInstance;
descriptor: Ledu/umd/cs/findbugs/classfile/IClassFactory;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new edu.umd.cs.findbugs.classfile.impl.ClassFactory
dup
invokespecial edu.umd.cs.findbugs.classfile.impl.ClassFactory.<init>:()V
putstatic edu.umd.cs.findbugs.classfile.impl.ClassFactory.theInstance:Ledu/umd/cs/findbugs/classfile/IClassFactory;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ledu/umd/cs/findbugs/classfile/impl/ClassFactory;
public static edu.umd.cs.findbugs.classfile.IClassFactory instance();
descriptor: ()Ledu/umd/cs/findbugs/classfile/IClassFactory;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic edu.umd.cs.findbugs.classfile.impl.ClassFactory.theInstance:Ledu/umd/cs/findbugs/classfile/IClassFactory;
areturn
LocalVariableTable:
Start End Slot Name Signature
public edu.umd.cs.findbugs.classfile.IClassPath createClassPath();
descriptor: ()Ledu/umd/cs/findbugs/classfile/IClassPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new edu.umd.cs.findbugs.classfile.impl.ClassPathImpl
dup
invokespecial edu.umd.cs.findbugs.classfile.impl.ClassPathImpl.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ledu/umd/cs/findbugs/classfile/impl/ClassFactory;
public edu.umd.cs.findbugs.classfile.IClassPathBuilder createClassPathBuilder(edu.umd.cs.findbugs.classfile.IErrorLogger);
descriptor: (Ledu/umd/cs/findbugs/classfile/IErrorLogger;)Ledu/umd/cs/findbugs/classfile/IClassPathBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new edu.umd.cs.findbugs.classfile.impl.ClassPathBuilder
dup
aload 0
aload 1
invokespecial edu.umd.cs.findbugs.classfile.impl.ClassPathBuilder.<init>:(Ledu/umd/cs/findbugs/classfile/IClassFactory;Ledu/umd/cs/findbugs/classfile/IErrorLogger;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ledu/umd/cs/findbugs/classfile/impl/ClassFactory;
0 1 1 errorLogger Ledu/umd/cs/findbugs/classfile/IErrorLogger;
MethodParameters:
Name Flags
errorLogger
public edu.umd.cs.findbugs.classfile.ICodeBaseLocator createFilesystemCodeBaseLocator(java.lang.String);
descriptor: (Ljava/lang/String;)Ledu/umd/cs/findbugs/classfile/ICodeBaseLocator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.getCanonicalPath:()Ljava/lang/String;
astore 1
1: goto 3
StackMap locals:
StackMap stack: java.io.IOException
2: pop
3: StackMap locals:
StackMap stack:
new edu.umd.cs.findbugs.classfile.impl.FilesystemCodeBaseLocator
dup
aload 1
invokespecial edu.umd.cs.findbugs.classfile.impl.FilesystemCodeBaseLocator.<init>:(Ljava/lang/String;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ledu/umd/cs/findbugs/classfile/impl/ClassFactory;
0 4 1 pathName Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class java.io.IOException
MethodParameters:
Name Flags
pathName
public edu.umd.cs.findbugs.classfile.ICodeBaseLocator createNestedArchiveCodeBaseLocator(edu.umd.cs.findbugs.classfile.ICodeBase, java.lang.String);
descriptor: (Ledu/umd/cs/findbugs/classfile/ICodeBase;Ljava/lang/String;)Ledu/umd/cs/findbugs/classfile/ICodeBaseLocator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new edu.umd.cs.findbugs.classfile.impl.NestedZipFileCodeBaseLocator
dup
aload 1
aload 2
invokespecial edu.umd.cs.findbugs.classfile.impl.NestedZipFileCodeBaseLocator.<init>:(Ledu/umd/cs/findbugs/classfile/ICodeBase;Ljava/lang/String;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ledu/umd/cs/findbugs/classfile/impl/ClassFactory;
0 1 1 parentCodeBase Ledu/umd/cs/findbugs/classfile/ICodeBase;
0 1 2 path Ljava/lang/String;
MethodParameters:
Name Flags
parentCodeBase
path
static edu.umd.cs.findbugs.classfile.IScannableCodeBase createFilesystemCodeBase(edu.umd.cs.findbugs.classfile.impl.FilesystemCodeBaseLocator);
descriptor: (Ledu/umd/cs/findbugs/classfile/impl/FilesystemCodeBaseLocator;)Ledu/umd/cs/findbugs/classfile/IScannableCodeBase;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual edu.umd.cs.findbugs.classfile.impl.FilesystemCodeBaseLocator.getPathName:()Ljava/lang/String;
astore 1
start local 1 1: new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 2
start local 2 2: aload 2
invokevirtual java.io.File.exists:()Z
ifne 4
3: new java.io.FileNotFoundException
dup
new java.lang.StringBuilder
dup
ldc "File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " doesn't exist"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.FileNotFoundException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: java.lang.String java.io.File
StackMap stack:
aload 2
invokevirtual java.io.File.canRead:()Z
ifne 6
5: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not readable"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.io.File.isDirectory:()Z
ifeq 8
7: new edu.umd.cs.findbugs.classfile.impl.DirectoryCodeBase
dup
aload 0
aload 2
invokespecial edu.umd.cs.findbugs.classfile.impl.DirectoryCodeBase.<init>:(Ledu/umd/cs/findbugs/classfile/ICodeBaseLocator;Ljava/io/File;)V
areturn
8: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.io.File.isFile:()Z
ifne 10
9: new java.io.IOException
dup
new java.lang.StringBuilder
dup
ldc "File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is not a normal file"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
athrow
10: StackMap locals:
StackMap stack:
aload 1
ldc ".class"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 12
11: new edu.umd.cs.findbugs.classfile.impl.SingleFileCodeBase
dup
aload 0
aload 1
invokespecial edu.umd.cs.findbugs.classfile.impl.SingleFileCodeBase.<init>:(Ledu/umd/cs/findbugs/classfile/ICodeBaseLocator;Ljava/lang/String;)V
areturn
12: StackMap locals:
StackMap stack:
aload 0
aload 2
invokestatic edu.umd.cs.findbugs.classfile.impl.ZipCodeBaseFactory.makeZipCodeBase:(Ledu/umd/cs/findbugs/classfile/ICodeBaseLocator;Ljava/io/File;)Ledu/umd/cs/findbugs/classfile/impl/AbstractScannableCodeBase;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 codeBaseLocator Ledu/umd/cs/findbugs/classfile/impl/FilesystemCodeBaseLocator;
1 13 1 fileName Ljava/lang/String;
2 13 2 file Ljava/io/File;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
codeBaseLocator
static edu.umd.cs.findbugs.classfile.IScannableCodeBase createNestedZipFileCodeBase(edu.umd.cs.findbugs.classfile.impl.NestedZipFileCodeBaseLocator);
descriptor: (Ledu/umd/cs/findbugs/classfile/impl/NestedZipFileCodeBaseLocator;)Ledu/umd/cs/findbugs/classfile/IScannableCodeBase;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new edu.umd.cs.findbugs.classfile.impl.NestedZipFileCodeBase
dup
aload 0
invokespecial edu.umd.cs.findbugs.classfile.impl.NestedZipFileCodeBase.<init>:(Ledu/umd/cs/findbugs/classfile/impl/NestedZipFileCodeBaseLocator;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 codeBaseLocator Ledu/umd/cs/findbugs/classfile/impl/NestedZipFileCodeBaseLocator;
Exceptions:
throws edu.umd.cs.findbugs.classfile.ResourceNotFoundException, java.io.IOException
MethodParameters:
Name Flags
codeBaseLocator
public edu.umd.cs.findbugs.classfile.IAnalysisCache createAnalysisCache(edu.umd.cs.findbugs.classfile.IClassPath, edu.umd.cs.findbugs.BugReporter);
descriptor: (Ledu/umd/cs/findbugs/classfile/IClassPath;Ledu/umd/cs/findbugs/BugReporter;)Ledu/umd/cs/findbugs/classfile/IAnalysisCache;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new edu.umd.cs.findbugs.classfile.impl.AnalysisCache
dup
aload 1
aload 2
invokespecial edu.umd.cs.findbugs.classfile.impl.AnalysisCache.<init>:(Ledu/umd/cs/findbugs/classfile/IClassPath;Ledu/umd/cs/findbugs/BugReporter;)V
astore 3
start local 3 1: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ledu/umd/cs/findbugs/classfile/impl/ClassFactory;
0 2 1 classPath Ledu/umd/cs/findbugs/classfile/IClassPath;
0 2 2 errorLogger Ledu/umd/cs/findbugs/BugReporter;
1 2 3 analysisCache Ledu/umd/cs/findbugs/classfile/IAnalysisCache;
MethodParameters:
Name Flags
classPath
errorLogger
}
SourceFile: "ClassFactory.java"