class org.eclipse.debug.core.DebugPlugin$EventDispatchJob extends org.eclipse.core.runtime.jobs.Job
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.eclipse.debug.core.DebugPlugin$EventDispatchJob
super_class: org.eclipse.core.runtime.jobs.Job
{
org.eclipse.debug.core.DebugPlugin$EventNotifier fNotifier;
descriptor: Lorg/eclipse/debug/core/DebugPlugin$EventNotifier;
flags: (0x0000)
org.eclipse.debug.core.DebugPlugin$AsynchRunner fRunner;
descriptor: Lorg/eclipse/debug/core/DebugPlugin$AsynchRunner;
flags: (0x0000)
final org.eclipse.debug.core.DebugPlugin this$0;
descriptor: Lorg/eclipse/debug/core/DebugPlugin;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(org.eclipse.debug.core.DebugPlugin);
descriptor: (Lorg/eclipse/debug/core/DebugPlugin;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
0: .line 439
aload 0 /* this */
aload 1
putfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
1: .line 440
aload 0 /* this */
getstatic org.eclipse.debug.internal.core.DebugCoreMessages.DebugPlugin_1:Ljava/lang/String;
invokespecial org.eclipse.core.runtime.jobs.Job.<init>:(Ljava/lang/String;)V
2: .line 433
aload 0 /* this */
new org.eclipse.debug.core.DebugPlugin$EventNotifier
dup
aload 1
invokespecial org.eclipse.debug.core.DebugPlugin$EventNotifier.<init>:(Lorg/eclipse/debug/core/DebugPlugin;)V
putfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.fNotifier:Lorg/eclipse/debug/core/DebugPlugin$EventNotifier;
3: .line 434
aload 0 /* this */
new org.eclipse.debug.core.DebugPlugin$AsynchRunner
dup
aload 1
invokespecial org.eclipse.debug.core.DebugPlugin$AsynchRunner.<init>:(Lorg/eclipse/debug/core/DebugPlugin;)V
putfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.fRunner:Lorg/eclipse/debug/core/DebugPlugin$AsynchRunner;
4: .line 441
aload 0 /* this */
bipush 10
invokevirtual org.eclipse.debug.core.DebugPlugin$EventDispatchJob.setPriority:(I)V
5: .line 442
aload 0 /* this */
iconst_1
invokevirtual org.eclipse.debug.core.DebugPlugin$EventDispatchJob.setSystem:(Z)V
6: .line 443
return
end local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/eclipse/debug/core/DebugPlugin$EventDispatchJob;
MethodParameters:
Name Flags
this$0 final
protected org.eclipse.core.runtime.IStatus run(org.eclipse.core.runtime.IProgressMonitor);
descriptor: (Lorg/eclipse/core/runtime/IProgressMonitor;)Lorg/eclipse/core/runtime/IStatus;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=2
start local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
start local 1 // org.eclipse.core.runtime.IProgressMonitor monitor
0: .line 448
goto 14
1: .line 449
StackMap locals:
StackMap stack:
aconst_null
astore 2 /* next */
start local 2 // java.lang.Object next
2: .line 450
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
getfield org.eclipse.debug.core.DebugPlugin.fEventQueue:Ljava/util/List;
dup
astore 3
monitorenter
3: .line 451
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
getfield org.eclipse.debug.core.DebugPlugin.fEventQueue:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 5
4: .line 452
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
getfield org.eclipse.debug.core.DebugPlugin.fEventQueue:Ljava/util/List;
iconst_0
invokeinterface java.util.List.remove:(I)Ljava/lang/Object;
astore 2 /* next */
5: .line 450
StackMap locals: java.lang.Object java.util.List
StackMap stack:
aload 3
monitorexit
6: goto 9
StackMap locals:
StackMap stack: java.lang.Throwable
7: aload 3
monitorexit
8: athrow
9: .line 455
StackMap locals:
StackMap stack:
aload 2 /* next */
instanceof java.lang.Runnable
ifeq 12
10: .line 456
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.fRunner:Lorg/eclipse/debug/core/DebugPlugin$AsynchRunner;
aload 2 /* next */
checkcast java.lang.Runnable
invokevirtual org.eclipse.debug.core.DebugPlugin$AsynchRunner.async:(Ljava/lang/Runnable;)V
11: .line 457
goto 14
StackMap locals:
StackMap stack:
12: aload 2 /* next */
ifnull 14
13: .line 458
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.fNotifier:Lorg/eclipse/debug/core/DebugPlugin$EventNotifier;
aload 2 /* next */
checkcast org.eclipse.debug.core.DebugEvent[]
invokevirtual org.eclipse.debug.core.DebugPlugin$EventNotifier.dispatch:([Lorg/eclipse/debug/core/DebugEvent;)V
end local 2 // java.lang.Object next
14: .line 448
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
getfield org.eclipse.debug.core.DebugPlugin.fEventQueue:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 1
15: .line 461
getstatic org.eclipse.core.runtime.Status.OK_STATUS:Lorg/eclipse/core/runtime/IStatus;
areturn
end local 1 // org.eclipse.core.runtime.IProgressMonitor monitor
end local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/debug/core/DebugPlugin$EventDispatchJob;
0 16 1 monitor Lorg/eclipse/core/runtime/IProgressMonitor;
2 14 2 next Ljava/lang/Object;
Exception table:
from to target type
3 6 7 any
7 8 7 any
MethodParameters:
Name Flags
monitor
public boolean shouldRun();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
0: .line 466
aload 0 /* this */
invokevirtual org.eclipse.debug.core.DebugPlugin$EventDispatchJob.shouldSchedule:()Z
ireturn
end local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/debug/core/DebugPlugin$EventDispatchJob;
public boolean shouldSchedule();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
0: .line 471
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
invokevirtual org.eclipse.debug.core.DebugPlugin.isShuttingDown:()Z
ifne 1
aload 0 /* this */
getfield org.eclipse.debug.core.DebugPlugin$EventDispatchJob.this$0:Lorg/eclipse/debug/core/DebugPlugin;
getfield org.eclipse.debug.core.DebugPlugin.fEventListeners:Lorg/eclipse/core/runtime/ListenerList;
invokevirtual org.eclipse.core.runtime.ListenerList.isEmpty:()Z
ifeq 2
StackMap locals:
StackMap stack:
1: iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: ireturn
end local 0 // org.eclipse.debug.core.DebugPlugin$EventDispatchJob this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/eclipse/debug/core/DebugPlugin$EventDispatchJob;
}
SourceFile: "DebugPlugin.java"
NestHost: org.eclipse.debug.core.DebugPlugin
InnerClasses:
AsynchRunner = org.eclipse.debug.core.DebugPlugin$AsynchRunner of org.eclipse.debug.core.DebugPlugin
EventDispatchJob = org.eclipse.debug.core.DebugPlugin$EventDispatchJob of org.eclipse.debug.core.DebugPlugin
EventNotifier = org.eclipse.debug.core.DebugPlugin$EventNotifier of org.eclipse.debug.core.DebugPlugin