abstract class com.sun.javafx.webkit.prism.PrismImage extends com.sun.webkit.graphics.WCImage
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.javafx.webkit.prism.PrismImage
super_class: com.sun.webkit.graphics.WCImage
{
private static volatile int[] $SWITCH_TABLE$javafx$scene$image$PixelFormat$Type;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.sun.webkit.graphics.WCImage.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
abstract com.sun.prism.Image getImage();
descriptor: ()Lcom/sun/prism/Image;
flags: (0x0400) ACC_ABSTRACT
abstract com.sun.prism.Graphics getGraphics();
descriptor: ()Lcom/sun/prism/Graphics;
flags: (0x0400) ACC_ABSTRACT
abstract void draw(com.sun.prism.Graphics, int, int, int, int, int, int, int, int);
descriptor: (Lcom/sun/prism/Graphics;IIIIIIII)V
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
g
dstx1
dsty1
dstx2
dsty2
srcx1
srcy1
srcx2
srcy2
abstract void dispose();
descriptor: ()V
flags: (0x0400) ACC_ABSTRACT
public java.lang.Object getPlatformImage();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.PrismImage.getImage:()Lcom/sun/prism/Image;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
public void deref();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.sun.webkit.graphics.WCImage.deref:()V
1: aload 0
invokevirtual com.sun.javafx.webkit.prism.PrismImage.hasRefs:()Z
ifne 3
2: aload 0
invokevirtual com.sun.javafx.webkit.prism.PrismImage.dispose:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
protected final byte[] toData(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
aload 1
ldc "image/jpeg"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
invokevirtual com.sun.javafx.webkit.prism.PrismImage.toBufferedImage:(Z)Ljava/awt/image/BufferedImage;
astore 2
start local 2 1: aload 2
ifnull 18
2: aload 1
invokestatic javax.imageio.ImageIO.getImageWritersByMIMEType:(Ljava/lang/String;)Ljava/util/Iterator;
astore 3
start local 3 3: goto 17
4: StackMap locals: java.awt.image.BufferedImage java.util.Iterator
StackMap stack:
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 4
start local 4 5: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.imageio.ImageWriter
astore 5
start local 5 6: aload 5
aload 4
invokestatic javax.imageio.ImageIO.createImageOutputStream:(Ljava/lang/Object;)Ljavax/imageio/stream/ImageOutputStream;
invokevirtual javax.imageio.ImageWriter.setOutput:(Ljava/lang/Object;)V
7: aload 5
aload 2
invokevirtual javax.imageio.ImageWriter.write:(Ljava/awt/image/RenderedImage;)V
8: goto 15
9: StackMap locals: com.sun.javafx.webkit.prism.PrismImage java.lang.String java.awt.image.BufferedImage java.util.Iterator java.io.ByteArrayOutputStream javax.imageio.ImageWriter
StackMap stack: java.io.IOException
pop
10: aload 5
invokevirtual javax.imageio.ImageWriter.dispose:()V
11: goto 17
12: StackMap locals:
StackMap stack: java.lang.Throwable
astore 6
13: aload 5
invokevirtual javax.imageio.ImageWriter.dispose:()V
14: aload 6
athrow
15: StackMap locals:
StackMap stack:
aload 5
invokevirtual javax.imageio.ImageWriter.dispose:()V
16: aload 4
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
areturn
end local 5 end local 4 17: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 3 18: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
0 19 1 mimeType Ljava/lang/String;
1 19 2 image Ljava/awt/image/BufferedImage;
3 18 3 it Ljava/util/Iterator<Ljavax/imageio/ImageWriter;>;
5 17 4 output Ljava/io/ByteArrayOutputStream;
6 17 5 writer Ljavax/imageio/ImageWriter;
Exception table:
from to target type
6 8 9 Class java.io.IOException
6 10 12 any
MethodParameters:
Name Flags
mimeType
protected final java.lang.String toDataURL(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.javafx.webkit.prism.PrismImage.toData:(Ljava/lang/String;)[B
astore 2
start local 2 1: aload 2
ifnull 6
2: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 3
start local 3 3: aload 3
ldc "data:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ";base64,"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 3
invokestatic java.util.Base64.getMimeEncoder:()Ljava/util/Base64$Encoder;
aload 2
invokevirtual java.util.Base64$Encoder.encodeToString:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 3
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 3 6: StackMap locals: byte[]
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
0 7 1 mimeType Ljava/lang/String;
1 7 2 data [B
3 6 3 sb Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
mimeType
private static int getBestBufferedImageType(javafx.scene.image.PixelFormat<?>);
descriptor: (Ljavafx/scene/image/PixelFormat;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic com.sun.javafx.webkit.prism.PrismImage.$SWITCH_TABLE$javafx$scene$image$PixelFormat$Type:()[I
aload 0
invokevirtual javafx.scene.image.PixelFormat.getType:()Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
iaload
tableswitch { // 1 - 6
1: 1
2: 2
3: 1
4: 2
5: 3
6: 4
default: 1
}
1: StackMap locals:
StackMap stack:
iconst_3
ireturn
2: StackMap locals:
StackMap stack:
iconst_2
ireturn
3: StackMap locals:
StackMap stack:
iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual javafx.scene.image.PixelFormat.isPremultiplied:()Z
ifeq 6
5: iconst_3
goto 7
6: StackMap locals:
StackMap stack:
iconst_2
7: StackMap locals:
StackMap stack: int
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 fxFormat Ljavafx/scene/image/PixelFormat<*>;
Signature: (Ljavafx/scene/image/PixelFormat<*>;)I
MethodParameters:
Name Flags
fxFormat
private static javafx.scene.image.WritablePixelFormat<java.nio.IntBuffer> getAssociatedPixelFormat(java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;)Ljavafx/scene/image/WritablePixelFormat;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.awt.image.BufferedImage.getType:()I
tableswitch { // 1 - 3
1: 1
2: 2
3: 1
default: 3
}
1: StackMap locals:
StackMap stack:
invokestatic javafx.scene.image.PixelFormat.getIntArgbPreInstance:()Ljavafx/scene/image/WritablePixelFormat;
areturn
2: StackMap locals:
StackMap stack:
invokestatic javafx.scene.image.PixelFormat.getIntArgbInstance:()Ljavafx/scene/image/WritablePixelFormat;
areturn
3: StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
ldc "Failed to validate BufferedImage type"
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 bimg Ljava/awt/image/BufferedImage;
Signature: (Ljava/awt/image/BufferedImage;)Ljavafx/scene/image/WritablePixelFormat<Ljava/nio/IntBuffer;>;
MethodParameters:
Name Flags
bimg
private static java.awt.image.BufferedImage fromFXImage(com.sun.prism.Image, boolean);
descriptor: (Lcom/sun/prism/Image;Z)Ljava/awt/image/BufferedImage;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=9, locals=12, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.prism.Image.getWidth:()I
istore 2
start local 2 1: aload 0
invokevirtual com.sun.prism.Image.getHeight:()I
istore 3
start local 3 2: iload 1
ifeq 3
iconst_1
goto 4
StackMap locals: int int
StackMap stack:
3: aload 0
invokevirtual com.sun.prism.Image.getPlatformPixelFormat:()Ljavafx/scene/image/PixelFormat;
invokestatic com.sun.javafx.webkit.prism.PrismImage.getBestBufferedImageType:(Ljavafx/scene/image/PixelFormat;)I
StackMap locals:
StackMap stack: int
4: istore 4
start local 4 5: new java.awt.image.BufferedImage
dup
iload 2
iload 3
iload 4
invokespecial java.awt.image.BufferedImage.<init>:(III)V
astore 5
start local 5 6: aload 5
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
checkcast java.awt.image.DataBufferInt
astore 6
start local 6 7: aload 6
invokevirtual java.awt.image.DataBufferInt.getData:()[I
astore 7
start local 7 8: aload 5
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
invokevirtual java.awt.image.DataBuffer.getOffset:()I
istore 8
start local 8 9: iconst_0
istore 9
start local 9 10: aload 5
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
astore 10
start local 10 11: aload 10
instanceof java.awt.image.SinglePixelPackedSampleModel
ifeq 13
12: aload 10
checkcast java.awt.image.SinglePixelPackedSampleModel
invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
istore 9
13: StackMap locals: com.sun.prism.Image int int int int java.awt.image.BufferedImage java.awt.image.DataBufferInt int[] int int java.awt.image.SampleModel
StackMap stack:
aload 5
invokestatic com.sun.javafx.webkit.prism.PrismImage.getAssociatedPixelFormat:(Ljava/awt/image/BufferedImage;)Ljavafx/scene/image/WritablePixelFormat;
astore 11
start local 11 14: aload 0
iconst_0
iconst_0
iload 2
iload 3
aload 11
aload 7
iload 8
iload 9
invokevirtual com.sun.prism.Image.getPixels:(IIIILjavafx/scene/image/WritablePixelFormat;[III)V
15: aload 5
areturn
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 16 0 img Lcom/sun/prism/Image;
0 16 1 forceRGB Z
1 16 2 iw I
2 16 3 ih I
5 16 4 destImageType I
6 16 5 bimg Ljava/awt/image/BufferedImage;
7 16 6 db Ljava/awt/image/DataBufferInt;
8 16 7 data [I
9 16 8 offset I
10 16 9 scan I
11 16 10 sm Ljava/awt/image/SampleModel;
14 16 11 pf Ljavafx/scene/image/WritablePixelFormat<Ljava/nio/IntBuffer;>;
MethodParameters:
Name Flags
img
forceRGB
private java.awt.image.BufferedImage toBufferedImage(boolean);
descriptor: (Z)Ljava/awt/image/BufferedImage;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.PrismImage.getImage:()Lcom/sun/prism/Image;
iload 1
invokestatic com.sun.javafx.webkit.prism.PrismImage.fromFXImage:(Lcom/sun/prism/Image;Z)Ljava/awt/image/BufferedImage;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 3: aload 2
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
end local 2 4: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
0 5 1 forceRGB Z
3 4 2 ex Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
MethodParameters:
Name Flags
forceRGB
public java.awt.image.BufferedImage toBufferedImage();
descriptor: ()Ljava/awt/image/BufferedImage;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual com.sun.javafx.webkit.prism.PrismImage.toBufferedImage:(Z)Ljava/awt/image/BufferedImage;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/PrismImage;
static int[] $SWITCH_TABLE$javafx$scene$image$PixelFormat$Type();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.sun.javafx.webkit.prism.PrismImage.$SWITCH_TABLE$javafx$scene$image$PixelFormat$Type:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic javafx.scene.image.PixelFormat$Type.values:()[Ljavafx/scene/image/PixelFormat$Type;
arraylength
newarray 10
astore 0
2: aload 0
getstatic javafx.scene.image.PixelFormat$Type.BYTE_BGRA:Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
iconst_4
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic javafx.scene.image.PixelFormat$Type.BYTE_BGRA_PRE:Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
iconst_3
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic javafx.scene.image.PixelFormat$Type.BYTE_INDEXED:Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
bipush 6
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic javafx.scene.image.PixelFormat$Type.BYTE_RGB:Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
iconst_5
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic javafx.scene.image.PixelFormat$Type.INT_ARGB:Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
iconst_2
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic javafx.scene.image.PixelFormat$Type.INT_ARGB_PRE:Ljavafx/scene/image/PixelFormat$Type;
invokevirtual javafx.scene.image.PixelFormat$Type.ordinal:()I
iconst_1
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
dup
putstatic com.sun.javafx.webkit.prism.PrismImage.$SWITCH_TABLE$javafx$scene$image$PixelFormat$Type:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
}
SourceFile: "PrismImage.java"
InnerClasses:
public Encoder = java.util.Base64$Encoder of java.util.Base64
public final Type = javafx.scene.image.PixelFormat$Type of javafx.scene.image.PixelFormat