public class com.sun.xml.internal.messaging.saaj.util.ParserPool
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.xml.internal.messaging.saaj.util.ParserPool
super_class: java.lang.Object
{
private final java.util.concurrent.BlockingQueue<javax.xml.parsers.SAXParser> queue;
descriptor: Ljava/util/concurrent/BlockingQueue;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/concurrent/BlockingQueue<Ljavax/xml/parsers/SAXParser;>;
private javax.xml.parsers.SAXParserFactory factory;
descriptor: Ljavax/xml/parsers/SAXParserFactory;
flags: (0x0002) ACC_PRIVATE
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.ArrayBlockingQueue
dup
iload 1
invokespecial java.util.concurrent.ArrayBlockingQueue.<init>:(I)V
putfield com.sun.xml.internal.messaging.saaj.util.ParserPool.queue:Ljava/util/concurrent/BlockingQueue;
2: aload 0
ldc "com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl"
invokestatic com.sun.xml.internal.messaging.saaj.util.SAAJUtil.getSystemClassLoader:()Ljava/lang/ClassLoader;
invokestatic javax.xml.parsers.SAXParserFactory.newInstance:(Ljava/lang/String;Ljava/lang/ClassLoader;)Ljavax/xml/parsers/SAXParserFactory;
putfield com.sun.xml.internal.messaging.saaj.util.ParserPool.factory:Ljavax/xml/parsers/SAXParserFactory;
3: aload 0
getfield com.sun.xml.internal.messaging.saaj.util.ParserPool.factory:Ljavax/xml/parsers/SAXParserFactory;
ldc "jdk.xml.resetSymbolTable"
iconst_1
invokevirtual javax.xml.parsers.SAXParserFactory.setFeature:(Ljava/lang/String;Z)V
4: goto 6
StackMap locals: com.sun.xml.internal.messaging.saaj.util.ParserPool int
StackMap stack: java.lang.Exception
5: pop
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.xml.internal.messaging.saaj.util.ParserPool.factory:Ljavax/xml/parsers/SAXParserFactory;
iconst_1
invokevirtual javax.xml.parsers.SAXParserFactory.setNamespaceAware:(Z)V
7: iconst_0
istore 2
start local 2 8: goto 19
9: StackMap locals: int
StackMap stack:
aload 0
getfield com.sun.xml.internal.messaging.saaj.util.ParserPool.queue:Ljava/util/concurrent/BlockingQueue;
aload 0
getfield com.sun.xml.internal.messaging.saaj.util.ParserPool.factory:Ljavax/xml/parsers/SAXParserFactory;
invokevirtual javax.xml.parsers.SAXParserFactory.newSAXParser:()Ljavax/xml/parsers/SAXParser;
invokeinterface java.util.concurrent.BlockingQueue.put:(Ljava/lang/Object;)V
10: goto 18
StackMap locals:
StackMap stack: java.lang.InterruptedException
11: astore 3
start local 3 12: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
13: new java.lang.RuntimeException
dup
aload 3
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 14: StackMap locals:
StackMap stack: javax.xml.parsers.ParserConfigurationException
astore 3
start local 3 15: new java.lang.RuntimeException
dup
aload 3
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 16: StackMap locals:
StackMap stack: org.xml.sax.SAXException
astore 3
start local 3 17: new java.lang.RuntimeException
dup
aload 3
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 18: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
19: iload 2
iload 1
if_icmplt 9
end local 2 20: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/sun/xml/internal/messaging/saaj/util/ParserPool;
0 21 1 capacity I
8 20 2 i I
12 14 3 ex Ljava/lang/InterruptedException;
15 16 3 ex Ljavax/xml/parsers/ParserConfigurationException;
17 18 3 ex Lorg/xml/sax/SAXException;
Exception table:
from to target type
3 4 5 Class org.xml.sax.SAXException
3 4 5 Class javax.xml.parsers.ParserConfigurationException
9 10 11 Class java.lang.InterruptedException
9 10 14 Class javax.xml.parsers.ParserConfigurationException
9 10 16 Class org.xml.sax.SAXException
MethodParameters:
Name Flags
capacity
public javax.xml.parsers.SAXParser get();
descriptor: ()Ljavax/xml/parsers/SAXParser;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.xml.internal.messaging.saaj.util.ParserPool.queue:Ljava/util/concurrent/BlockingQueue;
invokeinterface java.util.concurrent.BlockingQueue.take:()Ljava/lang/Object;
checkcast javax.xml.parsers.SAXParser
1: areturn
2: StackMap locals:
StackMap stack: java.lang.InterruptedException
astore 1
start local 1 3: new org.xml.sax.SAXException
dup
aload 1
invokespecial org.xml.sax.SAXException.<init>:(Ljava/lang/Exception;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/xml/internal/messaging/saaj/util/ParserPool;
3 4 1 ex Ljava/lang/InterruptedException;
Exception table:
from to target type
0 1 2 Class java.lang.InterruptedException
Exceptions:
throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXException
public boolean put(javax.xml.parsers.SAXParser);
descriptor: (Ljavax/xml/parsers/SAXParser;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.xml.internal.messaging.saaj.util.ParserPool.queue:Ljava/util/concurrent/BlockingQueue;
aload 1
invokeinterface java.util.concurrent.BlockingQueue.offer:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/xml/internal/messaging/saaj/util/ParserPool;
0 1 1 parser Ljavax/xml/parsers/SAXParser;
MethodParameters:
Name Flags
parser
public void returnParser(javax.xml.parsers.SAXParser);
descriptor: (Ljavax/xml/parsers/SAXParser;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual javax.xml.parsers.SAXParser.reset:()V
1: aload 0
aload 1
invokevirtual com.sun.xml.internal.messaging.saaj.util.ParserPool.put:(Ljavax/xml/parsers/SAXParser;)Z
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/xml/internal/messaging/saaj/util/ParserPool;
0 3 1 saxParser Ljavax/xml/parsers/SAXParser;
MethodParameters:
Name Flags
saxParser
}
SourceFile: "ParserPool.java"