final class sun.awt.datatransfer.ClassLoaderObjectInputStream extends java.io.ObjectInputStream
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.awt.datatransfer.ClassLoaderObjectInputStream
super_class: java.io.ObjectInputStream
{
private final java.util.Map<java.util.Set<java.lang.String>, java.lang.ClassLoader> map;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/util/Set<Ljava/lang/String;>;Ljava/lang/ClassLoader;>;
void <init>(java.io.InputStream, java.util.Map<java.util.Set<java.lang.String>, java.lang.ClassLoader>);
descriptor: (Ljava/io/InputStream;Ljava/util/Map;)V
flags: (0x0000)
Code:
stack=3, 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 2
ifnonnull 3
2: new java.lang.NullPointerException
dup
ldc "Null map"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: sun.awt.datatransfer.ClassLoaderObjectInputStream java.io.InputStream java.util.Map
StackMap stack:
aload 0
aload 2
putfield sun.awt.datatransfer.ClassLoaderObjectInputStream.map:Ljava/util/Map;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/awt/datatransfer/ClassLoaderObjectInputStream;
0 5 1 is Ljava/io/InputStream;
0 5 2 map Ljava/util/Map<Ljava/util/Set<Ljava/lang/String;>;Ljava/lang/ClassLoader;>;
Exceptions:
throws java.io.IOException
Signature: (Ljava/io/InputStream;Ljava/util/Map<Ljava/util/Set<Ljava/lang/String;>;Ljava/lang/ClassLoader;>;)V
MethodParameters:
Name Flags
is
map
protected java.lang.Class<?> resolveClass(java.io.ObjectStreamClass);
descriptor: (Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectStreamClass.getName:()Ljava/lang/String;
astore 2
start local 2 1: new java.util.HashSet
dup
iconst_1
invokespecial java.util.HashSet.<init>:(I)V
astore 3
start local 3 2: aload 3
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
3: aload 0
getfield sun.awt.datatransfer.ClassLoaderObjectInputStream.map:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.ClassLoader
astore 4
start local 4 4: aload 4
ifnull 6
5: aload 2
iconst_0
aload 4
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
areturn
6: StackMap locals: java.lang.String java.util.Set java.lang.ClassLoader
StackMap stack:
aload 0
aload 1
invokespecial java.io.ObjectInputStream.resolveClass:(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/awt/datatransfer/ClassLoaderObjectInputStream;
0 7 1 classDesc Ljava/io/ObjectStreamClass;
1 7 2 className Ljava/lang/String;
2 7 3 s Ljava/util/Set<Ljava/lang/String;>;
4 7 4 classLoader Ljava/lang/ClassLoader;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
Signature: (Ljava/io/ObjectStreamClass;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
classDesc
protected java.lang.Class<?> resolveProxyClass(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: new java.util.HashSet
dup
aload 1
arraylength
invokespecial java.util.HashSet.<init>:(I)V
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: java.util.Set int
StackMap stack:
aload 2
aload 1
iload 3
aaload
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 1
arraylength
if_icmplt 3
end local 3 6: aload 0
getfield sun.awt.datatransfer.ClassLoaderObjectInputStream.map:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.ClassLoader
astore 3
start local 3 7: aload 3
ifnonnull 9
8: aload 0
aload 1
invokespecial java.io.ObjectInputStream.resolveProxyClass:([Ljava/lang/String;)Ljava/lang/Class;
areturn
9: StackMap locals: sun.awt.datatransfer.ClassLoaderObjectInputStream java.lang.String[] java.util.Set java.lang.ClassLoader
StackMap stack:
aconst_null
astore 4
start local 4 10: iconst_0
istore 5
start local 5 11: aload 1
arraylength
anewarray java.lang.Class
astore 6
start local 6 12: iconst_0
istore 7
start local 7 13: goto 25
14: StackMap locals: sun.awt.datatransfer.ClassLoaderObjectInputStream java.lang.String[] java.util.Set java.lang.ClassLoader java.lang.ClassLoader int java.lang.Class[] int
StackMap stack:
aload 1
iload 7
aaload
iconst_0
aload 3
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 8
start local 8 15: aload 8
invokevirtual java.lang.Class.getModifiers:()I
iconst_1
iand
ifne 23
16: iload 5
ifeq 21
17: aload 4
aload 8
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
if_acmpeq 23
18: new java.lang.IllegalAccessError
dup
19: ldc "conflicting non-public interface class loaders"
20: invokespecial java.lang.IllegalAccessError.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals: java.lang.Class
StackMap stack:
aload 8
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
astore 4
22: iconst_1
istore 5
23: StackMap locals:
StackMap stack:
aload 6
iload 7
aload 8
aastore
end local 8 24: iinc 7 1
StackMap locals:
StackMap stack:
25: iload 7
aload 1
arraylength
if_icmplt 14
end local 7 26: iload 5
ifeq 28
27: aload 4
goto 29
StackMap locals:
StackMap stack:
28: aload 3
29: StackMap locals:
StackMap stack: java.lang.ClassLoader
aload 6
30: invokestatic java.lang.reflect.Proxy.getProxyClass:(Ljava/lang/ClassLoader;[Ljava/lang/Class;)Ljava/lang/Class;
astore 7
start local 7 31: aload 7
32: areturn
end local 7 33: StackMap locals:
StackMap stack: java.lang.IllegalArgumentException
astore 7
start local 7 34: new java.lang.ClassNotFoundException
dup
aconst_null
aload 7
invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
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 35 0 this Lsun/awt/datatransfer/ClassLoaderObjectInputStream;
0 35 1 interfaces [Ljava/lang/String;
1 35 2 s Ljava/util/Set<Ljava/lang/String;>;
2 6 3 i I
7 35 3 classLoader Ljava/lang/ClassLoader;
10 35 4 nonPublicLoader Ljava/lang/ClassLoader;
11 35 5 hasNonPublicInterface Z
12 35 6 classObjs [Ljava/lang/Class;
13 26 7 i I
15 24 8 cl Ljava/lang/Class<*>;
31 33 7 proxyClass Ljava/lang/Class<*>;
34 35 7 e Ljava/lang/IllegalArgumentException;
Exception table:
from to target type
26 32 33 Class java.lang.IllegalArgumentException
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
Signature: ([Ljava/lang/String;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
interfaces
}
SourceFile: "TransferableProxy.java"