public class org.apache.batik.svggen.ImageCacher$External extends org.apache.batik.svggen.ImageCacher
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.batik.svggen.ImageCacher$External
super_class: org.apache.batik.svggen.ImageCacher
{
private java.lang.String imageDir;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String prefix;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String suffix;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial org.apache.batik.svggen.ImageCacher.<init>:()V
1: aload 0
aload 1
putfield org.apache.batik.svggen.ImageCacher$External.imageDir:Ljava/lang/String;
2: aload 0
aload 2
putfield org.apache.batik.svggen.ImageCacher$External.prefix:Ljava/lang/String;
3: aload 0
aload 3
putfield org.apache.batik.svggen.ImageCacher$External.suffix:Ljava/lang/String;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/batik/svggen/ImageCacher$External;
0 5 1 imageDir Ljava/lang/String;
0 5 2 prefix Ljava/lang/String;
0 5 3 suffix Ljava/lang/String;
MethodParameters:
Name Flags
imageDir
prefix
suffix
java.lang.Object getCacheableData(java.io.ByteArrayOutputStream);
descriptor: (Ljava/io/ByteArrayOutputStream;)Ljava/lang/Object;
flags: (0x0000)
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/svggen/ImageCacher$External;
0 1 1 os Ljava/io/ByteArrayOutputStream;
MethodParameters:
Name Flags
os
boolean imagesMatch(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0000)
Code:
stack=6, locals=10, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: aconst_null
astore 4
start local 4 2: new java.io.FileInputStream
dup
aload 1
checkcast java.io.File
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 4
3: aload 4
invokevirtual java.io.FileInputStream.available:()I
istore 5
start local 5 4: iload 5
newarray 8
astore 6
start local 6 5: aload 2
checkcast java.io.ByteArrayOutputStream
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
6: astore 7
start local 7 7: iconst_0
istore 8
start local 8 8: goto 12
9: StackMap locals: org.apache.batik.svggen.ImageCacher$External java.lang.Object java.lang.Object int java.io.FileInputStream int byte[] byte[] int
StackMap stack:
iload 8
aload 4
10: aload 6
iload 8
iload 5
iload 8
isub
11: invokevirtual java.io.FileInputStream.read:([BII)I
iadd
istore 8
12: StackMap locals:
StackMap stack:
iload 8
iload 5
if_icmpne 9
13: aload 6
aload 7
invokestatic java.util.Arrays.equals:([B[B)Z
istore 3
end local 8 end local 7 end local 6 end local 5 14: goto 25
StackMap locals: org.apache.batik.svggen.ImageCacher$External java.lang.Object java.lang.Object int java.io.FileInputStream
StackMap stack: java.io.IOException
15: pop
16: new org.apache.batik.svggen.SVGGraphics2DIOException
dup
17: new java.lang.StringBuilder
dup
ldc "could not read image File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
checkcast java.io.File
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokespecial org.apache.batik.svggen.SVGGraphics2DIOException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals:
StackMap stack: java.lang.Throwable
astore 9
20: aload 4
ifnull 24
21: aload 4
invokevirtual java.io.FileInputStream.close:()V
22: goto 24
StackMap locals: org.apache.batik.svggen.ImageCacher$External java.lang.Object java.lang.Object int java.io.FileInputStream top top top top java.lang.Throwable
StackMap stack: java.io.IOException
23: pop
24: StackMap locals:
StackMap stack:
aload 9
athrow
25: StackMap locals: org.apache.batik.svggen.ImageCacher$External java.lang.Object java.lang.Object int java.io.FileInputStream
StackMap stack:
aload 4
ifnull 29
26: aload 4
invokevirtual java.io.FileInputStream.close:()V
27: goto 29
StackMap locals:
StackMap stack: java.io.IOException
28: pop
29: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lorg/apache/batik/svggen/ImageCacher$External;
0 30 1 o1 Ljava/lang/Object;
0 30 2 o2 Ljava/lang/Object;
1 30 3 match Z
2 30 4 imageStream Ljava/io/FileInputStream;
4 14 5 imageLen I
5 14 6 imageBytes [B
7 14 7 candidateBytes [B
8 14 8 bytesRead I
Exception table:
from to target type
2 14 15 Class java.io.IOException
2 19 19 any
20 22 23 Class java.io.IOException
25 27 28 Class java.io.IOException
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
o1
o2
org.apache.batik.svggen.ImageCacher$ImageCacheEntry createEntry(int, java.lang.Object, int, int, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (ILjava/lang/Object;IILorg/apache/batik/svggen/SVGGeneratorContext;)Lorg/apache/batik/svggen/ImageCacher$ImageCacheEntry;
flags: (0x0000)
Code:
stack=6, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aconst_null
astore 6
start local 6 1: goto 6
2: StackMap locals: java.io.File
StackMap stack:
aload 5
getfield org.apache.batik.svggen.SVGGeneratorContext.idGenerator:Lorg/apache/batik/svggen/SVGIDGenerator;
aload 0
getfield org.apache.batik.svggen.ImageCacher$External.prefix:Ljava/lang/String;
invokevirtual org.apache.batik.svggen.SVGIDGenerator.generateID:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 3: new java.io.File
dup
aload 0
getfield org.apache.batik.svggen.ImageCacher$External.imageDir:Ljava/lang/String;
new java.lang.StringBuilder
dup
aload 7
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.batik.svggen.ImageCacher$External.suffix:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 6
4: aload 6
invokevirtual java.io.File.exists:()Z
ifeq 6
5: aconst_null
astore 6
end local 7 6: StackMap locals:
StackMap stack:
aload 6
ifnull 2
7: new java.io.FileOutputStream
dup
aload 6
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
astore 7
start local 7 8: aload 2
checkcast java.io.ByteArrayOutputStream
aload 7
invokevirtual java.io.ByteArrayOutputStream.writeTo:(Ljava/io/OutputStream;)V
9: aload 2
checkcast java.io.ByteArrayOutputStream
invokevirtual java.io.ByteArrayOutputStream.close:()V
end local 7 10: goto 13
StackMap locals:
StackMap stack: java.io.IOException
11: pop
12: new org.apache.batik.svggen.SVGGraphics2DIOException
dup
new java.lang.StringBuilder
dup
ldc "could not write image File "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.apache.batik.svggen.SVGGraphics2DIOException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
new org.apache.batik.svggen.ImageCacher$ImageCacheEntry
dup
iload 1
aload 6
aload 6
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokespecial org.apache.batik.svggen.ImageCacher$ImageCacheEntry.<init>:(ILjava/lang/Object;Ljava/lang/String;)V
areturn
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 14 0 this Lorg/apache/batik/svggen/ImageCacher$External;
0 14 1 checksum I
0 14 2 data Ljava/lang/Object;
0 14 3 width I
0 14 4 height I
0 14 5 ctx Lorg/apache/batik/svggen/SVGGeneratorContext;
1 14 6 imageFile Ljava/io/File;
3 6 7 fileId Ljava/lang/String;
8 10 7 outputStream Ljava/io/OutputStream;
Exception table:
from to target type
1 10 11 Class java.io.IOException
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
checksum
data
width
height
ctx
}
SourceFile: "ImageCacher.java"
NestHost: org.apache.batik.svggen.ImageCacher
InnerClasses:
public External = org.apache.batik.svggen.ImageCacher$External of org.apache.batik.svggen.ImageCacher
private ImageCacheEntry = org.apache.batik.svggen.ImageCacher$ImageCacheEntry of org.apache.batik.svggen.ImageCacher