final class com.sun.jndi.ldap.Obj$LoaderInputStream extends java.io.ObjectInputStream
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.jndi.ldap.Obj$LoaderInputStream
super_class: java.io.ObjectInputStream
{
private java.lang.ClassLoader classLoader;
descriptor: Ljava/lang/ClassLoader;
flags: (0x0002) ACC_PRIVATE
void <init>(java.io.InputStream, java.lang.ClassLoader);
descriptor: (Ljava/io/InputStream;Ljava/lang/ClassLoader;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial java.io.ObjectInputStream.<init>:(Ljava/io/InputStream;)V
1: aload 0
aload 2
putfield com.sun.jndi.ldap.Obj$LoaderInputStream.classLoader:Ljava/lang/ClassLoader;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/jndi/ldap/Obj$LoaderInputStream;
0 3 1 in Ljava/io/InputStream;
0 3 2 cl Ljava/lang/ClassLoader;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
in
cl
protected java.lang.Class<?> resolveClass(java.io.ObjectStreamClass);
descriptor: (Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.jndi.ldap.Obj$LoaderInputStream.classLoader:Ljava/lang/ClassLoader;
aload 1
invokevirtual java.io.ObjectStreamClass.getName:()Ljava/lang/String;
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
3: aload 0
aload 1
invokespecial java.io.ObjectInputStream.resolveClass:(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/jndi/ldap/Obj$LoaderInputStream;
0 4 1 desc Ljava/io/ObjectStreamClass;
Exception table:
from to target type
0 1 2 Class java.lang.ClassNotFoundException
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
Signature: (Ljava/io/ObjectStreamClass;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
desc
protected java.lang.Class<?> resolveProxyClass(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 1
arraylength
anewarray java.lang.Class
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 16
5: StackMap locals: com.sun.jndi.ldap.Obj$LoaderInputStream java.lang.String[] java.lang.ClassLoader int java.lang.Class[] int
StackMap stack:
aload 1
iload 5
aaload
iconst_0
aload 0
getfield com.sun.jndi.ldap.Obj$LoaderInputStream.classLoader:Ljava/lang/ClassLoader;
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 6
start local 6 6: aload 6
invokevirtual java.lang.Class.getModifiers:()I
iconst_1
iand
ifne 14
7: iload 3
ifeq 12
8: aload 2
aload 6
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
if_acmpeq 14
9: new java.lang.IllegalAccessError
dup
10: ldc "conflicting non-public interface class loaders"
11: invokespecial java.lang.IllegalAccessError.<init>:(Ljava/lang/String;)V
athrow
12: StackMap locals: java.lang.Class
StackMap stack:
aload 6
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
astore 2
13: iconst_1
istore 3
14: StackMap locals:
StackMap stack:
aload 4
iload 5
aload 6
aastore
end local 6 15: iinc 5 1
StackMap locals:
StackMap stack:
16: iload 5
aload 1
arraylength
if_icmplt 5
end local 5 17: iload 3
ifeq 19
18: aload 2
goto 20
StackMap locals:
StackMap stack:
19: aload 0
getfield com.sun.jndi.ldap.Obj$LoaderInputStream.classLoader:Ljava/lang/ClassLoader;
StackMap locals:
StackMap stack: java.lang.ClassLoader
20: aload 4
21: invokestatic java.lang.reflect.Proxy.getProxyClass:(Ljava/lang/ClassLoader;[Ljava/lang/Class;)Ljava/lang/Class;
22: areturn
23: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
astore 5
start local 5 24: new java.lang.ClassNotFoundException
dup
aconst_null
aload 5
invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
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 25 0 this Lcom/sun/jndi/ldap/Obj$LoaderInputStream;
0 25 1 interfaces [Ljava/lang/String;
1 25 2 nonPublicLoader Ljava/lang/ClassLoader;
2 25 3 hasNonPublicInterface Z
3 25 4 classObjs [Ljava/lang/Class;
4 17 5 i I
6 15 6 cl Ljava/lang/Class<*>;
24 25 5 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
17 22 23 Class java.lang.IllegalArgumentException
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
Signature: ([Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
interfaces
}
SourceFile: "Obj.java"
NestHost: com.sun.jndi.ldap.Obj
InnerClasses:
private final LoaderInputStream = com.sun.jndi.ldap.Obj$LoaderInputStream of com.sun.jndi.ldap.Obj