public class org.objectweb.asm.xml.Processor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.objectweb.asm.xml.Processor
super_class: java.lang.Object
{
public static final int BYTECODE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int MULTI_XML;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int SINGLE_XML;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final java.lang.String SINGLE_XML_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "classes.xml"
private final int inRepresentation;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int outRepresentation;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.InputStream input;
descriptor: Ljava/io/InputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.OutputStream output;
descriptor: Ljava/io/OutputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.xml.transform.Source xslt;
descriptor: Ljavax/xml/transform/Source;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int n;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(int, int, java.io.InputStream, java.io.OutputStream, javax.xml.transform.Source);
descriptor: (IILjava/io/InputStream;Ljava/io/OutputStream;Ljavax/xml/transform/Source;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, 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 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield org.objectweb.asm.xml.Processor.n:I
2: aload 0
iload 1
putfield org.objectweb.asm.xml.Processor.inRepresentation:I
3: aload 0
iload 2
putfield org.objectweb.asm.xml.Processor.outRepresentation:I
4: aload 0
aload 3
putfield org.objectweb.asm.xml.Processor.input:Ljava/io/InputStream;
5: aload 0
aload 4
putfield org.objectweb.asm.xml.Processor.output:Ljava/io/OutputStream;
6: aload 0
aload 5
putfield org.objectweb.asm.xml.Processor.xslt:Ljavax/xml/transform/Source;
7: return
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 8 0 this Lorg/objectweb/asm/xml/Processor;
0 8 1 inRepresenation I
0 8 2 outRepresentation I
0 8 3 input Ljava/io/InputStream;
0 8 4 output Ljava/io/OutputStream;
0 8 5 xslt Ljavax/xml/transform/Source;
MethodParameters:
Name Flags
inRepresenation final
outRepresentation final
input final
output final
xslt final
public int process();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=14, args_size=1
start local 0 0: new java.util.zip.ZipInputStream
dup
aload 0
getfield org.objectweb.asm.xml.Processor.input:Ljava/io/InputStream;
invokespecial java.util.zip.ZipInputStream.<init>:(Ljava/io/InputStream;)V
astore 1
start local 1 1: new java.util.zip.ZipOutputStream
dup
aload 0
getfield org.objectweb.asm.xml.Processor.output:Ljava/io/OutputStream;
invokespecial java.util.zip.ZipOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 2
start local 2 2: new java.io.OutputStreamWriter
dup
aload 2
invokespecial java.io.OutputStreamWriter.<init>:(Ljava/io/OutputStream;)V
astore 3
start local 3 3: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
4: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
5: invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
6: invokestatic javax.xml.transform.TransformerFactory.newInstance:()Ljavax/xml/transform/TransformerFactory;
astore 4
start local 4 7: aload 4
ldc "http://javax.xml.transform.sax.SAXSource/feature"
invokevirtual javax.xml.transform.TransformerFactory.getFeature:(Ljava/lang/String;)Z
ifeq 9
8: aload 4
ldc "http://javax.xml.transform.sax.SAXResult/feature"
invokevirtual javax.xml.transform.TransformerFactory.getFeature:(Ljava/lang/String;)Z
ifne 10
9: StackMap locals: org.objectweb.asm.xml.Processor java.util.zip.ZipInputStream java.util.zip.ZipOutputStream java.io.OutputStreamWriter javax.xml.transform.TransformerFactory
StackMap stack:
iconst_0
ireturn
10: StackMap locals:
StackMap stack:
aload 4
checkcast javax.xml.transform.sax.SAXTransformerFactory
astore 5
start local 5 11: aconst_null
astore 6
start local 6 12: aload 0
getfield org.objectweb.asm.xml.Processor.xslt:Ljavax/xml/transform/Source;
ifnull 14
13: aload 5
aload 0
getfield org.objectweb.asm.xml.Processor.xslt:Ljavax/xml/transform/Source;
invokevirtual javax.xml.transform.sax.SAXTransformerFactory.newTemplates:(Ljavax/xml/transform/Source;)Ljavax/xml/transform/Templates;
astore 6
14: StackMap locals: javax.xml.transform.sax.SAXTransformerFactory javax.xml.transform.Templates
StackMap stack:
aload 0
aload 2
invokevirtual org.objectweb.asm.xml.Processor.getEntryElement:(Ljava/util/zip/ZipOutputStream;)Lorg/objectweb/asm/xml/Processor$EntryElement;
astore 7
start local 7 15: aconst_null
astore 8
start local 8 16: aload 0
getfield org.objectweb.asm.xml.Processor.outRepresentation:I
tableswitch { // 1 - 3
1: 17
2: 21
3: 25
default: 28
}
17: StackMap locals: org.objectweb.asm.xml.Processor$EntryElement org.xml.sax.ContentHandler
StackMap stack:
new org.objectweb.asm.xml.Processor$OutputSlicingHandler
dup
18: new org.objectweb.asm.xml.Processor$ASMContentHandlerFactory
dup
aload 2
invokespecial org.objectweb.asm.xml.Processor$ASMContentHandlerFactory.<init>:(Ljava/io/OutputStream;)V
aload 7
iconst_0
19: invokespecial org.objectweb.asm.xml.Processor$OutputSlicingHandler.<init>:(Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;Lorg/objectweb/asm/xml/Processor$EntryElement;Z)V
astore 8
20: goto 28
21: StackMap locals:
StackMap stack:
new org.objectweb.asm.xml.Processor$OutputSlicingHandler
dup
new org.objectweb.asm.xml.Processor$SAXWriterFactory
dup
aload 3
22: iconst_1
invokespecial org.objectweb.asm.xml.Processor$SAXWriterFactory.<init>:(Ljava/io/Writer;Z)V
aload 7
iconst_1
23: invokespecial org.objectweb.asm.xml.Processor$OutputSlicingHandler.<init>:(Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;Lorg/objectweb/asm/xml/Processor$EntryElement;Z)V
astore 8
24: goto 28
25: StackMap locals:
StackMap stack:
new java.util.zip.ZipEntry
dup
ldc "classes.xml"
invokespecial java.util.zip.ZipEntry.<init>:(Ljava/lang/String;)V
astore 9
start local 9 26: aload 2
aload 9
invokevirtual java.util.zip.ZipOutputStream.putNextEntry:(Ljava/util/zip/ZipEntry;)V
27: new org.objectweb.asm.xml.Processor$SAXWriter
dup
aload 3
iconst_0
invokespecial org.objectweb.asm.xml.Processor$SAXWriter.<init>:(Ljava/io/Writer;Z)V
astore 8
end local 9 28: StackMap locals:
StackMap stack:
aload 6
ifnonnull 31
29: aload 8
astore 9
start local 9 30: goto 36
end local 9 31: StackMap locals:
StackMap stack:
new org.objectweb.asm.xml.Processor$InputSlicingHandler
dup
ldc "class"
aload 8
32: new org.objectweb.asm.xml.Processor$TransformerHandlerFactory
dup
aload 5
aload 6
33: aload 8
34: invokespecial org.objectweb.asm.xml.Processor$TransformerHandlerFactory.<init>:(Ljavax/xml/transform/sax/SAXTransformerFactory;Ljavax/xml/transform/Templates;Lorg/xml/sax/ContentHandler;)V
35: invokespecial org.objectweb.asm.xml.Processor$InputSlicingHandler.<init>:(Ljava/lang/String;Lorg/xml/sax/ContentHandler;Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;)V
astore 9
start local 9 36: StackMap locals: org.xml.sax.ContentHandler
StackMap stack:
new org.objectweb.asm.xml.Processor$SubdocumentHandlerFactory
dup
37: aload 9
38: invokespecial org.objectweb.asm.xml.Processor$SubdocumentHandlerFactory.<init>:(Lorg/xml/sax/ContentHandler;)V
astore 10
start local 10 39: aload 9
ifnull 44
aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_3
if_icmpeq 44
40: aload 9
invokeinterface org.xml.sax.ContentHandler.startDocument:()V
41: aload 9
ldc ""
ldc "classes"
ldc "classes"
42: new org.xml.sax.helpers.AttributesImpl
dup
invokespecial org.xml.sax.helpers.AttributesImpl.<init>:()V
43: invokeinterface org.xml.sax.ContentHandler.startElement:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/xml/sax/Attributes;)V
44: StackMap locals: org.objectweb.asm.xml.Processor$ContentHandlerFactory
StackMap stack:
iconst_0
istore 11
start local 11 45: goto 54
start local 12 46: StackMap locals: int java.util.zip.ZipEntry
StackMap stack:
aload 0
aload 12
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
aload 0
dup
getfield org.objectweb.asm.xml.Processor.n:I
dup_x1
iconst_1
iadd
putfield org.objectweb.asm.xml.Processor.n:I
invokevirtual org.objectweb.asm.xml.Processor.update:(Ljava/lang/Object;I)V
47: aload 0
aload 12
invokevirtual org.objectweb.asm.xml.Processor.isClassEntry:(Ljava/util/zip/ZipEntry;)Z
ifeq 50
48: aload 0
aload 1
aload 12
aload 10
invokevirtual org.objectweb.asm.xml.Processor.processEntry:(Ljava/util/zip/ZipInputStream;Ljava/util/zip/ZipEntry;Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;)V
49: goto 53
50: StackMap locals:
StackMap stack:
aload 7
aload 0
aload 12
invokevirtual org.objectweb.asm.xml.Processor.getName:(Ljava/util/zip/ZipEntry;)Ljava/lang/String;
invokeinterface org.objectweb.asm.xml.Processor$EntryElement.openEntry:(Ljava/lang/String;)Ljava/io/OutputStream;
astore 13
start local 13 51: aload 0
aload 1
aload 13
invokevirtual org.objectweb.asm.xml.Processor.copyEntry:(Ljava/io/InputStream;Ljava/io/OutputStream;)V
52: aload 7
invokeinterface org.objectweb.asm.xml.Processor$EntryElement.closeEntry:()V
end local 13 53: StackMap locals:
StackMap stack:
iinc 11 1
end local 12 54: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.util.zip.ZipInputStream.getNextEntry:()Ljava/util/zip/ZipEntry;
dup
astore 12
start local 12 55: ifnonnull 46
56: aload 9
ifnull 59
aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_3
if_icmpeq 59
57: aload 9
ldc ""
ldc "classes"
ldc "classes"
invokeinterface org.xml.sax.ContentHandler.endElement:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
58: aload 9
invokeinterface org.xml.sax.ContentHandler.endDocument:()V
59: StackMap locals: java.util.zip.ZipEntry
StackMap stack:
aload 0
getfield org.objectweb.asm.xml.Processor.outRepresentation:I
iconst_3
if_icmpne 61
60: aload 2
invokevirtual java.util.zip.ZipOutputStream.closeEntry:()V
61: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.util.zip.ZipOutputStream.flush:()V
62: aload 2
invokevirtual java.util.zip.ZipOutputStream.close:()V
63: iload 11
ireturn
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 64 0 this Lorg/objectweb/asm/xml/Processor;
1 64 1 zis Ljava/util/zip/ZipInputStream;
2 64 2 zos Ljava/util/zip/ZipOutputStream;
3 64 3 osw Ljava/io/OutputStreamWriter;
7 64 4 tf Ljavax/xml/transform/TransformerFactory;
11 64 5 saxtf Ljavax/xml/transform/sax/SAXTransformerFactory;
12 64 6 templates Ljavax/xml/transform/Templates;
15 64 7 entryElement Lorg/objectweb/asm/xml/Processor$EntryElement;
16 64 8 outDocHandler Lorg/xml/sax/ContentHandler;
26 28 9 outputEntry Ljava/util/zip/ZipEntry;
30 31 9 inDocHandler Lorg/xml/sax/ContentHandler;
36 64 9 inDocHandler Lorg/xml/sax/ContentHandler;
39 64 10 inDocHandlerFactory Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;
45 64 11 i I
46 54 12 ze Ljava/util/zip/ZipEntry;
55 64 12 ze Ljava/util/zip/ZipEntry;
51 53 13 os Ljava/io/OutputStream;
Exceptions:
throws javax.xml.transform.TransformerException, java.io.IOException, org.xml.sax.SAXException
private void copyEntry(java.io.InputStream, java.io.OutputStream);
descriptor: (Ljava/io/InputStream;Ljava/io/OutputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.objectweb.asm.xml.Processor.outRepresentation:I
iconst_3
if_icmpne 2
1: return
2: StackMap locals:
StackMap stack:
sipush 2048
newarray 8
astore 3
start local 3 3: goto 5
start local 4 4: StackMap locals: byte[] int
StackMap stack:
aload 2
aload 3
iconst_0
iload 4
invokevirtual java.io.OutputStream.write:([BII)V
end local 4 5: StackMap locals:
StackMap stack:
aload 1
aload 3
invokevirtual java.io.InputStream.read:([B)I
dup
istore 4
start local 4 6: iconst_m1
if_icmpne 4
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/objectweb/asm/xml/Processor;
0 8 1 is Ljava/io/InputStream;
0 8 2 os Ljava/io/OutputStream;
3 8 3 buff [B
4 5 4 i I
6 8 4 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
is final
os final
private boolean isClassEntry(java.util.zip.ZipEntry);
descriptor: (Ljava/util/zip/ZipEntry;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_3
if_icmpne 2
aload 2
ldc "classes.xml"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 4
2: StackMap locals: java.lang.String
StackMap stack:
aload 2
ldc ".class"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 4
aload 2
ldc ".class.xml"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 4
3: iconst_0
ireturn
StackMap locals:
StackMap stack:
4: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/objectweb/asm/xml/Processor;
0 5 1 ze Ljava/util/zip/ZipEntry;
1 5 2 name Ljava/lang/String;
MethodParameters:
Name Flags
ze final
private void processEntry(java.util.zip.ZipInputStream, java.util.zip.ZipEntry, org.objectweb.asm.xml.Processor$ContentHandlerFactory);
descriptor: (Ljava/util/zip/ZipInputStream;Ljava/util/zip/ZipEntry;Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokeinterface org.objectweb.asm.xml.Processor$ContentHandlerFactory.createContentHandler:()Lorg/xml/sax/ContentHandler;
astore 4
start local 4 1: aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_3
if_icmpne 2
iconst_1
goto 3
StackMap locals: org.xml.sax.ContentHandler
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 5
start local 5 4: aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_1
if_icmpne 8
5: new org.objectweb.asm.ClassReader
dup
aload 1
aload 2
invokestatic org.objectweb.asm.xml.Processor.readEntry:(Ljava/io/InputStream;Ljava/util/zip/ZipEntry;)[B
invokespecial org.objectweb.asm.ClassReader.<init>:([B)V
astore 6
start local 6 6: aload 6
new org.objectweb.asm.xml.SAXClassAdapter
dup
aload 4
iload 5
invokespecial org.objectweb.asm.xml.SAXClassAdapter.<init>:(Lorg/xml/sax/ContentHandler;Z)V
iconst_0
invokevirtual org.objectweb.asm.ClassReader.accept:(Lorg/objectweb/asm/ClassVisitor;I)V
end local 6 7: goto 23
8: StackMap locals: int
StackMap stack:
invokestatic org.xml.sax.helpers.XMLReaderFactory.createXMLReader:()Lorg/xml/sax/XMLReader;
astore 6
start local 6 9: aload 6
aload 4
invokeinterface org.xml.sax.XMLReader.setContentHandler:(Lorg/xml/sax/ContentHandler;)V
10: aload 6
11: new org.xml.sax.InputSource
dup
12: iload 5
ifeq 14
new org.objectweb.asm.xml.Processor$ProtectedInputStream
dup
13: aload 1
invokespecial org.objectweb.asm.xml.Processor$ProtectedInputStream.<init>:(Ljava/io/InputStream;)V
goto 17
StackMap locals: org.objectweb.asm.xml.Processor java.util.zip.ZipInputStream java.util.zip.ZipEntry org.objectweb.asm.xml.Processor$ContentHandlerFactory org.xml.sax.ContentHandler int org.xml.sax.XMLReader
StackMap stack: org.xml.sax.XMLReader new 11 new 11
14: new java.io.ByteArrayInputStream
dup
aload 1
15: aload 2
16: invokestatic org.objectweb.asm.xml.Processor.readEntry:(Ljava/io/InputStream;Ljava/util/zip/ZipEntry;)[B
invokespecial java.io.ByteArrayInputStream.<init>:([B)V
StackMap locals: org.objectweb.asm.xml.Processor java.util.zip.ZipInputStream java.util.zip.ZipEntry org.objectweb.asm.xml.Processor$ContentHandlerFactory org.xml.sax.ContentHandler int org.xml.sax.XMLReader
StackMap stack: org.xml.sax.XMLReader new 11 new 11 java.io.InputStream
17: invokespecial org.xml.sax.InputSource.<init>:(Ljava/io/InputStream;)V
18: invokeinterface org.xml.sax.XMLReader.parse:(Lorg/xml/sax/InputSource;)V
end local 6 end local 5 19: goto 23
StackMap locals: org.objectweb.asm.xml.Processor java.util.zip.ZipInputStream java.util.zip.ZipEntry org.objectweb.asm.xml.Processor$ContentHandlerFactory org.xml.sax.ContentHandler
StackMap stack: java.lang.Exception
20: astore 5
start local 5 21: aload 0
aload 2
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
iconst_0
invokevirtual org.objectweb.asm.xml.Processor.update:(Ljava/lang/Object;I)V
22: aload 0
aload 5
iconst_0
invokevirtual org.objectweb.asm.xml.Processor.update:(Ljava/lang/Object;I)V
end local 5 23: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/objectweb/asm/xml/Processor;
0 24 1 zis Ljava/util/zip/ZipInputStream;
0 24 2 ze Ljava/util/zip/ZipEntry;
0 24 3 handlerFactory Lorg/objectweb/asm/xml/Processor$ContentHandlerFactory;
1 24 4 handler Lorg/xml/sax/ContentHandler;
4 19 5 singleInputDocument Z
6 7 6 cr Lorg/objectweb/asm/ClassReader;
9 19 6 reader Lorg/xml/sax/XMLReader;
21 23 5 ex Ljava/lang/Exception;
Exception table:
from to target type
1 19 20 Class java.lang.Exception
MethodParameters:
Name Flags
zis final
ze final
handlerFactory final
private org.objectweb.asm.xml.Processor$EntryElement getEntryElement(java.util.zip.ZipOutputStream);
descriptor: (Ljava/util/zip/ZipOutputStream;)Lorg/objectweb/asm/xml/Processor$EntryElement;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.objectweb.asm.xml.Processor.outRepresentation:I
iconst_3
if_icmpne 2
1: new org.objectweb.asm.xml.Processor$SingleDocElement
dup
aload 1
invokespecial org.objectweb.asm.xml.Processor$SingleDocElement.<init>:(Ljava/io/OutputStream;)V
areturn
2: StackMap locals:
StackMap stack:
new org.objectweb.asm.xml.Processor$ZipEntryElement
dup
aload 1
invokespecial org.objectweb.asm.xml.Processor$ZipEntryElement.<init>:(Ljava/util/zip/ZipOutputStream;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/objectweb/asm/xml/Processor;
0 3 1 zos Ljava/util/zip/ZipOutputStream;
MethodParameters:
Name Flags
zos final
private java.lang.String getName(java.util.zip.ZipEntry);
descriptor: (Ljava/util/zip/ZipEntry;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.util.zip.ZipEntry.getName:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
aload 1
invokevirtual org.objectweb.asm.xml.Processor.isClassEntry:(Ljava/util/zip/ZipEntry;)Z
ifeq 8
2: aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_1
if_icmpeq 5
aload 0
getfield org.objectweb.asm.xml.Processor.outRepresentation:I
iconst_1
if_icmpne 5
3: aload 2
iconst_0
aload 2
invokevirtual java.lang.String.length:()I
iconst_4
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 2
4: goto 8
StackMap locals: java.lang.String
StackMap stack:
5: aload 0
getfield org.objectweb.asm.xml.Processor.inRepresentation:I
iconst_1
if_icmpne 8
6: aload 0
getfield org.objectweb.asm.xml.Processor.outRepresentation:I
iconst_1
if_icmpeq 8
7: new java.lang.StringBuilder
dup
aload 2
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".xml"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
8: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/objectweb/asm/xml/Processor;
0 9 1 ze Ljava/util/zip/ZipEntry;
1 9 2 name Ljava/lang/String;
MethodParameters:
Name Flags
ze final
private static byte[] readEntry(java.io.InputStream, java.util.zip.ZipEntry);
descriptor: (Ljava/io/InputStream;Ljava/util/zip/ZipEntry;)[B
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.util.zip.ZipEntry.getSize:()J
lstore 2
start local 2 1: lload 2
ldc -1
lcmp
ifle 9
2: lload 2
l2i
newarray 8
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 6
start local 6 5: StackMap locals: java.io.InputStream java.util.zip.ZipEntry long byte[] int int
StackMap stack:
iload 5
iload 6
iadd
istore 5
end local 6 6: StackMap locals:
StackMap stack:
aload 0
aload 4
iload 5
aload 4
arraylength
iload 5
isub
invokevirtual java.io.InputStream.read:([BII)I
dup
istore 6
start local 6 7: ifgt 5
8: aload 4
areturn
end local 6 end local 5 end local 4 9: StackMap locals:
StackMap stack:
new java.io.ByteArrayOutputStream
dup
invokespecial java.io.ByteArrayOutputStream.<init>:()V
astore 4
start local 4 10: sipush 4096
newarray 8
astore 5
start local 5 11: goto 13
start local 6 12: StackMap locals: java.io.ByteArrayOutputStream byte[] int
StackMap stack:
aload 4
aload 5
iconst_0
iload 6
invokevirtual java.io.ByteArrayOutputStream.write:([BII)V
end local 6 13: StackMap locals:
StackMap stack:
aload 0
aload 5
invokevirtual java.io.InputStream.read:([B)I
dup
istore 6
start local 6 14: iconst_m1
if_icmpne 12
15: aload 4
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
areturn
end local 6 end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 zis Ljava/io/InputStream;
0 16 1 ze Ljava/util/zip/ZipEntry;
1 16 2 size J
3 9 4 buff [B
4 9 5 k I
5 6 6 n I
7 9 6 n I
10 16 4 bos Ljava/io/ByteArrayOutputStream;
11 16 5 buff [B
12 13 6 i I
14 16 6 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
zis final
ze final
protected void update(java.lang.Object, int);
descriptor: (Ljava/lang/Object;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
instanceof java.lang.Throwable
ifeq 3
1: aload 1
checkcast java.lang.Throwable
invokevirtual java.lang.Throwable.printStackTrace:()V
2: goto 5
3: StackMap locals:
StackMap stack:
iload 2
bipush 100
irem
ifne 5
4: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
iload 2
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
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 java.io.PrintStream.println:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/objectweb/asm/xml/Processor;
0 6 1 arg Ljava/lang/Object;
0 6 2 n I
MethodParameters:
Name Flags
arg final
n final
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=12, args_size=1
start local 0 0: aload 0
arraylength
iconst_2
if_icmpge 3
1: invokestatic org.objectweb.asm.xml.Processor.showUsage:()V
2: return
3: StackMap locals:
StackMap stack:
aload 0
iconst_0
aaload
invokestatic org.objectweb.asm.xml.Processor.getRepresentation:(Ljava/lang/String;)I
istore 1
start local 1 4: aload 0
iconst_1
aaload
invokestatic org.objectweb.asm.xml.Processor.getRepresentation:(Ljava/lang/String;)I
istore 2
start local 2 5: getstatic java.lang.System.in:Ljava/io/InputStream;
astore 3
start local 3 6: new java.io.BufferedOutputStream
dup
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 4
start local 4 7: aconst_null
astore 5
start local 5 8: iconst_2
istore 6
start local 6 9: goto 22
10: StackMap locals: java.lang.String[] int int java.io.InputStream java.io.OutputStream javax.xml.transform.Source int
StackMap stack:
ldc "-in"
aload 0
iload 6
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 13
11: new java.io.FileInputStream
dup
aload 0
iinc 6 1
iload 6
aaload
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
astore 3
12: goto 21
StackMap locals:
StackMap stack:
13: ldc "-out"
aload 0
iload 6
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
14: new java.io.BufferedOutputStream
dup
new java.io.FileOutputStream
dup
aload 0
iinc 6 1
iload 6
aaload
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;)V
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 4
15: goto 21
StackMap locals:
StackMap stack:
16: ldc "-xslt"
aload 0
iload 6
aaload
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 19
17: new javax.xml.transform.stream.StreamSource
dup
new java.io.FileInputStream
dup
aload 0
iinc 6 1
iload 6
aaload
invokespecial java.io.FileInputStream.<init>:(Ljava/lang/String;)V
invokespecial javax.xml.transform.stream.StreamSource.<init>:(Ljava/io/InputStream;)V
astore 5
18: goto 21
19: StackMap locals:
StackMap stack:
invokestatic org.objectweb.asm.xml.Processor.showUsage:()V
20: return
21: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
22: iload 6
aload 0
arraylength
if_icmplt 10
end local 6 23: iload 1
ifeq 24
iload 2
ifne 26
24: StackMap locals:
StackMap stack:
invokestatic org.objectweb.asm.xml.Processor.showUsage:()V
25: return
26: StackMap locals:
StackMap stack:
new org.objectweb.asm.xml.Processor
dup
iload 1
iload 2
aload 3
27: aload 4
aload 5
28: invokespecial org.objectweb.asm.xml.Processor.<init>:(IILjava/io/InputStream;Ljava/io/OutputStream;Ljavax/xml/transform/Source;)V
astore 6
start local 6 29: invokestatic java.lang.System.currentTimeMillis:()J
lstore 7
start local 7 30: aload 6
invokevirtual org.objectweb.asm.xml.Processor.process:()I
istore 9
start local 9 31: invokestatic java.lang.System.currentTimeMillis:()J
lstore 10
start local 10 32: getstatic java.lang.System.err:Ljava/io/PrintStream;
iload 9
invokevirtual java.io.PrintStream.println:(I)V
33: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
lload 10
lload 7
lsub
invokestatic java.lang.String.valueOf:(J)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "ms "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc 1000.0
iload 9
i2f
fmul
lload 10
lload 7
lsub
l2f
fdiv
invokevirtual java.lang.StringBuilder.append:(F)Ljava/lang/StringBuilder;
34: ldc " resources/sec"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
35: invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
36: return
end local 10 end local 9 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 37 0 args [Ljava/lang/String;
4 37 1 inRepresentation I
5 37 2 outRepresentation I
6 37 3 is Ljava/io/InputStream;
7 37 4 os Ljava/io/OutputStream;
8 37 5 xslt Ljavax/xml/transform/Source;
9 23 6 i I
29 37 6 m Lorg/objectweb/asm/xml/Processor;
30 37 7 l1 J
31 37 9 n I
32 37 10 l2 J
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
args final
private static int getRepresentation(java.lang.String);
descriptor: (Ljava/lang/String;)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: ldc "code"
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
ldc "xml"
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
3: iconst_2
ireturn
4: StackMap locals:
StackMap stack:
ldc "singlexml"
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: iconst_3
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 s Ljava/lang/String;
MethodParameters:
Name Flags
s final
private static void showUsage();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic java.lang.System.err:Ljava/io/PrintStream;
1: ldc "Usage: Main <in format> <out format> [-in <input jar>] [-out <output jar>] [-xslt <xslt fiel>]"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: getstatic java.lang.System.err:Ljava/io/PrintStream;
3: ldc " when -in or -out is omitted sysin and sysout would be used"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
4: getstatic java.lang.System.err:Ljava/io/PrintStream;
5: ldc " <in format> and <out format> - code | xml | singlexml"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
6: return
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "Processor.java"
NestMembers:
org.objectweb.asm.xml.Processor$ASMContentHandlerFactory org.objectweb.asm.xml.Processor$ASMContentHandlerFactory$1 org.objectweb.asm.xml.Processor$ContentHandlerFactory org.objectweb.asm.xml.Processor$EntryElement org.objectweb.asm.xml.Processor$InputSlicingHandler org.objectweb.asm.xml.Processor$OutputSlicingHandler org.objectweb.asm.xml.Processor$ProtectedInputStream org.objectweb.asm.xml.Processor$SAXWriter org.objectweb.asm.xml.Processor$SAXWriterFactory org.objectweb.asm.xml.Processor$SingleDocElement org.objectweb.asm.xml.Processor$SubdocumentHandlerFactory org.objectweb.asm.xml.Processor$TransformerHandlerFactory org.objectweb.asm.xml.Processor$ZipEntryElement
InnerClasses:
private final ASMContentHandlerFactory = org.objectweb.asm.xml.Processor$ASMContentHandlerFactory of org.objectweb.asm.xml.Processor
private abstract ContentHandlerFactory = org.objectweb.asm.xml.Processor$ContentHandlerFactory of org.objectweb.asm.xml.Processor
private abstract EntryElement = org.objectweb.asm.xml.Processor$EntryElement of org.objectweb.asm.xml.Processor
private final InputSlicingHandler = org.objectweb.asm.xml.Processor$InputSlicingHandler of org.objectweb.asm.xml.Processor
private final OutputSlicingHandler = org.objectweb.asm.xml.Processor$OutputSlicingHandler of org.objectweb.asm.xml.Processor
private final ProtectedInputStream = org.objectweb.asm.xml.Processor$ProtectedInputStream of org.objectweb.asm.xml.Processor
private final SAXWriter = org.objectweb.asm.xml.Processor$SAXWriter of org.objectweb.asm.xml.Processor
private final SAXWriterFactory = org.objectweb.asm.xml.Processor$SAXWriterFactory of org.objectweb.asm.xml.Processor
private final SingleDocElement = org.objectweb.asm.xml.Processor$SingleDocElement of org.objectweb.asm.xml.Processor
private final SubdocumentHandlerFactory = org.objectweb.asm.xml.Processor$SubdocumentHandlerFactory of org.objectweb.asm.xml.Processor
private final TransformerHandlerFactory = org.objectweb.asm.xml.Processor$TransformerHandlerFactory of org.objectweb.asm.xml.Processor
private final ZipEntryElement = org.objectweb.asm.xml.Processor$ZipEntryElement of org.objectweb.asm.xml.Processor