public class org.apache.commons.vfs2.impl.DefaultFileMonitor implements java.lang.Runnable, org.apache.commons.vfs2.FileMonitor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.vfs2.impl.DefaultFileMonitor
super_class: java.lang.Object
{
private static final org.apache.commons.logging.Log LOG;
descriptor: Lorg/apache/commons/logging/Log;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long DEFAULT_DELAY;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private static final int DEFAULT_MAX_FILES;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private final java.util.Map<org.apache.commons.vfs2.FileName, org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent> monitorMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lorg/apache/commons/vfs2/FileName;Lorg/apache/commons/vfs2/impl/DefaultFileMonitor$FileMonitorAgent;>;
private java.lang.Thread monitorThread;
descriptor: Ljava/lang/Thread;
flags: (0x0002) ACC_PRIVATE
private final java.util.Stack<org.apache.commons.vfs2.FileObject> deleteStack;
descriptor: Ljava/util/Stack;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Stack<Lorg/apache/commons/vfs2/FileObject;>;
private final java.util.Stack<org.apache.commons.vfs2.FileObject> addStack;
descriptor: Ljava/util/Stack;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Stack<Lorg/apache/commons/vfs2/FileObject;>;
private volatile boolean shouldRun;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private boolean recursive;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private long delay;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private int checksPerRun;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final org.apache.commons.vfs2.FileListener listener;
descriptor: Lorg/apache/commons/vfs2/FileListener;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
invokestatic org.apache.commons.logging.LogFactory.getLog:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
putstatic org.apache.commons.vfs2.impl.DefaultFileMonitor.LOG:Lorg/apache/commons/logging/Log;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.commons.vfs2.FileListener);
descriptor: (Lorg/apache/commons/vfs2/FileListener;)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
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
2: aload 0
new java.util.Stack
dup
invokespecial java.util.Stack.<init>:()V
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.deleteStack:Ljava/util/Stack;
3: aload 0
new java.util.Stack
dup
invokespecial java.util.Stack.<init>:()V
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.addStack:Ljava/util/Stack;
4: aload 0
iconst_1
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.shouldRun:Z
5: aload 0
ldc 1000
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.delay:J
6: aload 0
sipush 1000
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.checksPerRun:I
7: aload 0
aload 1
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.listener:Lorg/apache/commons/vfs2/FileListener;
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 9 1 listener Lorg/apache/commons/vfs2/FileListener;
MethodParameters:
Name Flags
listener final
public boolean isRecursive();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.recursive:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
public void setRecursive(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.recursive:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 2 1 newRecursive Z
MethodParameters:
Name Flags
newRecursive final
org.apache.commons.vfs2.FileListener getFileListener();
descriptor: ()Lorg/apache/commons/vfs2/FileListener;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.listener:Lorg/apache/commons/vfs2/FileListener;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
public void addFile(org.apache.commons.vfs2.FileObject);
descriptor: (Lorg/apache/commons/vfs2/FileObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
dup
astore 2
monitorenter
1: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getName:()Lorg/apache/commons/vfs2/FileName;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnonnull 15
2: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getName:()Lorg/apache/commons/vfs2/FileName;
new org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent
dup
aload 0
aload 1
invokespecial org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent.<init>:(Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;Lorg/apache/commons/vfs2/FileObject;)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.listener:Lorg/apache/commons/vfs2/FileListener;
ifnull 5
4: aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getFileSystem:()Lorg/apache/commons/vfs2/FileSystem;
aload 1
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.listener:Lorg/apache/commons/vfs2/FileListener;
invokeinterface org.apache.commons.vfs2.FileSystem.addListener:(Lorg/apache/commons/vfs2/FileObject;Lorg/apache/commons/vfs2/FileListener;)V
5: StackMap locals: java.util.Map
StackMap stack:
aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getType:()Lorg/apache/commons/vfs2/FileType;
invokevirtual org.apache.commons.vfs2.FileType.hasChildren:()Z
ifeq 15
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.recursive:Z
ifeq 15
6: aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getChildren:()[Lorg/apache/commons/vfs2/FileObject;
astore 3
start local 3 7: aload 3
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 11
StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor org.apache.commons.vfs2.FileObject java.util.Map org.apache.commons.vfs2.FileObject[] top int int org.apache.commons.vfs2.FileObject[]
StackMap stack:
8: aload 7
iload 5
aaload
astore 4
start local 4 9: aload 0
aload 4
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.addFile:(Lorg/apache/commons/vfs2/FileObject;)V
end local 4 10: iinc 5 1
StackMap locals:
StackMap stack:
11: iload 5
iload 6
if_icmplt 8
end local 3 12: goto 15
StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor org.apache.commons.vfs2.FileObject java.util.Map
StackMap stack: org.apache.commons.vfs2.FileSystemException
13: astore 3
start local 3 14: getstatic org.apache.commons.vfs2.impl.DefaultFileMonitor.LOG:Lorg/apache/commons/logging/Log;
aload 3
invokevirtual org.apache.commons.vfs2.FileSystemException.getLocalizedMessage:()Ljava/lang/String;
aload 3
invokeinterface org.apache.commons.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 3 15: StackMap locals:
StackMap stack:
aload 2
monitorexit
16: goto 19
StackMap locals:
StackMap stack: java.lang.Throwable
17: aload 2
monitorexit
18: athrow
19: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 20 1 file Lorg/apache/commons/vfs2/FileObject;
7 12 3 children [Lorg/apache/commons/vfs2/FileObject;
9 10 4 element Lorg/apache/commons/vfs2/FileObject;
14 15 3 fse Lorg/apache/commons/vfs2/FileSystemException;
Exception table:
from to target type
3 12 13 Class org.apache.commons.vfs2.FileSystemException
1 16 17 any
17 18 17 any
MethodParameters:
Name Flags
file final
public void removeFile(org.apache.commons.vfs2.FileObject);
descriptor: (Lorg/apache/commons/vfs2/FileObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
dup
astore 2
monitorenter
1: aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getName:()Lorg/apache/commons/vfs2/FileName;
astore 3
start local 3 2: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 12
3: aload 1
invokeinterface org.apache.commons.vfs2.FileObject.getParent:()Lorg/apache/commons/vfs2/FileObject;
astore 4
start local 4 4: goto 7
end local 4 StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor org.apache.commons.vfs2.FileObject java.util.Map org.apache.commons.vfs2.FileName
StackMap stack: org.apache.commons.vfs2.FileSystemException
5: pop
6: aconst_null
astore 4
start local 4 7: StackMap locals: org.apache.commons.vfs2.FileObject
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 4
ifnull 12
9: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
aload 4
invokeinterface org.apache.commons.vfs2.FileObject.getName:()Lorg/apache/commons/vfs2/FileName;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent
astore 5
start local 5 10: aload 5
ifnull 12
11: aload 5
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent.resetChildrenList:()V
end local 5 end local 4 end local 3 12: StackMap locals:
StackMap stack:
aload 2
monitorexit
13: goto 16
StackMap locals:
StackMap stack: java.lang.Throwable
14: aload 2
monitorexit
15: athrow
16: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 17 1 file Lorg/apache/commons/vfs2/FileObject;
2 12 3 fn Lorg/apache/commons/vfs2/FileName;
4 5 4 parent Lorg/apache/commons/vfs2/FileObject;
7 12 4 parent Lorg/apache/commons/vfs2/FileObject;
10 12 5 parentAgent Lorg/apache/commons/vfs2/impl/DefaultFileMonitor$FileMonitorAgent;
Exception table:
from to target type
3 4 5 Class org.apache.commons.vfs2.FileSystemException
1 13 14 any
14 15 14 any
MethodParameters:
Name Flags
file final
protected void queueRemoveFile(org.apache.commons.vfs2.FileObject);
descriptor: (Lorg/apache/commons/vfs2/FileObject;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.deleteStack:Ljava/util/Stack;
aload 1
invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 2 1 file Lorg/apache/commons/vfs2/FileObject;
MethodParameters:
Name Flags
file final
public long getDelay();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.delay:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
public void setDelay(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
ifle 3
1: aload 0
lload 1
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.delay:J
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
ldc 1000
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.delay:J
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 5 1 delay J
MethodParameters:
Name Flags
delay final
public int getChecksPerRun();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.checksPerRun:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
public void setChecksPerRun(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.checksPerRun:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 2 1 checksPerRun I
MethodParameters:
Name Flags
checksPerRun final
protected void queueAddFile(org.apache.commons.vfs2.FileObject);
descriptor: (Lorg/apache/commons/vfs2/FileObject;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.addStack:Ljava/util/Stack;
aload 1
invokevirtual java.util.Stack.push:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
0 2 1 file Lorg/apache/commons/vfs2/FileObject;
MethodParameters:
Name Flags
file final
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
ifnonnull 4
1: aload 0
new java.lang.Thread
dup
aload 0
invokespecial java.lang.Thread.<init>:(Ljava/lang/Runnable;)V
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
2: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
iconst_1
invokevirtual java.lang.Thread.setDaemon:(Z)V
3: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
iconst_1
invokevirtual java.lang.Thread.setPriority:(I)V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.start:()V
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
public void stop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.shouldRun:Z
1: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
ifnull 7
2: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
3: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.join:()V
4: goto 6
StackMap locals:
StackMap stack: java.lang.InterruptedException
5: pop
6: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
Exception table:
from to target type
3 4 5 Class java.lang.InterruptedException
public void run();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=6, args_size=1
start local 0 0: goto 35
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
dup
astore 2
monitorenter
2: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokeinterface java.util.Set.toArray:()[Ljava/lang/Object;
astore 1
start local 1 3: aload 2
monitorexit
4: goto 7
end local 1 StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor top java.util.Map
StackMap stack: java.lang.Throwable
5: aload 2
monitorexit
6: athrow
start local 1 7: StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor java.lang.Object[]
StackMap stack:
iconst_0
istore 2
start local 2 8: goto 25
9: StackMap locals: int
StackMap stack:
aload 1
iload 2
aaload
checkcast org.apache.commons.vfs2.FileName
astore 3
start local 3 10: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
dup
astore 5
monitorenter
11: aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorMap:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent
astore 4
start local 4 12: aload 5
monitorexit
13: goto 16
end local 4 StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor java.lang.Object[] int org.apache.commons.vfs2.FileName top java.util.Map
StackMap stack: java.lang.Throwable
14: aload 5
monitorexit
15: athrow
start local 4 16: StackMap locals: org.apache.commons.vfs2.impl.DefaultFileMonitor java.lang.Object[] int org.apache.commons.vfs2.FileName org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent
StackMap stack:
aload 4
ifnull 18
17: aload 4
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent.check:()V
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.getChecksPerRun:()I
ifle 22
iload 2
iconst_1
iadd
aload 0
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.getChecksPerRun:()I
irem
ifne 22
19: aload 0
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.getDelay:()J
invokestatic java.lang.Thread.sleep:(J)V
20: goto 22
StackMap locals:
StackMap stack: java.lang.InterruptedException
21: pop
22: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.isInterrupted:()Z
ifne 35
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.shouldRun:Z
ifne 24
23: goto 35
end local 4 end local 3 24: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
25: iload 2
aload 1
arraylength
if_icmplt 9
end local 2 26: goto 28
27: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.addStack:Ljava/util/Stack;
invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
checkcast org.apache.commons.vfs2.FileObject
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.addFile:(Lorg/apache/commons/vfs2/FileObject;)V
28: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.addStack:Ljava/util/Stack;
invokevirtual java.util.Stack.empty:()Z
ifeq 27
29: goto 31
30: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.deleteStack:Ljava/util/Stack;
invokevirtual java.util.Stack.pop:()Ljava/lang/Object;
checkcast org.apache.commons.vfs2.FileObject
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.removeFile:(Lorg/apache/commons/vfs2/FileObject;)V
31: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.deleteStack:Ljava/util/Stack;
invokevirtual java.util.Stack.empty:()Z
ifeq 30
32: aload 0
invokevirtual org.apache.commons.vfs2.impl.DefaultFileMonitor.getDelay:()J
invokestatic java.lang.Thread.sleep:(J)V
33: goto 35
StackMap locals:
StackMap stack: java.lang.InterruptedException
34: pop
end local 1 35: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.monitorThread:Ljava/lang/Thread;
invokevirtual java.lang.Thread.isInterrupted:()Z
ifne 36
aload 0
getfield org.apache.commons.vfs2.impl.DefaultFileMonitor.shouldRun:Z
ifne 1
36: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.apache.commons.vfs2.impl.DefaultFileMonitor.shouldRun:Z
37: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/apache/commons/vfs2/impl/DefaultFileMonitor;
3 5 1 fileNames [Ljava/lang/Object;
7 35 1 fileNames [Ljava/lang/Object;
8 26 2 iterFileNames I
10 24 3 fileName Lorg/apache/commons/vfs2/FileName;
12 14 4 agent Lorg/apache/commons/vfs2/impl/DefaultFileMonitor$FileMonitorAgent;
16 24 4 agent Lorg/apache/commons/vfs2/impl/DefaultFileMonitor$FileMonitorAgent;
Exception table:
from to target type
2 4 5 any
5 6 5 any
11 13 14 any
14 15 14 any
19 20 21 Class java.lang.InterruptedException
32 33 34 Class java.lang.InterruptedException
}
SourceFile: "DefaultFileMonitor.java"
NestMembers:
org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent
InnerClasses:
private final FileMonitorAgent = org.apache.commons.vfs2.impl.DefaultFileMonitor$FileMonitorAgent of org.apache.commons.vfs2.impl.DefaultFileMonitor