class org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider
super_class: java.lang.Object
{
private static final java.util.Map<java.lang.ClassLoader, org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider> saxParserProviders;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/ClassLoader;Lorg/jboss/resteasy/plugins/providers/jaxb/SecureUnmarshaller$SAXParserProvider;>;
private final javax.xml.parsers.SAXParserFactory[] factories;
descriptor: [Ljavax/xml/parsers/SAXParserFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.util.WeakHashMap
dup
invokespecial java.util.WeakHashMap.<init>:()V
invokestatic java.util.Collections.synchronizedMap:(Ljava/util/Map;)Ljava/util/Map;
putstatic org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.saxParserProviders:Ljava/util/Map;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
bipush 8
anewarray javax.xml.parsers.SAXParserFactory
putfield org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.factories:[Ljavax/xml/parsers/SAXParserFactory;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jboss/resteasy/plugins/providers/jaxb/SecureUnmarshaller$SAXParserProvider;
public static org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider getInstance();
descriptor: ()Lorg/jboss/resteasy/plugins/providers/jaxb/SecureUnmarshaller$SAXParserProvider;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=0
0: invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
astore 0
start local 0 1: aconst_null
astore 1
start local 1 2: aload 0
ifnonnull 5
3: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 1
4: goto 9
5: StackMap locals: java.lang.SecurityManager java.lang.ClassLoader
StackMap stack:
new org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider$1
dup
invokespecial org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider$1.<init>:()V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedExceptionAction;)Ljava/lang/Object;
checkcast java.lang.ClassLoader
astore 1
6: goto 9
StackMap locals:
StackMap stack: java.security.PrivilegedActionException
7: astore 2
start local 2 8: new java.lang.SecurityException
dup
aload 2
invokespecial java.lang.SecurityException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 9: StackMap locals:
StackMap stack:
getstatic org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.saxParserProviders:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider
astore 2
start local 2 10: aload 2
ifnonnull 14
11: new org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider
dup
invokespecial org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.<init>:()V
astore 2
12: getstatic org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.saxParserProviders:Ljava/util/Map;
aload 1
aload 2
invokeinterface java.util.Map.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider
astore 3
start local 3 13: aload 3
ifnull 14
aload 3
astore 2
end local 3 14: StackMap locals: org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 15 0 sm Ljava/lang/SecurityManager;
2 15 1 tccl Ljava/lang/ClassLoader;
8 9 2 e Ljava/security/PrivilegedActionException;
10 15 2 spp Lorg/jboss/resteasy/plugins/providers/jaxb/SecureUnmarshaller$SAXParserProvider;
13 14 3 s Lorg/jboss/resteasy/plugins/providers/jaxb/SecureUnmarshaller$SAXParserProvider;
Exception table:
from to target type
5 6 7 Class java.security.PrivilegedActionException
public javax.xml.parsers.SAXParser getParser(boolean, boolean, boolean);
descriptor: (ZZZ)Ljavax/xml/parsers/SAXParser;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 1
ifeq 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: iload 2
ifeq 3
iconst_2
goto 4
StackMap locals:
StackMap stack: int
3: iconst_0
StackMap locals: org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider int int int
StackMap stack: int int
4: ior
iload 3
ifeq 5
iconst_4
goto 6
StackMap locals:
StackMap stack: int
5: iconst_0
StackMap locals: org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider int int int
StackMap stack: int int
6: ior
istore 4
start local 4 7: aload 0
getfield org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.factories:[Ljavax/xml/parsers/SAXParserFactory;
iload 4
aaload
astore 5
start local 5 8: aload 5
ifnonnull 12
9: invokestatic javax.xml.parsers.SAXParserFactory.newInstance:()Ljavax/xml/parsers/SAXParserFactory;
astore 5
10: aload 5
iload 1
iload 2
iload 3
invokestatic org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller.configureParserFactory:(Ljavax/xml/parsers/SAXParserFactory;ZZZ)V
11: aload 0
getfield org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider.factories:[Ljavax/xml/parsers/SAXParserFactory;
iload 4
aload 5
aastore
12: StackMap locals: int javax.xml.parsers.SAXParserFactory
StackMap stack:
aload 5
invokevirtual javax.xml.parsers.SAXParserFactory.newSAXParser:()Ljavax/xml/parsers/SAXParser;
astore 6
start local 6 13: aload 6
iload 1
invokestatic org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller.configParser:(Ljavax/xml/parsers/SAXParser;Z)V
14: aload 6
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 15 0 this Lorg/jboss/resteasy/plugins/providers/jaxb/SecureUnmarshaller$SAXParserProvider;
0 15 1 disableExternalEntities Z
0 15 2 enableSecureProcessingFeature Z
0 15 3 disableDTDs Z
7 15 4 index I
8 15 5 f Ljavax/xml/parsers/SAXParserFactory;
13 15 6 sp Ljavax/xml/parsers/SAXParser;
Exceptions:
throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXException
MethodParameters:
Name Flags
disableExternalEntities
enableSecureProcessingFeature
disableDTDs
}
SourceFile: "SecureUnmarshaller.java"
NestHost: org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller
InnerClasses:
private SAXParserProvider = org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider of org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller
org.jboss.resteasy.plugins.providers.jaxb.SecureUnmarshaller$SAXParserProvider$1