abstract class com.apple.eawt._AppEventHandler$_AppEventMultiplexor<L>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.apple.eawt._AppEventHandler$_AppEventMultiplexor
super_class: java.lang.Object
{
private final java.util.Map<L, sun.awt.AppContext> listenerToAppContext;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<TL;Lsun/awt/AppContext;>;
boolean nativeListenerRegistered;
descriptor: Z
flags: (0x0000)
final com.apple.eawt._AppEventHandler this$0;
descriptor: Lcom/apple/eawt/_AppEventHandler;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.apple.eawt._AppEventHandler);
descriptor: (Lcom/apple/eawt/_AppEventHandler;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.this$0:Lcom/apple/eawt/_AppEventHandler;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: new java.util.IdentityHashMap
dup
invokespecial java.util.IdentityHashMap.<init>:()V
putfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.listenerToAppContext:Ljava/util/Map;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor<TL;>;
MethodParameters:
Name Flags
this$0 final
void dispatch(com.apple.eawt._AppEventHandler$_NativeEvent, java.lang.Object[]);
descriptor: (Lcom/apple/eawt/_AppEventHandler$_NativeEvent;[Ljava/lang/Object;)V
flags: (0x0080) ACC_VARARGS
Code:
stack=6, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
dup
astore 4
monitorenter
1: aload 0
getfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.listenerToAppContext:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
ifne 4
2: aload 4
monitorexit
3: return
4: StackMap locals: com.apple.eawt._AppEventHandler$_AppEventMultiplexor com.apple.eawt._AppEventHandler$_NativeEvent java.lang.Object[] top com.apple.eawt._AppEventHandler$_AppEventMultiplexor
StackMap stack:
new java.util.ArrayList
dup
aload 0
getfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.listenerToAppContext:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
invokespecial java.util.ArrayList.<init>:(I)V
astore 3
start local 3 5: aload 3
aload 0
getfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.listenerToAppContext:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokevirtual java.util.ArrayList.addAll:(Ljava/util/Collection;)Z
pop
6: aload 4
monitorexit
7: goto 10
end local 3 StackMap locals:
StackMap stack: java.lang.Throwable
8: aload 4
monitorexit
9: athrow
start local 3 10: StackMap locals: com.apple.eawt._AppEventHandler$_AppEventMultiplexor com.apple.eawt._AppEventHandler$_NativeEvent java.lang.Object[] java.util.ArrayList
StackMap stack:
aload 3
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 5
goto 15
StackMap locals: com.apple.eawt._AppEventHandler$_AppEventMultiplexor com.apple.eawt._AppEventHandler$_NativeEvent java.lang.Object[] java.util.ArrayList top java.util.Iterator
StackMap stack:
11: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 12: aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
astore 6
start local 6 13: aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast sun.awt.AppContext
astore 7
start local 7 14: aload 7
new com.apple.eawt._AppEventHandler$_AppEventMultiplexor$1
dup
aload 0
aload 6
aload 1
invokespecial com.apple.eawt._AppEventHandler$_AppEventMultiplexor$1.<init>:(Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor;Ljava/lang/Object;Lcom/apple/eawt/_AppEventHandler$_NativeEvent;)V
invokestatic sun.awt.SunToolkit.invokeLaterOnAppContext:(Lsun/awt/AppContext;Ljava/lang/Runnable;)V
end local 7 end local 6 end local 4 15: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
16: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor<TL;>;
0 17 1 event Lcom/apple/eawt/_AppEventHandler$_NativeEvent;
0 17 2 args [Ljava/lang/Object;
5 8 3 localEntries Ljava/util/ArrayList<Ljava/util/Map$Entry<TL;Lsun/awt/AppContext;>;>;
10 17 3 localEntries Ljava/util/ArrayList<Ljava/util/Map$Entry<TL;Lsun/awt/AppContext;>;>;
12 15 4 e Ljava/util/Map$Entry<TL;Lsun/awt/AppContext;>;
13 15 6 listener TL;
14 15 7 listenerContext Lsun/awt/AppContext;
Exception table:
from to target type
1 3 8 any
4 7 8 any
8 9 8 any
MethodParameters:
Name Flags
event final
args final
synchronized void addListener();
descriptor: (Ljava/lang/Object;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
invokevirtual com.apple.eawt._AppEventHandler$_AppEventMultiplexor.setListenerContext:(Ljava/lang/Object;Lsun/awt/AppContext;)V
1: aload 0
getfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.nativeListenerRegistered:Z
ifne 4
2: aload 0
invokevirtual com.apple.eawt._AppEventHandler$_AppEventMultiplexor.registerNativeListener:()V
3: aload 0
iconst_1
putfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.nativeListenerRegistered:Z
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor<TL;>;
0 5 1 listener TL;
Signature: (TL;)V
MethodParameters:
Name Flags
listener final
synchronized void removeListener();
descriptor: (Ljava/lang/Object;)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.listenerToAppContext:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.remove:(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 Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor<TL;>;
0 2 1 listener TL;
Signature: (TL;)V
MethodParameters:
Name Flags
listener final
abstract void performOnListener(L, com.apple.eawt._AppEventHandler$_NativeEvent);
descriptor: (Ljava/lang/Object;Lcom/apple/eawt/_AppEventHandler$_NativeEvent;)V
flags: (0x0400) ACC_ABSTRACT
Signature: (TL;Lcom/apple/eawt/_AppEventHandler$_NativeEvent;)V
MethodParameters:
Name Flags
listener
event final
void registerNativeListener();
descriptor: ()V
flags: (0x0000)
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor<TL;>;
private void setListenerContext(L, sun.awt.AppContext);
descriptor: (Ljava/lang/Object;Lsun/awt/AppContext;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 4
1: new java.lang.RuntimeException
dup
2: ldc "Attempting to add a listener from a thread group without AppContext"
3: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield com.apple.eawt._AppEventHandler$_AppEventMultiplexor.listenerToAppContext:Ljava/util/Map;
aload 1
invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/apple/eawt/_AppEventHandler$_AppEventMultiplexor<TL;>;
0 6 1 listener TL;
0 6 2 listenerContext Lsun/awt/AppContext;
Signature: (TL;Lsun/awt/AppContext;)V
MethodParameters:
Name Flags
listener
listenerContext
}
Signature: <L:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "_AppEventHandler.java"
NestHost: com.apple.eawt._AppEventHandler
InnerClasses:
abstract _AppEventMultiplexor = com.apple.eawt._AppEventHandler$_AppEventMultiplexor of com.apple.eawt._AppEventHandler
com.apple.eawt._AppEventHandler$_AppEventMultiplexor$1
_NativeEvent = com.apple.eawt._AppEventHandler$_NativeEvent of com.apple.eawt._AppEventHandler
public abstract Entry = java.util.Map$Entry of java.util.Map