public class sun.awt.X11.XMSelection
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.awt.X11.XMSelection
super_class: java.lang.Object
{
private static sun.util.logging.PlatformLogger log;
descriptor: Lsun/util/logging/PlatformLogger;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
java.lang.String selectionName;
descriptor: Ljava/lang/String;
flags: (0x0000)
java.util.Vector listeners;
descriptor: Ljava/util/Vector;
flags: (0x0000)
sun.awt.X11.XAtom[] atoms;
descriptor: [Lsun/awt/X11/XAtom;
flags: (0x0000)
long[] owners;
descriptor: [J
flags: (0x0000)
long eventMask;
descriptor: J
flags: (0x0000)
static int numScreens;
descriptor: I
flags: (0x0008) ACC_STATIC
static sun.awt.X11.XAtom XA_MANAGER;
descriptor: Lsun/awt/X11/XAtom;
flags: (0x0008) ACC_STATIC
static java.util.HashMap selectionMap;
descriptor: Ljava/util/HashMap;
flags: (0x0008) ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=0
0: ldc "sun.awt.X11.XMSelection"
invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
putstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
1: invokestatic sun.awt.X11.XToolkit.getDisplay:()J
lstore 0
start local 0 2: invokestatic sun.awt.X11.XToolkit.awtLock:()V
3: lload 0
invokestatic sun.awt.X11.XlibWrapper.ScreenCount:(J)I
putstatic sun.awt.X11.XMSelection.numScreens:I
4: goto 8
StackMap locals: long
StackMap stack: java.lang.Throwable
5: astore 2
6: invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
7: aload 2
athrow
8: StackMap locals:
StackMap stack:
invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
9: ldc "MANAGER"
invokestatic sun.awt.X11.XAtom.get:(Ljava/lang/String;)Lsun/awt/X11/XAtom;
putstatic sun.awt.X11.XMSelection.XA_MANAGER:Lsun/awt/X11/XAtom;
10: iconst_0
istore 2
start local 2 11: goto 14
12: StackMap locals: int
StackMap stack:
lload 0
iload 2
invokestatic sun.awt.X11.XMSelection.initScreen:(JI)V
13: iinc 2 1
StackMap locals:
StackMap stack:
14: iload 2
getstatic sun.awt.X11.XMSelection.numScreens:I
if_icmplt 12
end local 2 15: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic sun.awt.X11.XMSelection.selectionMap:Ljava/util/HashMap;
end local 0 16: return
LocalVariableTable:
Start End Slot Name Signature
2 16 0 display J
11 15 2 screen I
Exception table:
from to target type
3 5 5 any
static void initScreen(long, int);
descriptor: (JI)V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 2 0: invokestatic sun.awt.X11.XToolkit.awtLock:()V
1: lload 0
iload 2
i2l
invokestatic sun.awt.X11.XlibWrapper.RootWindow:(JJ)J
lstore 3
start local 3 2: lload 0
lload 3
ldc 131072
invokestatic sun.awt.X11.XlibWrapper.XSelectInput:(JJJ)V
3: lload 3
4: new sun.awt.X11.XMSelection$1
dup
iload 2
invokespecial sun.awt.X11.XMSelection$1.<init>:(I)V
5: invokestatic sun.awt.X11.XToolkit.addEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
end local 3 6: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 5
8: invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
9: aload 5
athrow
10: StackMap locals:
StackMap stack:
invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
11: return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 display J
0 12 2 screen I
2 6 3 root J
Exception table:
from to target type
1 7 7 any
MethodParameters:
Name Flags
display
screen final
public int getNumberOfScreens();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic sun.awt.X11.XMSelection.numScreens:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/X11/XMSelection;
void select(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
lload 1
putfield sun.awt.X11.XMSelection.eventMask:J
1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
iload 3
lload 1
invokevirtual sun.awt.X11.XMSelection.selectPerScreen:(IJ)V
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
getstatic sun.awt.X11.XMSelection.numScreens:I
if_icmplt 3
end local 3 6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/awt/X11/XMSelection;
0 7 1 extra_mask J
2 6 3 screen I
MethodParameters:
Name Flags
extra_mask
void resetOwner(long, int);
descriptor: (JI)V
flags: (0x0000)
Code:
stack=8, locals=8, args_size=3
start local 0 start local 1 start local 3 0: invokestatic sun.awt.X11.XToolkit.awtLock:()V
1: invokestatic sun.awt.X11.XToolkit.getDisplay:()J
lstore 4
start local 4 2: aload 0
dup
astore 6
monitorenter
3: aload 0
lload 1
iload 3
invokevirtual sun.awt.X11.XMSelection.setOwner:(JI)V
4: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 6
5: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "New Selection Owner for screen "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
6: StackMap locals: long sun.awt.X11.XMSelection
StackMap stack:
lload 4
lload 1
ldc 131072
aload 0
getfield sun.awt.X11.XMSelection.eventMask:J
lor
invokestatic sun.awt.X11.XlibWrapper.XSelectInput:(JJJ)V
7: lload 1
8: new sun.awt.X11.XMSelection$2
dup
aload 0
iload 3
invokespecial sun.awt.X11.XMSelection$2.<init>:(Lsun/awt/X11/XMSelection;I)V
9: invokestatic sun.awt.X11.XToolkit.addEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
10: aload 6
monitorexit
11: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 6
monitorexit
13: athrow
end local 4 14: StackMap locals: sun.awt.X11.XMSelection long int
StackMap stack: java.lang.Throwable
astore 7
15: invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
16: aload 7
athrow
17: StackMap locals:
StackMap stack:
invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
18: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/awt/X11/XMSelection;
0 19 1 owner J
0 19 3 screen I
2 14 4 display J
Exception table:
from to target type
3 11 12 any
12 13 12 any
1 14 14 any
MethodParameters:
Name Flags
owner
screen final
void selectPerScreen(int, long);
descriptor: (IJ)V
flags: (0x0000)
Code:
stack=8, locals=13, args_size=3
start local 0 start local 1 start local 2 0: invokestatic sun.awt.X11.XToolkit.awtLock:()V
1: invokestatic sun.awt.X11.XToolkit.getDisplay:()J
lstore 4
start local 4 2: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 4
3: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
ldc "Grabbing XServer"
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
4: StackMap locals: long
StackMap stack:
lload 4
invokestatic sun.awt.X11.XlibWrapper.XGrabServer:(J)V
5: aload 0
dup
astore 6
monitorenter
6: new java.lang.StringBuilder
dup
aload 0
invokevirtual sun.awt.X11.XMSelection.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "_S"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 7: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 9
8: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "Screen = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " selection name = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
9: StackMap locals: sun.awt.X11.XMSelection java.lang.String
StackMap stack:
aload 7
invokestatic sun.awt.X11.XAtom.get:(Ljava/lang/String;)Lsun/awt/X11/XAtom;
astore 8
start local 8 10: getstatic sun.awt.X11.XMSelection.selectionMap:Ljava/util/HashMap;
aload 8
invokevirtual sun.awt.X11.XAtom.getAtom:()J
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 0
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
11: aload 0
aload 8
iload 1
invokevirtual sun.awt.X11.XMSelection.setAtom:(Lsun/awt/X11/XAtom;I)V
12: lload 4
aload 8
invokevirtual sun.awt.X11.XAtom.getAtom:()J
invokestatic sun.awt.X11.XlibWrapper.XGetSelectionOwner:(JJ)J
lstore 9
start local 9 13: lload 9
lconst_0
lcmp
ifeq 21
14: aload 0
lload 9
iload 1
invokevirtual sun.awt.X11.XMSelection.setOwner:(JI)V
15: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 17
16: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "Selection Owner for screen "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
lload 9
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
17: StackMap locals: sun.awt.X11.XAtom long
StackMap stack:
lload 4
lload 9
ldc 131072
lload 2
lor
invokestatic sun.awt.X11.XlibWrapper.XSelectInput:(JJJ)V
18: lload 9
19: new sun.awt.X11.XMSelection$3
dup
aload 0
iload 1
invokespecial sun.awt.X11.XMSelection$3.<init>:(Lsun/awt/X11/XMSelection;I)V
20: invokestatic sun.awt.X11.XToolkit.addEventDispatcher:(JLsun/awt/X11/XEventDispatcher;)V
end local 9 end local 8 end local 7 21: StackMap locals:
StackMap stack:
aload 6
monitorexit
22: goto 35
StackMap locals:
StackMap stack: java.lang.Throwable
23: aload 6
monitorexit
24: athrow
end local 4 25: StackMap locals: sun.awt.X11.XMSelection int long
StackMap stack: java.lang.Exception
astore 4
start local 4 26: aload 4
invokevirtual java.lang.Exception.printStackTrace:()V
end local 4 27: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 29
28: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
ldc "UnGrabbing XServer"
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
29: StackMap locals:
StackMap stack:
invokestatic sun.awt.X11.XToolkit.getDisplay:()J
invokestatic sun.awt.X11.XlibWrapper.XUngrabServer:(J)V
goto 42
30: StackMap locals:
StackMap stack: java.lang.Throwable
astore 11
31: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 33
32: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
ldc "UnGrabbing XServer"
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
33: StackMap locals: sun.awt.X11.XMSelection int long top top top top top top top java.lang.Throwable
StackMap stack:
invokestatic sun.awt.X11.XToolkit.getDisplay:()J
invokestatic sun.awt.X11.XlibWrapper.XUngrabServer:(J)V
34: aload 11
athrow
35: StackMap locals: sun.awt.X11.XMSelection int long
StackMap stack:
getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 37
36: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
ldc "UnGrabbing XServer"
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
37: StackMap locals:
StackMap stack:
invokestatic sun.awt.X11.XToolkit.getDisplay:()J
invokestatic sun.awt.X11.XlibWrapper.XUngrabServer:(J)V
38: goto 42
StackMap locals:
StackMap stack: java.lang.Throwable
39: astore 12
40: invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
41: aload 12
athrow
42: StackMap locals:
StackMap stack:
invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
43: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lsun/awt/X11/XMSelection;
0 44 1 screen I
0 44 2 extra_mask J
2 25 4 display J
7 21 7 selection_name Ljava/lang/String;
10 21 8 atom Lsun/awt/X11/XAtom;
13 21 9 owner J
26 27 4 e Ljava/lang/Exception;
Exception table:
from to target type
6 22 23 any
23 24 23 any
1 25 25 Class java.lang.Exception
1 27 30 any
1 39 39 any
MethodParameters:
Name Flags
screen final
extra_mask
static boolean processClientMessage(sun.awt.X11.XEvent, int);
descriptor: (Lsun/awt/X11/XEvent;I)Z
flags: (0x0008) ACC_STATIC
Code:
stack=9, locals=12, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.awt.X11.XEvent.get_xclient:()Lsun/awt/X11/XClientMessageEvent;
astore 2
start local 2 1: aload 2
invokevirtual sun.awt.X11.XClientMessageEvent.get_message_type:()J
getstatic sun.awt.X11.XMSelection.XA_MANAGER:Lsun/awt/X11/XAtom;
invokevirtual sun.awt.X11.XAtom.getAtom:()J
lcmp
ifne 12
2: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 4
3: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "client messags = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
4: StackMap locals: sun.awt.X11.XClientMessageEvent
StackMap stack:
aload 2
iconst_0
invokevirtual sun.awt.X11.XClientMessageEvent.get_data:(I)J
lstore 3
start local 3 5: aload 2
iconst_1
invokevirtual sun.awt.X11.XClientMessageEvent.get_data:(I)J
lstore 5
start local 5 6: aload 2
iconst_2
invokevirtual sun.awt.X11.XClientMessageEvent.get_data:(I)J
lstore 7
start local 7 7: aload 2
iconst_3
invokevirtual sun.awt.X11.XClientMessageEvent.get_data:(I)J
lstore 9
start local 9 8: lload 5
invokestatic sun.awt.X11.XMSelection.getInstance:(J)Lsun/awt/X11/XMSelection;
astore 11
start local 11 9: aload 11
ifnull 12
10: aload 11
lload 7
iload 1
invokevirtual sun.awt.X11.XMSelection.resetOwner:(JI)V
11: aload 11
aload 0
iload 1
lload 7
lload 9
lload 3
invokevirtual sun.awt.X11.XMSelection.dispatchOwnerChangedEvent:(Lsun/awt/X11/XEvent;IJJJ)V
end local 11 end local 9 end local 7 end local 5 end local 3 12: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 xev Lsun/awt/X11/XEvent;
0 13 1 screen I
1 13 2 xce Lsun/awt/X11/XClientMessageEvent;
5 12 3 timestamp J
6 12 5 atom J
7 12 7 owner J
8 12 9 data J
9 12 11 sel Lsun/awt/X11/XMSelection;
MethodParameters:
Name Flags
xev
screen
static boolean processRootEvent(sun.awt.X11.XEvent, int);
descriptor: (Lsun/awt/X11/XEvent;I)Z
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.awt.X11.XEvent.get_type:()I
tableswitch { // 33 - 33
33: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 0
iload 1
invokestatic sun.awt.X11.XMSelection.processClientMessage:(Lsun/awt/X11/XEvent;I)Z
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 xev Lsun/awt/X11/XEvent;
0 3 1 screen I
MethodParameters:
Name Flags
xev
screen
static sun.awt.X11.XMSelection getInstance(long);
descriptor: (J)Lsun/awt/X11/XMSelection;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic sun.awt.X11.XMSelection.selectionMap:Ljava/util/HashMap;
lload 0
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.awt.X11.XMSelection
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 selection J
MethodParameters:
Name Flags
selection
public void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc 4194304
invokespecial sun.awt.X11.XMSelection.<init>:(Ljava/lang/String;J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/awt/X11/XMSelection;
0 2 1 selname Ljava/lang/String;
MethodParameters:
Name Flags
selname
public void <init>(java.lang.String, long);
descriptor: (Ljava/lang/String;J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
dup
astore 4
monitorenter
2: aload 0
aload 1
putfield sun.awt.X11.XMSelection.selectionName:Ljava/lang/String;
3: aload 0
aload 0
invokevirtual sun.awt.X11.XMSelection.getNumberOfScreens:()I
anewarray sun.awt.X11.XAtom
putfield sun.awt.X11.XMSelection.atoms:[Lsun/awt/X11/XAtom;
4: aload 0
aload 0
invokevirtual sun.awt.X11.XMSelection.getNumberOfScreens:()I
newarray 11
putfield sun.awt.X11.XMSelection.owners:[J
5: aload 4
monitorexit
6: goto 9
StackMap locals: sun.awt.X11.XMSelection java.lang.String long sun.awt.X11.XMSelection
StackMap stack: java.lang.Throwable
7: aload 4
monitorexit
8: athrow
9: StackMap locals:
StackMap stack:
aload 0
lload 2
invokevirtual sun.awt.X11.XMSelection.select:(J)V
10: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/awt/X11/XMSelection;
0 11 1 selname Ljava/lang/String;
0 11 2 extraMask J
Exception table:
from to target type
2 6 7 any
7 8 7 any
MethodParameters:
Name Flags
selname
extraMask
public synchronized void addSelectionListener(sun.awt.X11.XMSelectionListener);
descriptor: (Lsun/awt/X11/XMSelectionListener;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
ifnonnull 2
1: aload 0
new java.util.Vector
dup
invokespecial java.util.Vector.<init>:()V
putfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.add:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/awt/X11/XMSelection;
0 4 1 listener Lsun/awt/X11/XMSelectionListener;
MethodParameters:
Name Flags
listener
public synchronized void removeSelectionListener(sun.awt.X11.XMSelectionListener);
descriptor: (Lsun/awt/X11/XMSelectionListener;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
ifnull 2
1: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
aload 1
invokevirtual java.util.Vector.remove:(Ljava/lang/Object;)Z
pop
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/X11/XMSelection;
0 3 1 listener Lsun/awt/X11/XMSelectionListener;
MethodParameters:
Name Flags
listener
synchronized java.util.Collection getListeners();
descriptor: ()Ljava/util/Collection;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/X11/XMSelection;
synchronized sun.awt.X11.XAtom getAtom(int);
descriptor: (I)Lsun/awt/X11/XAtom;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.awt.X11.XMSelection.atoms:[Lsun/awt/X11/XAtom;
ifnull 2
1: aload 0
getfield sun.awt.X11.XMSelection.atoms:[Lsun/awt/X11/XAtom;
iload 1
aaload
areturn
2: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/X11/XMSelection;
0 3 1 screen I
MethodParameters:
Name Flags
screen
synchronized void setAtom(sun.awt.X11.XAtom, int);
descriptor: (Lsun/awt/X11/XAtom;I)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.awt.X11.XMSelection.atoms:[Lsun/awt/X11/XAtom;
ifnull 2
1: aload 0
getfield sun.awt.X11.XMSelection.atoms:[Lsun/awt/X11/XAtom;
iload 2
aload 1
aastore
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/X11/XMSelection;
0 3 1 a Lsun/awt/X11/XAtom;
0 3 2 screen I
MethodParameters:
Name Flags
a
screen
synchronized long getOwner(int);
descriptor: (I)J
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.awt.X11.XMSelection.owners:[J
ifnull 2
1: aload 0
getfield sun.awt.X11.XMSelection.owners:[J
iload 1
laload
lreturn
2: StackMap locals:
StackMap stack:
lconst_0
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/X11/XMSelection;
0 3 1 screen I
MethodParameters:
Name Flags
screen
synchronized void setOwner(long, int);
descriptor: (JI)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield sun.awt.X11.XMSelection.owners:[J
ifnull 2
1: aload 0
getfield sun.awt.X11.XMSelection.owners:[J
iload 3
lload 1
lastore
2: StackMap locals:
StackMap stack:
return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/awt/X11/XMSelection;
0 3 1 owner J
0 3 3 screen I
MethodParameters:
Name Flags
owner
screen
synchronized java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.awt.X11.XMSelection.selectionName:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/awt/X11/XMSelection;
synchronized void dispatchSelectionChanged(sun.awt.X11.XPropertyEvent, int);
descriptor: (Lsun/awt/X11/XPropertyEvent;I)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 2
1: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "Selection Changed : Screen = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "Event ="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
ifnull 8
3: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
invokevirtual java.util.Vector.iterator:()Ljava/util/Iterator;
astore 3
start local 3 4: goto 7
5: StackMap locals: java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.awt.X11.XMSelectionListener
astore 4
start local 4 6: aload 4
iload 2
aload 0
aload 1
invokevirtual sun.awt.X11.XPropertyEvent.get_window:()J
aload 1
invokeinterface sun.awt.X11.XMSelectionListener.selectionChanged:(ILsun/awt/X11/XMSelection;JLsun/awt/X11/XPropertyEvent;)V
end local 4 7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 3 8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/awt/X11/XMSelection;
0 9 1 ev Lsun/awt/X11/XPropertyEvent;
0 9 2 screen I
4 8 3 iter Ljava/util/Iterator;
6 7 4 disp Lsun/awt/X11/XMSelectionListener;
MethodParameters:
Name Flags
ev
screen
synchronized void dispatchOwnerDeath(sun.awt.X11.XDestroyWindowEvent, int);
descriptor: (Lsun/awt/X11/XDestroyWindowEvent;I)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 2
1: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "Owner dead : Screen = "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "Event ="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
ifnull 8
3: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
invokevirtual java.util.Vector.iterator:()Ljava/util/Iterator;
astore 3
start local 3 4: goto 7
5: StackMap locals: java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.awt.X11.XMSelectionListener
astore 4
start local 4 6: aload 4
iload 2
aload 0
aload 1
invokevirtual sun.awt.X11.XDestroyWindowEvent.get_window:()J
invokeinterface sun.awt.X11.XMSelectionListener.ownerDeath:(ILsun/awt/X11/XMSelection;J)V
end local 4 7: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 5
end local 3 8: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/awt/X11/XMSelection;
0 9 1 de Lsun/awt/X11/XDestroyWindowEvent;
0 9 2 screen I
4 8 3 iter Ljava/util/Iterator;
6 7 4 disp Lsun/awt/X11/XMSelectionListener;
MethodParameters:
Name Flags
de
screen
void dispatchSelectionEvent(sun.awt.X11.XEvent, int);
descriptor: (Lsun/awt/X11/XEvent;I)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINE:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 2
1: getstatic sun.awt.X11.XMSelection.log:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "Event ="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.fine:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.awt.X11.XEvent.get_type:()I
bipush 17
if_icmpne 6
3: aload 1
invokevirtual sun.awt.X11.XEvent.get_xdestroywindow:()Lsun/awt/X11/XDestroyWindowEvent;
astore 3
start local 3 4: aload 0
aload 3
iload 2
invokevirtual sun.awt.X11.XMSelection.dispatchOwnerDeath:(Lsun/awt/X11/XDestroyWindowEvent;I)V
end local 3 5: goto 9
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.awt.X11.XEvent.get_type:()I
bipush 28
if_icmpne 9
7: aload 1
invokevirtual sun.awt.X11.XEvent.get_xproperty:()Lsun/awt/X11/XPropertyEvent;
astore 3
start local 3 8: aload 0
aload 3
iload 2
invokevirtual sun.awt.X11.XMSelection.dispatchSelectionChanged:(Lsun/awt/X11/XPropertyEvent;I)V
end local 3 9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/awt/X11/XMSelection;
0 10 1 xev Lsun/awt/X11/XEvent;
0 10 2 screen I
4 5 3 de Lsun/awt/X11/XDestroyWindowEvent;
8 9 3 xpe Lsun/awt/X11/XPropertyEvent;
MethodParameters:
Name Flags
xev
screen
synchronized void dispatchOwnerChangedEvent(sun.awt.X11.XEvent, int, long, long, long);
descriptor: (Lsun/awt/X11/XEvent;IJJJ)V
flags: (0x0020) ACC_SYNCHRONIZED
Code:
stack=9, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 5 start local 7 0: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
ifnull 6
1: aload 0
getfield sun.awt.X11.XMSelection.listeners:Ljava/util/Vector;
invokevirtual java.util.Vector.iterator:()Ljava/util/Iterator;
astore 9
start local 9 2: goto 5
3: StackMap locals: java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast sun.awt.X11.XMSelectionListener
astore 10
start local 10 4: aload 10
iload 2
aload 0
lload 3
lload 5
lload 7
invokeinterface sun.awt.X11.XMSelectionListener.ownerChanged:(ILsun/awt/X11/XMSelection;JJJ)V
end local 10 5: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
end local 9 6: StackMap locals:
StackMap stack:
return
end local 7 end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/awt/X11/XMSelection;
0 7 1 ev Lsun/awt/X11/XEvent;
0 7 2 screen I
0 7 3 owner J
0 7 5 data J
0 7 7 timestamp J
2 6 9 iter Ljava/util/Iterator;
4 5 10 disp Lsun/awt/X11/XMSelectionListener;
MethodParameters:
Name Flags
ev
screen
owner
data
timestamp
}
SourceFile: "XMSelection.java"
NestMembers:
sun.awt.X11.XMSelection$1 sun.awt.X11.XMSelection$2 sun.awt.X11.XMSelection$3
InnerClasses:
sun.awt.X11.XMSelection$1
sun.awt.X11.XMSelection$2
sun.awt.X11.XMSelection$3
public final Level = sun.util.logging.PlatformLogger$Level of sun.util.logging.PlatformLogger