public class com.sun.jmx.remote.util.ClassLoaderWithRepository extends java.lang.ClassLoader
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.jmx.remote.util.ClassLoaderWithRepository
super_class: java.lang.ClassLoader
{
private javax.management.loading.ClassLoaderRepository repository;
descriptor: Ljavax/management/loading/ClassLoaderRepository;
flags: (0x0002) ACC_PRIVATE
private java.lang.ClassLoader cl2;
descriptor: Ljava/lang/ClassLoader;
flags: (0x0002) ACC_PRIVATE
public void <init>(javax.management.loading.ClassLoaderRepository, java.lang.ClassLoader);
descriptor: (Ljavax/management/loading/ClassLoaderRepository;Ljava/lang/ClassLoader;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // com.sun.jmx.remote.util.ClassLoaderWithRepository this
start local 1 // javax.management.loading.ClassLoaderRepository clr
start local 2 // java.lang.ClassLoader cl2
0: .line 31
aload 0 /* this */
invokespecial java.lang.ClassLoader.<init>:()V
1: .line 34
aload 1 /* clr */
ifnonnull 4
2: .line 35
new java.lang.IllegalArgumentException
dup
ldc "Null ClassLoaderRepository object."
3: .line 34
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: .line 37
StackMap locals: com.sun.jmx.remote.util.ClassLoaderWithRepository javax.management.loading.ClassLoaderRepository java.lang.ClassLoader
StackMap stack:
aload 0 /* this */
aload 1 /* clr */
putfield com.sun.jmx.remote.util.ClassLoaderWithRepository.repository:Ljavax/management/loading/ClassLoaderRepository;
5: .line 38
aload 0 /* this */
aload 2 /* cl2 */
putfield com.sun.jmx.remote.util.ClassLoaderWithRepository.cl2:Ljava/lang/ClassLoader;
6: .line 39
return
end local 2 // java.lang.ClassLoader cl2
end local 1 // javax.management.loading.ClassLoaderRepository clr
end local 0 // com.sun.jmx.remote.util.ClassLoaderWithRepository this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/jmx/remote/util/ClassLoaderWithRepository;
0 7 1 clr Ljavax/management/loading/ClassLoaderRepository;
0 7 2 cl2 Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
clr
cl2
protected java.lang.Class findClass(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Class;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=2
start local 0 // com.sun.jmx.remote.util.ClassLoaderWithRepository this
start local 1 // java.lang.String name
0: .line 44
aload 0 /* this */
getfield com.sun.jmx.remote.util.ClassLoaderWithRepository.repository:Ljavax/management/loading/ClassLoaderRepository;
aload 1 /* name */
invokeinterface javax.management.loading.ClassLoaderRepository.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
astore 2 /* cls */
start local 2 // java.lang.Class cls
1: .line 45
goto 6
end local 2 // java.lang.Class cls
StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
2: astore 3 /* cne */
start local 3 // java.lang.ClassNotFoundException cne
3: .line 46
aload 0 /* this */
getfield com.sun.jmx.remote.util.ClassLoaderWithRepository.cl2:Ljava/lang/ClassLoader;
ifnull 5
4: .line 47
aload 0 /* this */
getfield com.sun.jmx.remote.util.ClassLoaderWithRepository.cl2:Ljava/lang/ClassLoader;
aload 1 /* name */
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
areturn
5: .line 49
StackMap locals: com.sun.jmx.remote.util.ClassLoaderWithRepository java.lang.String top java.lang.ClassNotFoundException
StackMap stack:
aload 3 /* cne */
athrow
end local 3 // java.lang.ClassNotFoundException cne
start local 2 // java.lang.Class cls
6: .line 53
StackMap locals: com.sun.jmx.remote.util.ClassLoaderWithRepository java.lang.String java.lang.Class
StackMap stack:
aload 2 /* cls */
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
aload 1 /* name */
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 10
7: .line 54
aload 0 /* this */
getfield com.sun.jmx.remote.util.ClassLoaderWithRepository.cl2:Ljava/lang/ClassLoader;
ifnull 9
8: .line 55
aload 0 /* this */
getfield com.sun.jmx.remote.util.ClassLoaderWithRepository.cl2:Ljava/lang/ClassLoader;
aload 1 /* name */
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
areturn
9: .line 57
StackMap locals:
StackMap stack:
new java.lang.ClassNotFoundException
dup
aload 1 /* name */
invokespecial java.lang.ClassNotFoundException.<init>:(Ljava/lang/String;)V
athrow
10: .line 60
StackMap locals:
StackMap stack:
aload 2 /* cls */
areturn
end local 2 // java.lang.Class cls
end local 1 // java.lang.String name
end local 0 // com.sun.jmx.remote.util.ClassLoaderWithRepository this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/jmx/remote/util/ClassLoaderWithRepository;
0 11 1 name Ljava/lang/String;
1 2 2 cls Ljava/lang/Class<*>;
6 11 2 cls Ljava/lang/Class<*>;
3 6 3 cne Ljava/lang/ClassNotFoundException;
Exception table:
from to target type
0 1 2 Class java.lang.ClassNotFoundException
Exceptions:
throws java.lang.ClassNotFoundException
MethodParameters:
Name Flags
name
}
SourceFile: "ClassLoaderWithRepository.java"