final class org.apache.fop.image.loader.batik.PreloaderSVG$Loader
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: org.apache.fop.image.loader.batik.PreloaderSVG$Loader
super_class: java.lang.Object
{
final org.apache.fop.image.loader.batik.PreloaderSVG this$0;
descriptor: Lorg/apache/fop/image/loader/batik/PreloaderSVG;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(org.apache.fop.image.loader.batik.PreloaderSVG);
descriptor: (Lorg/apache/fop/image/loader/batik/PreloaderSVG;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield org.apache.fop.image.loader.batik.PreloaderSVG$Loader.this$0:Lorg/apache/fop/image/loader/batik/PreloaderSVG;
aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/fop/image/loader/batik/PreloaderSVG$Loader;
MethodParameters:
Name Flags
this$0 final
private org.apache.xmlgraphics.image.loader.ImageInfo getImage(java.lang.String, javax.xml.transform.Source, org.apache.xmlgraphics.image.loader.ImageContext);
descriptor: (Ljava/lang/String;Ljavax/xml/transform/Source;Lorg/apache/xmlgraphics/image/loader/ImageContext;)Lorg/apache/xmlgraphics/image/loader/ImageInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aconst_null
astore 4
start local 4 1: aload 2
instanceof javax.xml.transform.dom.DOMSource
ifeq 5
2: aload 2
checkcast javax.xml.transform.dom.DOMSource
astore 6
start local 6 3: aload 6
invokevirtual javax.xml.transform.dom.DOMSource.getNode:()Lorg/w3c/dom/Node;
checkcast org.w3c.dom.svg.SVGDocument
astore 5
end local 6 start local 5 4: goto 12
end local 5 5: StackMap locals: java.io.InputStream
StackMap stack:
new org.apache.fop.util.UnclosableInputStream
dup
aload 2
invokestatic org.apache.xmlgraphics.io.XmlSourceUtil.needInputStream:(Ljavax/xml/transform/Source;)Ljava/io/InputStream;
invokespecial org.apache.fop.util.UnclosableInputStream.<init>:(Ljava/io/InputStream;)V
astore 4
6: aload 4
invokevirtual java.io.InputStream.available:()I
istore 6
start local 6 7: aload 4
iload 6
iconst_1
iadd
invokevirtual java.io.InputStream.mark:(I)V
8: new org.apache.batik.anim.dom.SAXSVGDocumentFactory
dup
9: invokestatic org.apache.fop.image.loader.batik.PreloaderSVG.getParserName:()Ljava/lang/String;
10: invokespecial org.apache.batik.anim.dom.SAXSVGDocumentFactory.<init>:(Ljava/lang/String;)V
astore 7
start local 7 11: aload 7
aload 2
invokeinterface javax.xml.transform.Source.getSystemId:()Ljava/lang/String;
aload 4
invokevirtual org.apache.batik.anim.dom.SAXSVGDocumentFactory.createSVGDocument:(Ljava/lang/String;Ljava/io/InputStream;)Lorg/w3c/dom/svg/SVGDocument;
astore 5
end local 7 end local 6 start local 5 12: StackMap locals: org.w3c.dom.svg.SVGDocument
StackMap stack:
aload 0
aload 1
aload 3
aload 5
invokevirtual org.apache.fop.image.loader.batik.PreloaderSVG$Loader.createImageInfo:(Ljava/lang/String;Lorg/apache/xmlgraphics/image/loader/ImageContext;Lorg/w3c/dom/svg/SVGDocument;)Lorg/apache/xmlgraphics/image/loader/ImageInfo;
astore 6
start local 6 13: aload 6
14: areturn
end local 6 end local 5 15: StackMap locals: org.apache.fop.image.loader.batik.PreloaderSVG$Loader java.lang.String javax.xml.transform.Source org.apache.xmlgraphics.image.loader.ImageContext java.io.InputStream
StackMap stack: java.lang.NoClassDefFoundError
astore 5
start local 5 16: aload 4
ifnull 20
17: aload 4
invokevirtual java.io.InputStream.reset:()V
18: goto 20
StackMap locals: org.apache.fop.image.loader.batik.PreloaderSVG$Loader java.lang.String javax.xml.transform.Source org.apache.xmlgraphics.image.loader.ImageContext java.io.InputStream java.lang.NoClassDefFoundError
StackMap stack: java.io.IOException
19: pop
20: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.fop.image.loader.batik.PreloaderSVG$Loader.this$0:Lorg/apache/fop/image/loader/batik/PreloaderSVG;
iconst_0
putfield org.apache.fop.image.loader.batik.PreloaderSVG.batikAvailable:Z
21: getstatic org.apache.fop.image.loader.batik.PreloaderSVG.log:Lorg/apache/commons/logging/Log;
ldc "Batik not in class path"
aload 5
invokeinterface org.apache.commons.logging.Log.warn:(Ljava/lang/Object;Ljava/lang/Throwable;)V
22: aconst_null
areturn
end local 5 23: StackMap locals: org.apache.fop.image.loader.batik.PreloaderSVG$Loader java.lang.String javax.xml.transform.Source org.apache.xmlgraphics.image.loader.ImageContext java.io.InputStream
StackMap stack: java.io.IOException
astore 5
start local 5 24: getstatic org.apache.fop.image.loader.batik.PreloaderSVG.log:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Error while trying to load stream as an SVG file: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
25: aload 5
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
26: invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
27: aload 4
invokevirtual java.io.InputStream.reset:()V
28: goto 30
StackMap locals: org.apache.fop.image.loader.batik.PreloaderSVG$Loader java.lang.String javax.xml.transform.Source org.apache.xmlgraphics.image.loader.ImageContext java.io.InputStream java.io.IOException
StackMap stack: java.io.IOException
29: pop
30: StackMap locals:
StackMap stack:
aconst_null
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 31 0 this Lorg/apache/fop/image/loader/batik/PreloaderSVG$Loader;
0 31 1 uri Ljava/lang/String;
0 31 2 src Ljavax/xml/transform/Source;
0 31 3 context Lorg/apache/xmlgraphics/image/loader/ImageContext;
1 31 4 in Ljava/io/InputStream;
4 5 5 doc Lorg/w3c/dom/svg/SVGDocument;
12 15 5 doc Lorg/w3c/dom/svg/SVGDocument;
3 4 6 domSrc Ljavax/xml/transform/dom/DOMSource;
7 12 6 length I
11 12 7 factory Lorg/apache/batik/anim/dom/SAXSVGDocumentFactory;
13 15 6 info Lorg/apache/xmlgraphics/image/loader/ImageInfo;
16 23 5 ncdfe Ljava/lang/NoClassDefFoundError;
24 31 5 e Ljava/io/IOException;
Exception table:
from to target type
1 14 15 Class java.lang.NoClassDefFoundError
17 18 19 Class java.io.IOException
1 14 23 Class java.io.IOException
27 28 29 Class java.io.IOException
MethodParameters:
Name Flags
uri
src
context
private org.apache.xmlgraphics.image.loader.ImageInfo createImageInfo(java.lang.String, org.apache.xmlgraphics.image.loader.ImageContext, org.w3c.dom.svg.SVGDocument);
descriptor: (Ljava/lang/String;Lorg/apache/xmlgraphics/image/loader/ImageContext;Lorg/w3c/dom/svg/SVGDocument;)Lorg/apache/xmlgraphics/image/loader/ImageInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=17, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokeinterface org.w3c.dom.svg.SVGDocument.getRootElement:()Lorg/w3c/dom/svg/SVGSVGElement;
astore 4
start local 4 1: ldc 25.4
aload 2
invokeinterface org.apache.xmlgraphics.image.loader.ImageContext.getSourceResolution:()F
fdiv
fstore 5
start local 5 2: new org.apache.fop.image.loader.batik.PreloaderSVG$Loader$1
dup
aload 0
fload 5
3: new java.awt.geom.AffineTransform
dup
invokespecial java.awt.geom.AffineTransform.<init>:()V
getstatic org.apache.batik.bridge.DefaultFontFamilyResolver.SINGLETON:Lorg/apache/batik/bridge/DefaultFontFamilyResolver;
4: invokespecial org.apache.fop.image.loader.batik.PreloaderSVG$Loader$1.<init>:(Lorg/apache/fop/image/loader/batik/PreloaderSVG$Loader;FLjava/awt/geom/AffineTransform;Lorg/apache/batik/bridge/FontFamilyResolver;)V
astore 6
start local 6 5: new org.apache.batik.bridge.BridgeContext
dup
aload 6
invokespecial org.apache.batik.bridge.BridgeContext.<init>:(Lorg/apache/batik/bridge/UserAgent;)V
astore 7
start local 7 6: aload 7
aload 4
invokestatic org.apache.batik.bridge.UnitProcessor.createContext:(Lorg/apache/batik/bridge/BridgeContext;Lorg/w3c/dom/Element;)Lorg/apache/batik/parser/UnitProcessor$Context;
astore 8
start local 8 7: aload 4
aconst_null
ldc "width"
invokeinterface org.w3c.dom.Element.getAttributeNS:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 8: aload 9
invokevirtual java.lang.String.length:()I
ifne 10
9: ldc "100%"
astore 9
10: StackMap locals: org.apache.fop.image.loader.batik.PreloaderSVG$Loader java.lang.String org.apache.xmlgraphics.image.loader.ImageContext org.w3c.dom.svg.SVGDocument org.w3c.dom.Element float org.apache.batik.bridge.UserAgent org.apache.batik.bridge.BridgeContext org.apache.batik.parser.UnitProcessor$Context java.lang.String
StackMap stack:
aload 9
ldc "width"
aload 8
11: invokestatic org.apache.batik.bridge.UnitProcessor.svgHorizontalLengthToUserSpace:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/batik/parser/UnitProcessor$Context;)F
fstore 10
start local 10 12: aload 4
aconst_null
ldc "height"
invokeinterface org.w3c.dom.Element.getAttributeNS:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 9
13: aload 9
invokevirtual java.lang.String.length:()I
ifne 15
14: ldc "100%"
astore 9
15: StackMap locals: float
StackMap stack:
aload 9
ldc "height"
aload 8
16: invokestatic org.apache.batik.bridge.UnitProcessor.svgVerticalLengthToUserSpace:(Ljava/lang/String;Ljava/lang/String;Lorg/apache/batik/parser/UnitProcessor$Context;)F
fstore 11
start local 11 17: fload 10
f2d
aload 2
invokeinterface org.apache.xmlgraphics.image.loader.ImageContext.getSourceResolution:()F
f2d
invokestatic org.apache.fop.image.loader.batik.PreloaderSVG.px2mpt:(DD)D
invokestatic java.lang.Math.round:(D)J
l2i
istore 12
start local 12 18: fload 11
f2d
aload 2
invokeinterface org.apache.xmlgraphics.image.loader.ImageContext.getSourceResolution:()F
f2d
invokestatic org.apache.fop.image.loader.batik.PreloaderSVG.px2mpt:(DD)D
invokestatic java.lang.Math.round:(D)J
l2i
istore 13
start local 13 19: new org.apache.xmlgraphics.image.loader.ImageInfo
dup
aload 1
ldc "image/svg+xml"
invokespecial org.apache.xmlgraphics.image.loader.ImageInfo.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 14
start local 14 20: new org.apache.xmlgraphics.image.loader.ImageSize
dup
invokespecial org.apache.xmlgraphics.image.loader.ImageSize.<init>:()V
astore 15
start local 15 21: aload 15
iload 12
iload 13
invokevirtual org.apache.xmlgraphics.image.loader.ImageSize.setSizeInMillipoints:(II)V
22: aload 15
aload 2
invokeinterface org.apache.xmlgraphics.image.loader.ImageContext.getSourceResolution:()F
f2d
invokevirtual org.apache.xmlgraphics.image.loader.ImageSize.setResolution:(D)V
23: aload 15
invokevirtual org.apache.xmlgraphics.image.loader.ImageSize.calcPixelsFromSize:()V
24: aload 14
aload 15
invokevirtual org.apache.xmlgraphics.image.loader.ImageInfo.setSize:(Lorg/apache/xmlgraphics/image/loader/ImageSize;)V
25: new org.apache.xmlgraphics.image.loader.impl.ImageXMLDOM
dup
aload 14
26: aload 3
getstatic org.apache.fop.image.loader.batik.BatikImageFlavors.SVG_DOM:Lorg/apache/xmlgraphics/image/loader/XMLNamespaceEnabledImageFlavor;
27: invokespecial org.apache.xmlgraphics.image.loader.impl.ImageXMLDOM.<init>:(Lorg/apache/xmlgraphics/image/loader/ImageInfo;Lorg/w3c/dom/Document;Lorg/apache/xmlgraphics/image/loader/XMLNamespaceEnabledImageFlavor;)V
astore 16
start local 16 28: aload 14
invokevirtual org.apache.xmlgraphics.image.loader.ImageInfo.getCustomObjects:()Ljava/util/Map;
getstatic org.apache.xmlgraphics.image.loader.ImageInfo.ORIGINAL_IMAGE:Ljava/lang/Object;
aload 16
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
29: aload 14
areturn
end local 16 end local 15 end local 14 end local 13 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 30 0 this Lorg/apache/fop/image/loader/batik/PreloaderSVG$Loader;
0 30 1 uri Ljava/lang/String;
0 30 2 context Lorg/apache/xmlgraphics/image/loader/ImageContext;
0 30 3 doc Lorg/w3c/dom/svg/SVGDocument;
1 30 4 e Lorg/w3c/dom/Element;
2 30 5 pxUnitToMillimeter F
5 30 6 userAg Lorg/apache/batik/bridge/UserAgent;
6 30 7 ctx Lorg/apache/batik/bridge/BridgeContext;
7 30 8 uctx Lorg/apache/batik/parser/UnitProcessor$Context;
8 30 9 s Ljava/lang/String;
12 30 10 width F
17 30 11 height F
18 30 12 widthMpt I
19 30 13 heightMpt I
20 30 14 info Lorg/apache/xmlgraphics/image/loader/ImageInfo;
21 30 15 size Lorg/apache/xmlgraphics/image/loader/ImageSize;
28 30 16 xmlImage Lorg/apache/xmlgraphics/image/loader/impl/ImageXMLDOM;
MethodParameters:
Name Flags
uri
context
doc
private boolean isSupportedSource(javax.xml.transform.Source);
descriptor: (Ljavax/xml/transform/Source;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof javax.xml.transform.dom.DOMSource
ifeq 3
1: aload 1
checkcast javax.xml.transform.dom.DOMSource
astore 2
start local 2 2: aload 2
invokevirtual javax.xml.transform.dom.DOMSource.getNode:()Lorg/w3c/dom/Node;
instanceof org.w3c.dom.svg.SVGDocument
ireturn
end local 2 3: StackMap locals:
StackMap stack:
aload 1
invokestatic org.apache.xmlgraphics.image.loader.util.ImageUtil.hasInputStream:(Ljavax/xml/transform/Source;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/fop/image/loader/batik/PreloaderSVG$Loader;
0 4 1 src Ljavax/xml/transform/Source;
2 3 2 domSrc Ljavax/xml/transform/dom/DOMSource;
MethodParameters:
Name Flags
src
}
SourceFile: "PreloaderSVG.java"
NestHost: org.apache.fop.image.loader.batik.PreloaderSVG
InnerClasses:
public abstract Context = org.apache.batik.parser.UnitProcessor$Context of org.apache.batik.parser.UnitProcessor
private final Loader = org.apache.fop.image.loader.batik.PreloaderSVG$Loader of org.apache.fop.image.loader.batik.PreloaderSVG
org.apache.fop.image.loader.batik.PreloaderSVG$Loader$1