public class org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils
super_class: java.lang.Object
{
private static java.util.HashMap<java.lang.String, java.util.zip.ZipFile> fgZipFileCache;
descriptor: Ljava/util/HashMap;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/util/zip/ZipFile;>;
private static org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils$ArchiveCleaner fgCleaner;
descriptor: Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: new java.util.HashMap
dup
iconst_5
invokespecial java.util.HashMap.<init>:(I)V
putstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
1: aconst_null
putstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils;
public static java.util.zip.ZipFile getZipFile(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/zip/ZipFile;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
dup
astore 1
monitorenter
1: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
ifnonnull 5
2: new org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils$ArchiveCleaner
dup
invokespecial org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils$ArchiveCleaner.<init>:()V
putstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
3: invokestatic org.eclipse.debug.core.DebugPlugin.getDefault:()Lorg/eclipse/debug/core/DebugPlugin;
invokevirtual org.eclipse.debug.core.DebugPlugin.getLaunchManager:()Lorg/eclipse/debug/core/ILaunchManager;
getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
invokeinterface org.eclipse.debug.core.ILaunchManager.addLaunchListener:(Lorg/eclipse/debug/core/ILaunchesListener;)V
4: invokestatic org.eclipse.core.resources.ResourcesPlugin.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
bipush 6
invokeinterface org.eclipse.core.resources.IWorkspace.addResourceChangeListener:(Lorg/eclipse/core/resources/IResourceChangeListener;I)V
5: StackMap locals: java.util.HashMap
StackMap stack:
getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
aload 0
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.zip.ZipFile
astore 2
start local 2 6: aload 2
ifnonnull 9
7: new java.util.zip.ZipFile
dup
aload 0
invokespecial java.util.zip.ZipFile.<init>:(Ljava/lang/String;)V
astore 2
8: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
aload 0
aload 2
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: StackMap locals: java.util.zip.ZipFile
StackMap stack:
aload 2
aload 1
monitorexit
10: areturn
end local 2 11: StackMap locals: java.lang.String java.util.HashMap
StackMap stack: java.lang.Throwable
aload 1
monitorexit
12: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 name Ljava/lang/String;
6 11 2 zip Ljava/util/zip/ZipFile;
Exception table:
from to target type
1 10 11 any
11 12 11 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
name
public static void closeArchives();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=5, args_size=0
0: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
dup
astore 0
monitorenter
1: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
invokevirtual java.util.HashMap.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 12
StackMap locals: java.util.HashMap top java.util.Iterator
StackMap stack:
2: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.zip.ZipFile
astore 1
start local 1 3: aload 1
dup
astore 3
monitorenter
4: aload 1
invokevirtual java.util.zip.ZipFile.close:()V
5: goto 8
StackMap locals: java.util.HashMap java.util.zip.ZipFile java.util.Iterator java.util.zip.ZipFile
StackMap stack: java.io.IOException
6: astore 4
start local 4 7: aload 4
invokestatic org.eclipse.debug.core.DebugPlugin.log:(Ljava/lang/Throwable;)V
end local 4 8: StackMap locals:
StackMap stack:
aload 3
monitorexit
9: goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
10: aload 3
monitorexit
11: athrow
end local 1 12: StackMap locals: java.util.HashMap top java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
13: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgZipFileCache:Ljava/util/HashMap;
invokevirtual java.util.HashMap.clear:()V
14: aload 0
monitorexit
15: goto 18
StackMap locals: java.util.HashMap
StackMap stack: java.lang.Throwable
16: aload 0
monitorexit
17: athrow
18: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
3 12 1 file Ljava/util/zip/ZipFile;
7 8 4 e Ljava/io/IOException;
Exception table:
from to target type
4 5 6 Class java.io.IOException
4 9 10 any
10 11 10 any
1 15 16 any
16 17 16 any
public static void shutdown();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: invokestatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.closeArchives:()V
1: getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
ifnull 4
2: invokestatic org.eclipse.debug.core.DebugPlugin.getDefault:()Lorg/eclipse/debug/core/DebugPlugin;
invokevirtual org.eclipse.debug.core.DebugPlugin.getLaunchManager:()Lorg/eclipse/debug/core/ILaunchManager;
getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
invokeinterface org.eclipse.debug.core.ILaunchManager.removeLaunchListener:(Lorg/eclipse/debug/core/ILaunchesListener;)V
3: invokestatic org.eclipse.core.resources.ResourcesPlugin.getWorkspace:()Lorg/eclipse/core/resources/IWorkspace;
getstatic org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils.fgCleaner:Lorg/eclipse/debug/internal/core/sourcelookup/SourceLookupUtils$ArchiveCleaner;
invokeinterface org.eclipse.core.resources.IWorkspace.removeResourceChangeListener:(Lorg/eclipse/core/resources/IResourceChangeListener;)V
4: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "SourceLookupUtils.java"
NestMembers:
org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils$ArchiveCleaner
InnerClasses:
ArchiveCleaner = org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils$ArchiveCleaner of org.eclipse.debug.internal.core.sourcelookup.SourceLookupUtils