public abstract class sun.swing.CachedPainter
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.swing.CachedPainter
super_class: java.lang.Object
{
private static final java.util.Map<java.lang.Object, sun.swing.ImageCache> cacheMap;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Object;Lsun/swing/ImageCache;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
1: putstatic sun.swing.CachedPainter.cacheMap:Ljava/util/Map;
2: return
LocalVariableTable:
Start End Slot Name Signature
private static sun.swing.ImageCache getCache(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lsun/swing/ImageCache;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: ldc Lsun/swing/CachedPainter;
dup
astore 1
monitorenter
1: getstatic sun.swing.CachedPainter.cacheMap:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast sun.swing.ImageCache
astore 2
start local 2 2: aload 2
ifnonnull 5
3: new sun.swing.ImageCache
dup
iconst_1
invokespecial sun.swing.ImageCache.<init>:(I)V
astore 2
4: getstatic sun.swing.CachedPainter.cacheMap:Ljava/util/Map;
aload 0
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: StackMap locals: java.lang.Class sun.swing.ImageCache
StackMap stack:
aload 2
aload 1
monitorexit
6: areturn
end local 2 7: StackMap locals: java.lang.Object java.lang.Class
StackMap stack: java.lang.Throwable
aload 1
monitorexit
8: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 key Ljava/lang/Object;
2 7 2 cache Lsun/swing/ImageCache;
Exception table:
from to target type
1 6 7 any
7 8 7 any
MethodParameters:
Name Flags
key
public void <init>(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
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic sun.swing.CachedPainter.getCache:(Ljava/lang/Object;)Lsun/swing/ImageCache;
iload 1
invokevirtual sun.swing.ImageCache.setMaxCount:(I)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/swing/CachedPainter;
0 3 1 cacheCount I
MethodParameters:
Name Flags
cacheCount
public void paint(java.awt.Component, java.awt.Graphics, int, int, int, int, java.lang.Object[]);
descriptor: (Ljava/awt/Component;Ljava/awt/Graphics;IIII[Ljava/lang/Object;)V
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=8, locals=10, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: iload 5
ifle 1
iload 6
ifgt 2
1: StackMap locals:
StackMap stack:
return
2: StackMap locals:
StackMap stack:
aload 1
ifnull 14
3: aload 1
invokevirtual java.awt.Component.getTreeLock:()Ljava/lang/Object;
dup
astore 8
monitorenter
4: ldc Lsun/swing/CachedPainter;
dup
astore 9
monitorenter
5: aload 0
aload 1
aload 2
iload 3
iload 4
iload 5
iload 6
aload 7
invokevirtual sun.swing.CachedPainter.paint0:(Ljava/awt/Component;Ljava/awt/Graphics;IIII[Ljava/lang/Object;)V
6: aload 9
monitorexit
7: goto 10
StackMap locals: sun.swing.CachedPainter java.awt.Component java.awt.Graphics int int int int java.lang.Object[] java.lang.Object java.lang.Class
StackMap stack: java.lang.Throwable
8: aload 9
monitorexit
9: athrow
10: StackMap locals:
StackMap stack:
aload 8
monitorexit
11: goto 20
StackMap locals:
StackMap stack: java.lang.Throwable
12: aload 8
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
ldc Lsun/swing/CachedPainter;
dup
astore 8
monitorenter
15: aload 0
aload 1
aload 2
iload 3
iload 4
iload 5
iload 6
aload 7
invokevirtual sun.swing.CachedPainter.paint0:(Ljava/awt/Component;Ljava/awt/Graphics;IIII[Ljava/lang/Object;)V
16: aload 8
monitorexit
17: goto 20
StackMap locals: sun.swing.CachedPainter java.awt.Component java.awt.Graphics int int int int java.lang.Object[] java.lang.Class
StackMap stack: java.lang.Throwable
18: aload 8
monitorexit
19: athrow
20: StackMap locals:
StackMap stack:
return
end local 7 end local 6 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 21 0 this Lsun/swing/CachedPainter;
0 21 1 c Ljava/awt/Component;
0 21 2 g Ljava/awt/Graphics;
0 21 3 x I
0 21 4 y I
0 21 5 w I
0 21 6 h I
0 21 7 args [Ljava/lang/Object;
Exception table:
from to target type
5 7 8 any
8 9 8 any
4 11 12 any
12 13 12 any
15 17 18 any
18 19 18 any
MethodParameters:
Name Flags
c
g
x
y
w
h
args
private void paint0(java.awt.Component, java.awt.Graphics, int, int, int, int, java.lang.Object[]);
descriptor: (Ljava/awt/Component;Ljava/awt/Graphics;IIII[Ljava/lang/Object;)V
flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
Code:
stack=9, locals=15, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
astore 8
start local 8 1: aload 0
aload 1
invokevirtual sun.swing.CachedPainter.getGraphicsConfiguration:(Ljava/awt/Component;)Ljava/awt/GraphicsConfiguration;
astore 9
start local 9 2: aload 8
invokestatic sun.swing.CachedPainter.getCache:(Ljava/lang/Object;)Lsun/swing/ImageCache;
astore 10
start local 10 3: aload 10
aload 8
aload 9
iload 5
iload 6
aload 7
invokevirtual sun.swing.ImageCache.getImage:(Ljava/lang/Object;Ljava/awt/GraphicsConfiguration;II[Ljava/lang/Object;)Ljava/awt/Image;
astore 11
start local 11 4: iconst_0
istore 12
start local 12 5: StackMap locals: sun.swing.CachedPainter java.awt.Component java.awt.Graphics int int int int java.lang.Object[] java.lang.Object java.awt.GraphicsConfiguration sun.swing.ImageCache java.awt.Image int
StackMap stack:
iconst_0
istore 13
start local 13 6: aload 11
instanceof java.awt.image.VolatileImage
ifeq 12
7: aload 11
checkcast java.awt.image.VolatileImage
aload 9
invokevirtual java.awt.image.VolatileImage.validate:(Ljava/awt/GraphicsConfiguration;)I
tableswitch { // 1 - 2
1: 11
2: 8
default: 12
}
8: StackMap locals: int
StackMap stack:
aload 11
checkcast java.awt.image.VolatileImage
invokevirtual java.awt.image.VolatileImage.flush:()V
9: aconst_null
astore 11
10: goto 12
11: StackMap locals:
StackMap stack:
iconst_1
istore 13
12: StackMap locals:
StackMap stack:
aload 11
ifnonnull 16
13: aload 0
aload 1
iload 5
iload 6
aload 9
aload 7
invokevirtual sun.swing.CachedPainter.createImage:(Ljava/awt/Component;IILjava/awt/GraphicsConfiguration;[Ljava/lang/Object;)Ljava/awt/Image;
astore 11
14: aload 10
aload 8
aload 9
iload 5
iload 6
aload 7
aload 11
invokevirtual sun.swing.ImageCache.setImage:(Ljava/lang/Object;Ljava/awt/GraphicsConfiguration;II[Ljava/lang/Object;Ljava/awt/Image;)V
15: iconst_1
istore 13
16: StackMap locals:
StackMap stack:
iload 13
ifeq 20
17: aload 11
invokevirtual java.awt.Image.getGraphics:()Ljava/awt/Graphics;
astore 14
start local 14 18: aload 0
aload 1
aload 11
aload 14
iload 5
iload 6
aload 7
invokevirtual sun.swing.CachedPainter.paintToImage:(Ljava/awt/Component;Ljava/awt/Image;Ljava/awt/Graphics;II[Ljava/lang/Object;)V
19: aload 14
invokevirtual java.awt.Graphics.dispose:()V
end local 14 20: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iload 3
iload 4
iload 5
iload 6
aload 11
aload 7
invokevirtual sun.swing.CachedPainter.paintImage:(Ljava/awt/Component;Ljava/awt/Graphics;IIIILjava/awt/Image;[Ljava/lang/Object;)V
end local 13 21: aload 11
instanceof java.awt.image.VolatileImage
ifeq 24
22: aload 11
checkcast java.awt.image.VolatileImage
invokevirtual java.awt.image.VolatileImage.contentsLost:()Z
ifeq 24
iinc 12 1
iload 12
iconst_3
23: if_icmplt 5
24: StackMap locals:
StackMap stack:
return
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 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 25 0 this Lsun/swing/CachedPainter;
0 25 1 c Ljava/awt/Component;
0 25 2 g Ljava/awt/Graphics;
0 25 3 x I
0 25 4 y I
0 25 5 w I
0 25 6 h I
0 25 7 args [Ljava/lang/Object;
1 25 8 key Ljava/lang/Object;
2 25 9 config Ljava/awt/GraphicsConfiguration;
3 25 10 cache Lsun/swing/ImageCache;
4 25 11 image Ljava/awt/Image;
5 25 12 attempts I
6 21 13 draw Z
18 20 14 g2 Ljava/awt/Graphics;
MethodParameters:
Name Flags
c
g
x
y
w
h
args
protected abstract void paintToImage(java.awt.Component, java.awt.Image, java.awt.Graphics, int, int, java.lang.Object[]);
descriptor: (Ljava/awt/Component;Ljava/awt/Image;Ljava/awt/Graphics;II[Ljava/lang/Object;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
c
image
g
w
h
args
protected void paintImage(java.awt.Component, java.awt.Graphics, int, int, int, int, java.awt.Image, java.lang.Object[]);
descriptor: (Ljava/awt/Component;Ljava/awt/Graphics;IIIILjava/awt/Image;[Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 2
aload 7
iload 3
iload 4
aconst_null
invokevirtual java.awt.Graphics.drawImage:(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
pop
1: return
end local 8 end local 7 end local 6 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 2 0 this Lsun/swing/CachedPainter;
0 2 1 c Ljava/awt/Component;
0 2 2 g Ljava/awt/Graphics;
0 2 3 x I
0 2 4 y I
0 2 5 w I
0 2 6 h I
0 2 7 image Ljava/awt/Image;
0 2 8 args [Ljava/lang/Object;
MethodParameters:
Name Flags
c
g
x
y
w
h
image
args
protected java.awt.Image createImage(java.awt.Component, int, int, java.awt.GraphicsConfiguration, java.lang.Object[]);
descriptor: (Ljava/awt/Component;IILjava/awt/GraphicsConfiguration;[Ljava/lang/Object;)Ljava/awt/Image;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 4
ifnonnull 2
1: new java.awt.image.BufferedImage
dup
iload 2
iload 3
iconst_1
invokespecial java.awt.image.BufferedImage.<init>:(III)V
areturn
2: StackMap locals:
StackMap stack:
aload 4
iload 2
iload 3
invokevirtual java.awt.GraphicsConfiguration.createCompatibleVolatileImage:(II)Ljava/awt/image/VolatileImage;
areturn
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 3 0 this Lsun/swing/CachedPainter;
0 3 1 c Ljava/awt/Component;
0 3 2 w I
0 3 3 h I
0 3 4 config Ljava/awt/GraphicsConfiguration;
0 3 5 args [Ljava/lang/Object;
MethodParameters:
Name Flags
c
w
h
config
args
protected void flush();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=1
start local 0 0: ldc Lsun/swing/CachedPainter;
dup
astore 1
monitorenter
1: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic sun.swing.CachedPainter.getCache:(Ljava/lang/Object;)Lsun/swing/ImageCache;
invokevirtual sun.swing.ImageCache.flush:()V
2: aload 1
monitorexit
3: goto 6
StackMap locals: sun.swing.CachedPainter java.lang.Class
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/swing/CachedPainter;
Exception table:
from to target type
1 3 4 any
4 5 4 any
private java.awt.GraphicsConfiguration getGraphicsConfiguration(java.awt.Component);
descriptor: (Ljava/awt/Component;)Ljava/awt/GraphicsConfiguration;
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.Component.getGraphicsConfiguration:()Ljava/awt/GraphicsConfiguration;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/swing/CachedPainter;
0 3 1 c Ljava/awt/Component;
MethodParameters:
Name Flags
c
}
SourceFile: "CachedPainter.java"