class javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader
super_class: java.lang.Object
{
java.io.File currentDirectory;
descriptor: Ljava/io/File;
flags: (0x0000)
int fid;
descriptor: I
flags: (0x0000)
java.util.Vector<javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents> runnables;
descriptor: Ljava/util/Vector;
flags: (0x0000)
Signature: Ljava/util/Vector<Ljavax/swing/plaf/basic/BasicDirectoryModel$DoChangeContents;>;
final java.lang.Thread loadThread;
descriptor: Ljava/lang/Thread;
flags: (0x0010) ACC_FINAL
final javax.swing.plaf.basic.BasicDirectoryModel this$0;
descriptor: Ljavax/swing/plaf/basic/BasicDirectoryModel;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(javax.swing.plaf.basic.BasicDirectoryModel, java.io.File, int);
descriptor: (Ljavax/swing/plaf/basic/BasicDirectoryModel;Ljava/io/File;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=5, args_size=4
start local 0 start local 2 start local 3 0: aload 0
aload 1
putfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aconst_null
putfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.currentDirectory:Ljava/io/File;
2: aload 0
new java.util.Vector
dup
bipush 10
invokespecial java.util.Vector.<init>:(I)V
putfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.runnables:Ljava/util/Vector;
3: aload 0
aload 2
putfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.currentDirectory:Ljava/io/File;
4: aload 0
iload 3
putfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.fid:I
5: ldc "Basic L&F File Loading Thread"
astore 4
start local 4 6: aload 0
new java.lang.Thread
dup
aconst_null
aload 0
aload 4
lconst_0
iconst_0
invokespecial java.lang.Thread.<init>:(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V
putfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.loadThread:Ljava/lang/Thread;
7: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.loadThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.start:()V
8: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;
0 9 2 currentDirectory Ljava/io/File;
0 9 3 fid I
6 9 4 name Ljava/lang/String;
MethodParameters:
Name Flags
this$0 final
currentDirectory
fid
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.run0:()V
1: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
iconst_0
aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.fid:I
invokevirtual javax.swing.plaf.basic.BasicDirectoryModel.setBusy:(ZI)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;
public void run0();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=10, args_size=1
start local 0 0: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
getfield javax.swing.plaf.basic.BasicDirectoryModel.filechooser:Ljavax/swing/JFileChooser;
invokevirtual javax.swing.JFileChooser.getFileSystemView:()Ljavax/swing/filechooser/FileSystemView;
astore 1
start local 1 1: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.loadThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 3
2: return
3: StackMap locals: javax.swing.filechooser.FileSystemView
StackMap stack:
aload 1
aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.currentDirectory:Ljava/io/File;
aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
getfield javax.swing.plaf.basic.BasicDirectoryModel.filechooser:Ljavax/swing/JFileChooser;
invokevirtual javax.swing.JFileChooser.isFileHidingEnabled:()Z
invokevirtual javax.swing.filechooser.FileSystemView.getFiles:(Ljava/io/File;Z)[Ljava/io/File;
astore 2
start local 2 4: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.loadThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 6
5: return
6: StackMap locals: java.io.File[]
StackMap stack:
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 3
start local 3 7: new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
astore 4
start local 4 8: aload 2
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 20
StackMap locals: javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader javax.swing.filechooser.FileSystemView java.io.File[] java.util.Vector java.util.Vector top int int java.io.File[]
StackMap stack:
9: aload 8
iload 6
aaload
astore 5
start local 5 10: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
getfield javax.swing.plaf.basic.BasicDirectoryModel.filechooser:Ljavax/swing/JFileChooser;
aload 5
invokevirtual javax.swing.JFileChooser.accept:(Ljava/io/File;)Z
ifeq 19
11: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
getfield javax.swing.plaf.basic.BasicDirectoryModel.filechooser:Ljavax/swing/JFileChooser;
aload 5
invokevirtual javax.swing.JFileChooser.isTraversable:(Ljava/io/File;)Z
istore 9
start local 9 12: iload 9
ifeq 15
13: aload 3
aload 5
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
14: goto 17
StackMap locals: javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader javax.swing.filechooser.FileSystemView java.io.File[] java.util.Vector java.util.Vector java.io.File int int java.io.File[] int
StackMap stack:
15: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
getfield javax.swing.plaf.basic.BasicDirectoryModel.filechooser:Ljavax/swing/JFileChooser;
invokevirtual javax.swing.JFileChooser.isFileSelectionEnabled:()Z
ifeq 17
16: aload 4
aload 5
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.loadThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.isInterrupted:()Z
ifeq 19
18: return
end local 9 end local 5 19: StackMap locals: javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader javax.swing.filechooser.FileSystemView java.io.File[] java.util.Vector java.util.Vector top int int java.io.File[]
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
20: iload 6
iload 7
if_icmplt 9
21: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
aload 3
invokevirtual javax.swing.plaf.basic.BasicDirectoryModel.sort:(Ljava/util/Vector;)V
22: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
aload 4
invokevirtual javax.swing.plaf.basic.BasicDirectoryModel.sort:(Ljava/util/Vector;)V
23: aload 3
aload 4
invokevirtual java.util.Vector.addAll:(Ljava/util/Collection;)Z
pop
24: new javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader$1
dup
aload 0
aload 3
invokespecial javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader$1.<init>:(Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;Ljava/util/Vector;)V
invokestatic sun.awt.shell.ShellFolder.invoke:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
checkcast javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents
astore 5
start local 5 25: aload 5
ifnull 28
26: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.runnables:Ljava/util/Vector;
aload 5
invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
27: aload 5
invokestatic javax.swing.SwingUtilities.invokeLater:(Ljava/lang/Runnable;)V
28: StackMap locals: javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader javax.swing.filechooser.FileSystemView java.io.File[] java.util.Vector java.util.Vector javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents
StackMap stack:
return
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 29 0 this Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;
1 29 1 fileSystem Ljavax/swing/filechooser/FileSystemView;
4 29 2 list [Ljava/io/File;
7 29 3 newFileCache Ljava/util/Vector<Ljava/io/File;>;
8 29 4 newFiles Ljava/util/Vector<Ljava/io/File;>;
10 19 5 file Ljava/io/File;
12 19 9 isTraversable Z
25 29 5 doChangeContents Ljavax/swing/plaf/basic/BasicDirectoryModel$DoChangeContents;
public void cancelRunnables(java.util.Vector<javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents>);
descriptor: (Ljava/util/Vector;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.util.Vector.iterator:()Ljava/util/Iterator;
astore 3
goto 3
StackMap locals: javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader java.util.Vector top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents
astore 2
start local 2 2: aload 2
invokevirtual javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents.cancel:()V
end local 2 3: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;
0 5 1 runnables Ljava/util/Vector<Ljavax/swing/plaf/basic/BasicDirectoryModel$DoChangeContents;>;
2 3 2 runnable Ljavax/swing/plaf/basic/BasicDirectoryModel$DoChangeContents;
Signature: (Ljava/util/Vector<Ljavax/swing/plaf/basic/BasicDirectoryModel$DoChangeContents;>;)V
MethodParameters:
Name Flags
runnables
public void cancelRunnables();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.runnables:Ljava/util/Vector;
invokevirtual javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.cancelRunnables:(Ljava/util/Vector;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;
static javax.swing.plaf.basic.BasicDirectoryModel access$0(javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader);
descriptor: (Ljavax/swing/plaf/basic/BasicDirectoryModel$FilesLoader;)Ljavax/swing/plaf/basic/BasicDirectoryModel;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
getfield javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader.this$0:Ljavax/swing/plaf/basic/BasicDirectoryModel;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "BasicDirectoryModel.java"
NestHost: javax.swing.plaf.basic.BasicDirectoryModel
InnerClasses:
DoChangeContents = javax.swing.plaf.basic.BasicDirectoryModel$DoChangeContents of javax.swing.plaf.basic.BasicDirectoryModel
FilesLoader = javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader of javax.swing.plaf.basic.BasicDirectoryModel
javax.swing.plaf.basic.BasicDirectoryModel$FilesLoader$1