public abstract class org.apache.commons.logging.LogFactory
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.apache.commons.logging.LogFactory
super_class: java.lang.Object
{
public static final java.lang.String PRIORITY_KEY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "priority"
public static final java.lang.String TCCL_KEY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "use_tccl"
public static final java.lang.String FACTORY_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.apache.commons.logging.LogFactory"
public static final java.lang.String FACTORY_DEFAULT;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.apache.commons.logging.impl.LogFactoryImpl"
public static final java.lang.String FACTORY_PROPERTIES;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "commons-logging.properties"
protected static final java.lang.String SERVICE_ID;
descriptor: Ljava/lang/String;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: "META-INF/services/org.apache.commons.logging.LogFactory"
public static final java.lang.String DIAGNOSTICS_DEST_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.apache.commons.logging.diagnostics.dest"
private static java.io.PrintStream diagnosticsStream;
descriptor: Ljava/io/PrintStream;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.lang.String diagnosticPrefix;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.lang.String HASHTABLE_IMPLEMENTATION_PROPERTY;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.apache.commons.logging.LogFactory.HashtableImpl"
private static final java.lang.String WEAK_HASHTABLE_CLASSNAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.apache.commons.logging.impl.WeakHashtable"
private static final java.lang.ClassLoader thisClassLoader;
descriptor: Ljava/lang/ClassLoader;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
protected static java.util.Hashtable factories;
descriptor: Ljava/util/Hashtable;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
protected static volatile org.apache.commons.logging.LogFactory nullClassLoaderFactory;
descriptor: Lorg/apache/commons/logging/LogFactory;
flags: (0x004c) ACC_PROTECTED, ACC_STATIC, ACC_VOLATILE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=0
0: aconst_null
putstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
1: aconst_null
putstatic org.apache.commons.logging.LogFactory.factories:Ljava/util/Hashtable;
2: aconst_null
putstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
3: ldc Lorg/apache/commons/logging/LogFactory;
invokestatic org.apache.commons.logging.LogFactory.getClassLoader:(Ljava/lang/Class;)Ljava/lang/ClassLoader;
putstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
4: getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
astore 1
start local 1 5: getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
ifnonnull 8
6: ldc "BOOTLOADER"
astore 0
start local 0 7: goto 12
end local 0 8: StackMap locals: top java.lang.ClassLoader
StackMap stack:
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
astore 0
end local 1 start local 0 9: goto 12
end local 0 StackMap locals:
StackMap stack: java.lang.SecurityException
10: pop
11: ldc "UNKNOWN"
astore 0
start local 0 12: StackMap locals: java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
ldc "[LogFactory from "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "] "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putstatic org.apache.commons.logging.LogFactory.diagnosticPrefix:Ljava/lang/String;
13: invokestatic org.apache.commons.logging.LogFactory.initDiagnostics:()Ljava/io/PrintStream;
putstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
14: ldc Lorg/apache/commons/logging/LogFactory;
invokestatic org.apache.commons.logging.LogFactory.logClassLoaderEnvironment:(Ljava/lang/Class;)V
15: invokestatic org.apache.commons.logging.LogFactory.createFactoryStore:()Ljava/util/Hashtable;
putstatic org.apache.commons.logging.LogFactory.factories:Ljava/util/Hashtable;
16: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 18
17: ldc "BOOTSTRAP COMPLETED"
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 0 18: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
7 8 0 classLoaderName Ljava/lang/String;
9 10 0 classLoaderName Ljava/lang/String;
12 18 0 classLoaderName Ljava/lang/String;
5 9 1 classLoader Ljava/lang/ClassLoader;
Exception table:
from to target type
4 9 10 Class java.lang.SecurityException
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/logging/LogFactory;
public abstract java.lang.Object getAttribute(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
name
public abstract java.lang.String[] getAttributeNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract org.apache.commons.logging.Log getInstance(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
MethodParameters:
Name Flags
clazz
public abstract org.apache.commons.logging.Log getInstance(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/commons/logging/Log;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
MethodParameters:
Name Flags
name
public abstract void release();
descriptor: ()V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void removeAttribute(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
name
public abstract void setAttribute(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
name
value
private static final java.util.Hashtable createFactoryStore();
descriptor: ()Ljava/util/Hashtable;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=3, args_size=0
0: aconst_null
astore 0
start local 0 1: ldc "org.apache.commons.logging.LogFactory.HashtableImpl"
aconst_null
invokestatic org.apache.commons.logging.LogFactory.getSystemProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 1
start local 1 2: goto 5
end local 1 StackMap locals: java.util.Hashtable
StackMap stack: java.lang.SecurityException
3: pop
4: aconst_null
astore 1
start local 1 5: StackMap locals: java.lang.String
StackMap stack:
aload 1
ifnonnull 7
6: ldc "org.apache.commons.logging.impl.WeakHashtable"
astore 1
7: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
start local 2 8: aload 2
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast java.util.Hashtable
astore 0
end local 2 9: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 2
start local 2 11: aload 2
invokestatic org.apache.commons.logging.LogFactory.handleThrowable:(Ljava/lang/Throwable;)V
12: ldc "org.apache.commons.logging.impl.WeakHashtable"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 17
13: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 16
14: ldc "[ERROR] LogFactory: Load of custom hashtable failed"
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
15: goto 17
16: StackMap locals: java.lang.Throwable
StackMap stack:
getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "[ERROR] LogFactory: Load of custom hashtable failed"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 2 17: StackMap locals:
StackMap stack:
aload 0
ifnonnull 19
18: new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
astore 0
19: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 20 0 result Ljava/util/Hashtable;
2 3 1 storeImplementationClass Ljava/lang/String;
5 20 1 storeImplementationClass Ljava/lang/String;
8 9 2 implementationClass Ljava/lang/Class;
11 17 2 t Ljava/lang/Throwable;
Exception table:
from to target type
1 2 3 Class java.lang.SecurityException
7 9 10 Class java.lang.Throwable
private static java.lang.String trim(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.String.trim:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 src Ljava/lang/String;
MethodParameters:
Name Flags
src
protected static void handleThrowable(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
instanceof java.lang.ThreadDeath
ifeq 2
1: aload 0
checkcast java.lang.ThreadDeath
athrow
2: StackMap locals:
StackMap stack:
aload 0
instanceof java.lang.VirtualMachineError
ifeq 4
3: aload 0
checkcast java.lang.VirtualMachineError
athrow
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 t Ljava/lang/Throwable;
MethodParameters:
Name Flags
t
public static org.apache.commons.logging.LogFactory getFactory();
descriptor: ()Lorg/apache/commons/logging/LogFactory;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=7, args_size=0
0: invokestatic org.apache.commons.logging.LogFactory.getContextClassLoaderInternal:()Ljava/lang/ClassLoader;
astore 0
start local 0 1: aload 0
ifnonnull 4
2: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 4
3: ldc "Context classloader is null."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
4: StackMap locals: java.lang.ClassLoader
StackMap stack:
aload 0
invokestatic org.apache.commons.logging.LogFactory.getCachedFactory:(Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
astore 1
start local 1 5: aload 1
ifnull 7
6: aload 1
areturn
7: StackMap locals: org.apache.commons.logging.LogFactory
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 13
8: new java.lang.StringBuilder
dup
ldc "[LOOKUP] LogFactory implementation requested for the first time for context classloader "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
9: aload 0
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
11: invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
12: ldc "[LOOKUP] "
aload 0
invokestatic org.apache.commons.logging.LogFactory.logHierarchy:(Ljava/lang/String;Ljava/lang/ClassLoader;)V
13: StackMap locals:
StackMap stack:
aload 0
ldc "commons-logging.properties"
invokestatic org.apache.commons.logging.LogFactory.getConfigurationFile:(Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/util/Properties;
astore 2
start local 2 14: aload 0
astore 3
start local 3 15: aload 2
ifnull 20
16: aload 2
ldc "use_tccl"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 17: aload 4
ifnull 20
18: aload 4
invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 20
19: getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
astore 3
end local 4 20: StackMap locals: java.util.Properties java.lang.ClassLoader
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 22
21: ldc "[LOOKUP] Looking for system property [org.apache.commons.logging.LogFactory] to define the LogFactory subclass to use..."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
22: StackMap locals:
StackMap stack:
ldc "org.apache.commons.logging.LogFactory"
aconst_null
invokestatic org.apache.commons.logging.LogFactory.getSystemProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 23: aload 4
ifnull 30
24: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 28
25: new java.lang.StringBuilder
dup
ldc "[LOOKUP] Creating an instance of LogFactory class '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: ldc "' as specified by system property "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "org.apache.commons.logging.LogFactory"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
28: StackMap locals: java.lang.String
StackMap stack:
aload 4
aload 3
aload 0
invokestatic org.apache.commons.logging.LogFactory.newFactory:(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
astore 1
29: goto 47
30: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 47
31: ldc "[LOOKUP] No system property [org.apache.commons.logging.LogFactory] defined."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 4 32: goto 47
StackMap locals: java.lang.ClassLoader org.apache.commons.logging.LogFactory java.util.Properties java.lang.ClassLoader
StackMap stack: java.lang.SecurityException
33: astore 4
start local 4 34: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 47
35: new java.lang.StringBuilder
dup
ldc "[LOOKUP] A security exception occurred while trying to create an instance of the custom factory class: ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
36: aload 4
invokevirtual java.lang.SecurityException.getMessage:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.trim:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
37: ldc "]. Trying alternative implementations..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
38: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 4 39: goto 47
40: StackMap locals:
StackMap stack: java.lang.RuntimeException
astore 4
start local 4 41: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 46
42: new java.lang.StringBuilder
dup
ldc "[LOOKUP] An exception occurred while trying to create an instance of the custom factory class: ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
43: aload 4
invokevirtual java.lang.RuntimeException.getMessage:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.trim:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
44: ldc "] as specified by a system property."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
45: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
46: StackMap locals: java.lang.RuntimeException
StackMap stack:
aload 4
athrow
end local 4 47: StackMap locals:
StackMap stack:
aload 1
ifnonnull 77
48: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 50
49: ldc "[LOOKUP] Looking for a resource file of name [META-INF/services/org.apache.commons.logging.LogFactory] to define the LogFactory subclass to use..."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
50: StackMap locals:
StackMap stack:
aload 0
ldc "META-INF/services/org.apache.commons.logging.LogFactory"
invokestatic org.apache.commons.logging.LogFactory.getResourceAsStream:(Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/io/InputStream;
astore 4
start local 4 51: aload 4
ifnull 67
52: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 4
ldc "UTF-8"
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 5
start local 5 53: goto 56
end local 5 StackMap locals: java.lang.ClassLoader org.apache.commons.logging.LogFactory java.util.Properties java.lang.ClassLoader java.io.InputStream
StackMap stack: java.io.UnsupportedEncodingException
54: pop
55: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 4
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 5
start local 5 56: StackMap locals: java.io.BufferedReader
StackMap stack:
aload 5
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 6
start local 6 57: aload 5
invokevirtual java.io.BufferedReader.close:()V
58: aload 6
ifnull 77
ldc ""
aload 6
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 77
59: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 65
60: new java.lang.StringBuilder
dup
ldc "[LOOKUP] Creating an instance of LogFactory class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
61: aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
62: ldc " as specified by file '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "META-INF/services/org.apache.commons.logging.LogFactory"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
63: ldc "' which was present in the path of the context classloader."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
64: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
65: StackMap locals: java.lang.String
StackMap stack:
aload 6
aload 3
aload 0
invokestatic org.apache.commons.logging.LogFactory.newFactory:(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
astore 1
end local 6 end local 5 66: goto 77
67: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 77
68: ldc "[LOOKUP] No resource file with name 'META-INF/services/org.apache.commons.logging.LogFactory' found."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 4 69: goto 77
StackMap locals: java.lang.ClassLoader org.apache.commons.logging.LogFactory java.util.Properties java.lang.ClassLoader
StackMap stack: java.lang.Exception
70: astore 4
start local 4 71: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 77
72: new java.lang.StringBuilder
dup
ldc "[LOOKUP] A security exception occurred while trying to create an instance of the custom factory class: ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
73: aload 4
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.trim:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
74: ldc "]. Trying alternative implementations..."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
75: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
76: invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 4 77: StackMap locals:
StackMap stack:
aload 1
ifnonnull 94
78: aload 2
ifnull 92
79: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 82
80: ldc "[LOOKUP] Looking in properties file for entry with key 'org.apache.commons.logging.LogFactory' to define the LogFactory subclass to use..."
81: invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
82: StackMap locals:
StackMap stack:
aload 2
ldc "org.apache.commons.logging.LogFactory"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 83: aload 4
ifnull 89
84: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 87
85: new java.lang.StringBuilder
dup
ldc "[LOOKUP] Properties file specifies LogFactory subclass '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
86: invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
87: StackMap locals: java.lang.String
StackMap stack:
aload 4
aload 3
aload 0
invokestatic org.apache.commons.logging.LogFactory.newFactory:(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
astore 1
88: goto 94
89: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 94
90: ldc "[LOOKUP] Properties file has no entry specifying LogFactory subclass."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 4 91: goto 94
92: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 94
93: ldc "[LOOKUP] No properties file available to determine LogFactory subclass from.."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
94: StackMap locals:
StackMap stack:
aload 1
ifnonnull 99
95: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 98
96: ldc "[LOOKUP] Loading the default LogFactory implementation 'org.apache.commons.logging.impl.LogFactoryImpl' via the same classloader that loaded this LogFactory class (ie not looking in the context classloader)."
97: invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
98: StackMap locals:
StackMap stack:
ldc "org.apache.commons.logging.impl.LogFactoryImpl"
getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
aload 0
invokestatic org.apache.commons.logging.LogFactory.newFactory:(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
astore 1
99: StackMap locals:
StackMap stack:
aload 1
ifnull 108
100: aload 0
aload 1
invokestatic org.apache.commons.logging.LogFactory.cacheFactory:(Ljava/lang/ClassLoader;Lorg/apache/commons/logging/LogFactory;)V
101: aload 2
ifnull 108
102: aload 2
invokevirtual java.util.Properties.propertyNames:()Ljava/util/Enumeration;
astore 4
start local 4 103: goto 107
104: StackMap locals: java.util.Enumeration
StackMap stack:
aload 4
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 105: aload 2
aload 5
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 106: aload 1
aload 5
aload 6
invokevirtual org.apache.commons.logging.LogFactory.setAttribute:(Ljava/lang/String;Ljava/lang/Object;)V
end local 6 end local 5 107: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 104
end local 4 108: StackMap locals:
StackMap stack:
aload 1
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 109 0 contextClassLoader Ljava/lang/ClassLoader;
5 109 1 factory Lorg/apache/commons/logging/LogFactory;
14 109 2 props Ljava/util/Properties;
15 109 3 baseClassLoader Ljava/lang/ClassLoader;
17 20 4 useTCCLStr Ljava/lang/String;
23 32 4 factoryClass Ljava/lang/String;
34 39 4 e Ljava/lang/SecurityException;
41 47 4 e Ljava/lang/RuntimeException;
51 69 4 is Ljava/io/InputStream;
53 54 5 rd Ljava/io/BufferedReader;
56 66 5 rd Ljava/io/BufferedReader;
57 66 6 factoryClassName Ljava/lang/String;
71 77 4 ex Ljava/lang/Exception;
83 91 4 factoryClass Ljava/lang/String;
103 108 4 names Ljava/util/Enumeration;
105 107 5 name Ljava/lang/String;
106 107 6 value Ljava/lang/String;
Exception table:
from to target type
22 32 33 Class java.lang.SecurityException
22 32 40 Class java.lang.RuntimeException
52 53 54 Class java.io.UnsupportedEncodingException
50 69 70 Class java.lang.Exception
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
public static org.apache.commons.logging.Log getLog(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic org.apache.commons.logging.LogFactory.getFactory:()Lorg/apache/commons/logging/LogFactory;
aload 0
invokevirtual org.apache.commons.logging.LogFactory.getInstance:(Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
MethodParameters:
Name Flags
clazz
public static org.apache.commons.logging.Log getLog(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/commons/logging/Log;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic org.apache.commons.logging.LogFactory.getFactory:()Lorg/apache/commons/logging/LogFactory;
aload 0
invokevirtual org.apache.commons.logging.LogFactory.getInstance:(Ljava/lang/String;)Lorg/apache/commons/logging/Log;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 name Ljava/lang/String;
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
MethodParameters:
Name Flags
name
public static void release(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 2
1: new java.lang.StringBuilder
dup
ldc "Releasing factory for classloader "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
getstatic org.apache.commons.logging.LogFactory.factories:Ljava/util/Hashtable;
astore 1
start local 1 3: aload 1
dup
astore 2
monitorenter
4: aload 0
ifnonnull 9
5: getstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
ifnull 13
6: getstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
invokevirtual org.apache.commons.logging.LogFactory.release:()V
7: aconst_null
putstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
8: goto 13
9: StackMap locals: java.util.Hashtable java.util.Hashtable
StackMap stack:
aload 1
aload 0
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.commons.logging.LogFactory
astore 3
start local 3 10: aload 3
ifnull 13
11: aload 3
invokevirtual org.apache.commons.logging.LogFactory.release:()V
12: aload 1
aload 0
invokevirtual java.util.Hashtable.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 3 13: StackMap locals:
StackMap stack:
aload 2
monitorexit
14: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
15: aload 2
monitorexit
16: athrow
17: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 classLoader Ljava/lang/ClassLoader;
3 18 1 factories Ljava/util/Hashtable;
10 13 3 factory Lorg/apache/commons/logging/LogFactory;
Exception table:
from to target type
4 14 15 any
15 16 15 any
MethodParameters:
Name Flags
classLoader
public static void releaseAll();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=4, args_size=0
0: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 2
1: ldc "Releasing factory for all classloaders."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
getstatic org.apache.commons.logging.LogFactory.factories:Ljava/util/Hashtable;
astore 0
start local 0 3: aload 0
dup
astore 1
monitorenter
4: aload 0
invokevirtual java.util.Hashtable.elements:()Ljava/util/Enumeration;
astore 2
start local 2 5: goto 8
6: StackMap locals: java.util.Hashtable java.util.Hashtable java.util.Enumeration
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast org.apache.commons.logging.LogFactory
astore 3
start local 3 7: aload 3
invokevirtual org.apache.commons.logging.LogFactory.release:()V
end local 3 8: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 6
9: aload 0
invokevirtual java.util.Hashtable.clear:()V
10: getstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
ifnull 13
11: getstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
invokevirtual org.apache.commons.logging.LogFactory.release:()V
12: aconst_null
putstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
end local 2 13: StackMap locals:
StackMap stack:
aload 1
monitorexit
14: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
15: aload 1
monitorexit
16: athrow
17: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
3 18 0 factories Ljava/util/Hashtable;
5 13 2 elements Ljava/util/Enumeration;
7 8 3 element Lorg/apache/commons/logging/LogFactory;
Exception table:
from to target type
4 14 15 any
15 16 15 any
protected static java.lang.ClassLoader getClassLoader(java.lang.Class);
descriptor: (Ljava/lang/Class;)Ljava/lang/ClassLoader;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.SecurityException
astore 1
start local 1 3: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 7
4: new java.lang.StringBuilder
dup
ldc "Unable to get classloader for class '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5: ldc "' due to security restrictions - "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.SecurityException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
7: StackMap locals: java.lang.SecurityException
StackMap stack:
aload 1
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 clazz Ljava/lang/Class;
3 8 1 ex Ljava/lang/SecurityException;
Exception table:
from to target type
0 1 2 Class java.lang.SecurityException
MethodParameters:
Name Flags
clazz
protected static java.lang.ClassLoader getContextClassLoader();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic org.apache.commons.logging.LogFactory.directGetContextClassLoader:()Ljava/lang/ClassLoader;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
private static java.lang.ClassLoader getContextClassLoaderInternal();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.apache.commons.logging.LogFactory$1
dup
invokespecial org.apache.commons.logging.LogFactory$1.<init>:()V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.ClassLoader
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
protected static java.lang.ClassLoader directGetContextClassLoader();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=1, locals=1, args_size=0
0: aconst_null
astore 0
start local 0 1: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 0
2: goto 4
StackMap locals: java.lang.ClassLoader
StackMap stack: java.lang.SecurityException
3: pop
4: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 5 0 classLoader Ljava/lang/ClassLoader;
Exception table:
from to target type
1 2 3 Class java.lang.SecurityException
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
private static org.apache.commons.logging.LogFactory getCachedFactory(java.lang.ClassLoader);
descriptor: (Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: getstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
areturn
2: StackMap locals:
StackMap stack:
getstatic org.apache.commons.logging.LogFactory.factories:Ljava/util/Hashtable;
aload 0
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.commons.logging.LogFactory
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 contextClassLoader Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
contextClassLoader
private static void cacheFactory(java.lang.ClassLoader, org.apache.commons.logging.LogFactory);
descriptor: (Ljava/lang/ClassLoader;Lorg/apache/commons/logging/LogFactory;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnull 5
1: aload 0
ifnonnull 4
2: aload 1
putstatic org.apache.commons.logging.LogFactory.nullClassLoaderFactory:Lorg/apache/commons/logging/LogFactory;
3: goto 5
4: StackMap locals:
StackMap stack:
getstatic org.apache.commons.logging.LogFactory.factories:Ljava/util/Hashtable;
aload 0
aload 1
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 classLoader Ljava/lang/ClassLoader;
0 6 1 factory Lorg/apache/commons/logging/LogFactory;
MethodParameters:
Name Flags
classLoader
factory
protected static org.apache.commons.logging.LogFactory newFactory(java.lang.String, java.lang.ClassLoader, java.lang.ClassLoader);
descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new org.apache.commons.logging.LogFactory$2
dup
aload 0
aload 1
invokespecial org.apache.commons.logging.LogFactory$2.<init>:(Ljava/lang/String;Ljava/lang/ClassLoader;)V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
astore 3
start local 3 2: aload 3
instanceof org.apache.commons.logging.LogConfigurationException
ifeq 7
3: aload 3
checkcast org.apache.commons.logging.LogConfigurationException
astore 4
start local 4 4: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 6
5: new java.lang.StringBuilder
dup
ldc "An error occurred while loading the factory class:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual org.apache.commons.logging.LogConfigurationException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
6: StackMap locals: java.lang.Object org.apache.commons.logging.LogConfigurationException
StackMap stack:
aload 4
athrow
end local 4 7: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 11
8: new java.lang.StringBuilder
dup
ldc "Created object "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " to manage classloader "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
9: aload 2
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
10: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
11: StackMap locals:
StackMap stack:
aload 3
checkcast org.apache.commons.logging.LogFactory
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 factoryClass Ljava/lang/String;
0 12 1 classLoader Ljava/lang/ClassLoader;
0 12 2 contextClassLoader Ljava/lang/ClassLoader;
2 12 3 result Ljava/lang/Object;
4 7 4 ex Lorg/apache/commons/logging/LogConfigurationException;
Exceptions:
throws org.apache.commons.logging.LogConfigurationException
MethodParameters:
Name Flags
factoryClass final
classLoader final
contextClassLoader final
protected static org.apache.commons.logging.LogFactory newFactory(java.lang.String, java.lang.ClassLoader);
descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokestatic org.apache.commons.logging.LogFactory.newFactory:(Ljava/lang/String;Ljava/lang/ClassLoader;Ljava/lang/ClassLoader;)Lorg/apache/commons/logging/LogFactory;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 factoryClass Ljava/lang/String;
0 1 1 classLoader Ljava/lang/ClassLoader;
MethodParameters:
Name Flags
factoryClass final
classLoader final
protected static java.lang.Object createFactory(java.lang.String, java.lang.ClassLoader);
descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;)Ljava/lang/Object;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aload 1
ifnull 57
2: aload 1
aload 0
invokevirtual java.lang.ClassLoader.loadClass:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
3: ldc Lorg/apache/commons/logging/LogFactory;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 9
4: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 16
5: new java.lang.StringBuilder
dup
ldc "Loaded class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc " from classloader "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
8: goto 16
9: StackMap locals: java.lang.Class
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 16
10: new java.lang.StringBuilder
dup
ldc "Factory class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
11: ldc " loaded from classloader "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: ldc " does not extend '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc Lorg/apache/commons/logging/LogFactory;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: ldc "' as loaded by this classloader."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
15: ldc "[BAD CL TREE] "
aload 1
invokestatic org.apache.commons.logging.LogFactory.logHierarchy:(Ljava/lang/String;Ljava/lang/ClassLoader;)V
16: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.apache.commons.logging.LogFactory
17: areturn
18: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
astore 3
start local 3 19: aload 1
getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
if_acmpne 57
20: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 24
21: new java.lang.StringBuilder
dup
ldc "Unable to locate any class called '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
22: ldc "' via classloader "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
23: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
24: StackMap locals: java.lang.ClassNotFoundException
StackMap stack:
aload 3
athrow
end local 3 25: StackMap locals: java.lang.String java.lang.ClassLoader java.lang.Class
StackMap stack: java.lang.NoClassDefFoundError
astore 3
start local 3 26: aload 1
getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
if_acmpne 57
27: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 32
28: new java.lang.StringBuilder
dup
ldc "Class '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' cannot be loaded"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
29: ldc " via classloader "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: ldc " - it depends on some other class that cannot be found."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
31: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
32: StackMap locals: java.lang.NoClassDefFoundError
StackMap stack:
aload 3
athrow
end local 3 33: StackMap locals: java.lang.String java.lang.ClassLoader java.lang.Class
StackMap stack: java.lang.ClassCastException
pop
34: aload 1
getstatic org.apache.commons.logging.LogFactory.thisClassLoader:Ljava/lang/ClassLoader;
if_acmpne 57
35: aload 2
invokestatic org.apache.commons.logging.LogFactory.implementsLogFactory:(Ljava/lang/Class;)Z
istore 3
start local 3 36: new java.lang.StringBuffer
dup
invokespecial java.lang.StringBuffer.<init>:()V
astore 4
start local 4 37: aload 4
ldc "The application has specified that a custom LogFactory implementation "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
38: aload 4
ldc "should be used but Class '"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
39: aload 4
aload 0
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
40: aload 4
ldc "' cannot be converted to '"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
41: aload 4
ldc Lorg/apache/commons/logging/LogFactory;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
42: aload 4
ldc "'. "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
43: iload 3
ifeq 52
44: aload 4
ldc "The conflict is caused by the presence of multiple LogFactory classes "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
45: aload 4
ldc "in incompatible classloaders. "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
46: aload 4
ldc "Background can be found in http://commons.apache.org/logging/tech.html. "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
47: aload 4
ldc "If you have not explicitly specified a custom LogFactory then it is likely "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
48: aload 4
ldc "that the container has set one without your knowledge. "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
49: aload 4
ldc "In this case, consider using the commons-logging-adapters.jar file or "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
50: aload 4
ldc "specifying the standard LogFactory from the command line. "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
51: goto 53
52: StackMap locals: int java.lang.StringBuffer
StackMap stack:
aload 4
ldc "Please check the custom implementation. "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
53: StackMap locals:
StackMap stack:
aload 4
ldc "Help can be found @http://commons.apache.org/logging/troubleshooting.html."
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
54: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 56
55: aload 4
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
56: StackMap locals:
StackMap stack:
new java.lang.ClassCastException
dup
aload 4
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokespecial java.lang.ClassCastException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 57: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 61
58: new java.lang.StringBuilder
dup
ldc "Unable to load factory class via classloader "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
59: ldc " - trying the classloader associated with this LogFactory."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
60: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
61: StackMap locals:
StackMap stack:
aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 2
62: aload 2
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast org.apache.commons.logging.LogFactory
63: areturn
64: StackMap locals:
StackMap stack: java.lang.Exception
astore 3
start local 3 65: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 67
66: ldc "Unable to create LogFactory instance."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
67: StackMap locals: java.lang.Exception
StackMap stack:
aload 2
ifnull 72
ldc Lorg/apache/commons/logging/LogFactory;
aload 2
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 72
68: new org.apache.commons.logging.LogConfigurationException
dup
69: ldc "The chosen LogFactory implementation does not extend LogFactory. Please check your configuration."
70: aload 3
71: invokespecial org.apache.commons.logging.LogConfigurationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
areturn
72: StackMap locals:
StackMap stack:
new org.apache.commons.logging.LogConfigurationException
dup
aload 3
invokespecial org.apache.commons.logging.LogConfigurationException.<init>:(Ljava/lang/Throwable;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 73 0 factoryClass Ljava/lang/String;
0 73 1 classLoader Ljava/lang/ClassLoader;
1 73 2 logFactoryClass Ljava/lang/Class;
19 25 3 ex Ljava/lang/ClassNotFoundException;
26 33 3 e Ljava/lang/NoClassDefFoundError;
36 57 3 implementsLogFactory Z
37 57 4 msg Ljava/lang/StringBuffer;
65 73 3 e Ljava/lang/Exception;
Exception table:
from to target type
2 17 18 Class java.lang.ClassNotFoundException
2 17 25 Class java.lang.NoClassDefFoundError
2 17 33 Class java.lang.ClassCastException
1 17 64 Class java.lang.Exception
18 63 64 Class java.lang.Exception
MethodParameters:
Name Flags
factoryClass
classLoader
private static boolean implementsLogFactory(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
ifnull 31
2: aload 0
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
astore 2
start local 2 3: aload 2
ifnonnull 6
4: ldc "[CUSTOM LOG FACTORY] was loaded by the boot classloader"
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
5: goto 31
6: StackMap locals: int java.lang.ClassLoader
StackMap stack:
ldc "[CUSTOM LOG FACTORY] "
aload 2
invokestatic org.apache.commons.logging.LogFactory.logHierarchy:(Ljava/lang/String;Ljava/lang/ClassLoader;)V
7: ldc "org.apache.commons.logging.LogFactory"
iconst_0
aload 2
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
8: astore 3
start local 3 9: aload 3
aload 0
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
istore 1
10: iload 1
ifeq 15
11: new java.lang.StringBuilder
dup
ldc "[CUSTOM LOG FACTORY] "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: ldc " implements LogFactory but was loaded by an incompatible classloader."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
14: goto 31
15: StackMap locals: java.lang.Class
StackMap stack:
new java.lang.StringBuilder
dup
ldc "[CUSTOM LOG FACTORY] "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
16: ldc " does not implement LogFactory."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
17: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 3 end local 2 18: goto 31
StackMap locals: java.lang.Class int
StackMap stack: java.lang.SecurityException
19: astore 2
start local 2 20: new java.lang.StringBuilder
dup
ldc "[CUSTOM LOG FACTORY] SecurityException thrown whilst trying to determine whether the compatibility was caused by a classloader conflict: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
21: aload 2
invokevirtual java.lang.SecurityException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
22: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 2 23: goto 31
24: StackMap locals:
StackMap stack: java.lang.LinkageError
astore 2
start local 2 25: new java.lang.StringBuilder
dup
ldc "[CUSTOM LOG FACTORY] LinkageError thrown whilst trying to determine whether the compatibility was caused by a classloader conflict: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
26: aload 2
invokevirtual java.lang.LinkageError.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
27: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 2 28: goto 31
29: StackMap locals:
StackMap stack: java.lang.ClassNotFoundException
pop
30: ldc "[CUSTOM LOG FACTORY] LogFactory class cannot be loaded by classloader which loaded the custom LogFactory implementation. Is the custom factory in the right classloader?"
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
31: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 logFactoryClass Ljava/lang/Class;
1 32 1 implementsLogFactory Z
3 18 2 logFactoryClassLoader Ljava/lang/ClassLoader;
9 18 3 factoryFromCustomLoader Ljava/lang/Class;
20 23 2 e Ljava/lang/SecurityException;
25 28 2 e Ljava/lang/LinkageError;
Exception table:
from to target type
2 18 19 Class java.lang.SecurityException
2 18 24 Class java.lang.LinkageError
2 18 29 Class java.lang.ClassNotFoundException
MethodParameters:
Name Flags
logFactoryClass
private static java.io.InputStream getResourceAsStream(java.lang.ClassLoader, java.lang.String);
descriptor: (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/io/InputStream;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.logging.LogFactory$3
dup
aload 0
aload 1
invokespecial org.apache.commons.logging.LogFactory$3.<init>:(Ljava/lang/ClassLoader;Ljava/lang/String;)V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.io.InputStream
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 loader Ljava/lang/ClassLoader;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
loader final
name final
private static java.util.Enumeration getResources(java.lang.ClassLoader, java.lang.String);
descriptor: (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/util/Enumeration;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new org.apache.commons.logging.LogFactory$4
dup
aload 0
aload 1
invokespecial org.apache.commons.logging.LogFactory$4.<init>:(Ljava/lang/ClassLoader;Ljava/lang/String;)V
1: astore 2
start local 2 2: aload 2
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
astore 3
start local 3 3: aload 3
checkcast java.util.Enumeration
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 loader Ljava/lang/ClassLoader;
0 4 1 name Ljava/lang/String;
2 4 2 action Ljava/security/PrivilegedAction;
3 4 3 result Ljava/lang/Object;
MethodParameters:
Name Flags
loader final
name final
private static java.util.Properties getProperties(java.net.URL);
descriptor: (Ljava/net/URL;)Ljava/util/Properties;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new org.apache.commons.logging.LogFactory$5
dup
aload 0
invokespecial org.apache.commons.logging.LogFactory$5.<init>:(Ljava/net/URL;)V
1: astore 1
start local 1 2: aload 1
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.util.Properties
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 url Ljava/net/URL;
2 3 1 action Ljava/security/PrivilegedAction;
MethodParameters:
Name Flags
url final
private static final java.util.Properties getConfigurationFile(java.lang.ClassLoader, java.lang.String);
descriptor: (Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/util/Properties;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=4, locals=12, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: dconst_0
dstore 3
start local 3 2: aconst_null
astore 5
start local 5 3: aload 0
aload 1
invokestatic org.apache.commons.logging.LogFactory.getResources:(Ljava/lang/ClassLoader;Ljava/lang/String;)Ljava/util/Enumeration;
astore 6
start local 6 4: aload 6
ifnonnull 42
5: aconst_null
areturn
6: StackMap locals: java.lang.ClassLoader java.lang.String java.util.Properties double java.net.URL java.util.Enumeration
StackMap stack:
aload 6
invokeinterface java.util.Enumeration.nextElement:()Ljava/lang/Object;
checkcast java.net.URL
astore 7
start local 7 7: aload 7
invokestatic org.apache.commons.logging.LogFactory.getProperties:(Ljava/net/URL;)Ljava/util/Properties;
astore 8
start local 8 8: aload 8
ifnull 42
9: aload 2
ifnonnull 21
10: aload 7
astore 5
11: aload 8
astore 2
12: aload 2
ldc "priority"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 13: dconst_0
dstore 3
14: aload 9
ifnull 16
15: aload 9
invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
dstore 3
16: StackMap locals: java.net.URL java.util.Properties java.lang.String
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 42
17: new java.lang.StringBuilder
dup
ldc "[LOOKUP] Properties file found at '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
18: ldc " with priority "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 3
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
19: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 9 20: goto 42
21: StackMap locals:
StackMap stack:
aload 8
ldc "priority"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 22: dconst_0
dstore 10
start local 10 23: aload 9
ifnull 25
24: aload 9
invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
dstore 10
25: StackMap locals: java.lang.String double
StackMap stack:
dload 10
dload 3
dcmpl
ifle 36
26: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 32
27: new java.lang.StringBuilder
dup
ldc "[LOOKUP] Properties file at '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
28: ldc " with priority "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 10
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
29: ldc " overrides file at '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: ldc " with priority "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 3
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
31: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
32: StackMap locals:
StackMap stack:
aload 7
astore 5
33: aload 8
astore 2
34: dload 10
dstore 3
35: goto 42
36: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 42
37: new java.lang.StringBuilder
dup
ldc "[LOOKUP] Properties file at '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
38: ldc " with priority "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 10
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
39: ldc " does not override file at '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
40: ldc " with priority "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
dload 3
invokevirtual java.lang.StringBuilder.append:(D)Ljava/lang/StringBuilder;
41: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 10 end local 9 end local 8 end local 7 42: StackMap locals: java.lang.ClassLoader java.lang.String java.util.Properties double java.net.URL java.util.Enumeration
StackMap stack:
aload 6
invokeinterface java.util.Enumeration.hasMoreElements:()Z
ifne 6
end local 6 43: goto 47
StackMap locals: java.lang.ClassLoader java.lang.String java.util.Properties double java.net.URL
StackMap stack: java.lang.SecurityException
44: pop
45: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 47
46: ldc "SecurityException thrown while trying to find/read config files."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
47: StackMap locals:
StackMap stack:
invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifeq 52
48: aload 2
ifnonnull 51
49: new java.lang.StringBuilder
dup
ldc "[LOOKUP] No properties file of name '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' found."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
50: goto 52
51: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "[LOOKUP] Properties file of name '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' found at '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 34
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
52: StackMap locals:
StackMap stack:
aload 2
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 53 0 classLoader Ljava/lang/ClassLoader;
0 53 1 fileName Ljava/lang/String;
1 53 2 props Ljava/util/Properties;
2 53 3 priority D
3 53 5 propsUrl Ljava/net/URL;
4 43 6 urls Ljava/util/Enumeration;
7 42 7 url Ljava/net/URL;
8 42 8 newProps Ljava/util/Properties;
13 20 9 priorityStr Ljava/lang/String;
22 42 9 newPriorityStr Ljava/lang/String;
23 42 10 newPriority D
Exception table:
from to target type
3 5 44 Class java.lang.SecurityException
6 43 44 Class java.lang.SecurityException
MethodParameters:
Name Flags
classLoader
fileName
private static java.lang.String getSystemProperty(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new org.apache.commons.logging.LogFactory$6
dup
aload 0
aload 1
invokespecial org.apache.commons.logging.LogFactory$6.<init>:(Ljava/lang/String;Ljava/lang/String;)V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 key Ljava/lang/String;
0 2 1 def Ljava/lang/String;
Exceptions:
throws java.lang.SecurityException
MethodParameters:
Name Flags
key final
def final
private static java.io.PrintStream initDiagnostics();
descriptor: ()Ljava/io/PrintStream;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=0
0: ldc "org.apache.commons.logging.diagnostics.dest"
aconst_null
invokestatic org.apache.commons.logging.LogFactory.getSystemProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 0
start local 0 1: aload 0
ifnonnull 5
2: aconst_null
areturn
end local 0 3: StackMap locals:
StackMap stack: java.lang.SecurityException
pop
4: aconst_null
areturn
start local 0 5: StackMap locals: java.lang.String
StackMap stack:
aload 0
ldc "STDOUT"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: getstatic java.lang.System.out:Ljava/io/PrintStream;
areturn
7: StackMap locals:
StackMap stack:
aload 0
ldc "STDERR"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
8: getstatic java.lang.System.err:Ljava/io/PrintStream;
areturn
9: StackMap locals:
StackMap stack:
new java.io.FileOutputStream
dup
aload 0
iconst_1
invokespecial java.io.FileOutputStream.<init>:(Ljava/lang/String;Z)V
astore 1
start local 1 10: new java.io.PrintStream
dup
aload 1
invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
11: areturn
end local 1 12: StackMap locals:
StackMap stack: java.io.IOException
pop
13: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 3 0 dest Ljava/lang/String;
5 14 0 dest Ljava/lang/String;
10 12 1 fos Ljava/io/FileOutputStream;
Exception table:
from to target type
0 2 3 Class java.lang.SecurityException
9 11 12 Class java.io.IOException
protected static boolean isDiagnosticsEnabled();
descriptor: ()Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
LocalVariableTable:
Start End Slot Name Signature
private static final void logDiagnostic(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
ifnull 4
1: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
getstatic org.apache.commons.logging.LogFactory.diagnosticPrefix:Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
2: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
aload 0
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
3: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.flush:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
protected static final void logRawDiagnostic(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
ifnull 3
1: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
aload 0
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
2: getstatic org.apache.commons.logging.LogFactory.diagnosticsStream:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.flush:()V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 msg Ljava/lang/String;
MethodParameters:
Name Flags
msg
private static void logClassLoaderEnvironment(java.lang.Class);
descriptor: (Ljava/lang/Class;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "[ENV] Extension directories (java.ext.dir): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "java.ext.dir"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
3: new java.lang.StringBuilder
dup
ldc "[ENV] Application classpath (java.class.path): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "java.class.path"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
4: goto 7
StackMap locals:
StackMap stack: java.lang.SecurityException
5: pop
6: ldc "[ENV] Security setting prevent interrogation of system classpaths."
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 1
start local 1 8: aload 0
invokestatic org.apache.commons.logging.LogFactory.getClassLoader:(Ljava/lang/Class;)Ljava/lang/ClassLoader;
astore 2
start local 2 9: goto 13
end local 2 StackMap locals: java.lang.Class java.lang.String
StackMap stack: java.lang.SecurityException
10: pop
11: new java.lang.StringBuilder
dup
ldc "[ENV] Security forbids determining the classloader for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
12: return
start local 2 13: StackMap locals: java.lang.ClassLoader
StackMap stack:
new java.lang.StringBuilder
dup
ldc "[ENV] Class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " was loaded via classloader "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
14: new java.lang.StringBuilder
dup
ldc "[ENV] Ancestry of classloader which loaded "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " is "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokestatic org.apache.commons.logging.LogFactory.logHierarchy:(Ljava/lang/String;Ljava/lang/ClassLoader;)V
15: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 clazz Ljava/lang/Class;
8 16 1 className Ljava/lang/String;
9 10 2 classLoader Ljava/lang/ClassLoader;
13 16 2 classLoader Ljava/lang/ClassLoader;
Exception table:
from to target type
2 4 5 Class java.lang.SecurityException
8 9 10 Class java.lang.SecurityException
MethodParameters:
Name Flags
clazz
private static void logHierarchy(java.lang.String, java.lang.ClassLoader);
descriptor: (Ljava/lang/String;Ljava/lang/ClassLoader;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: invokestatic org.apache.commons.logging.LogFactory.isDiagnosticsEnabled:()Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
aload 1
ifnull 5
3: aload 1
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 3
start local 3 4: new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " == '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 3 5: StackMap locals:
StackMap stack:
invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
astore 2
start local 2 6: goto 10
end local 2 StackMap locals:
StackMap stack: java.lang.SecurityException
7: pop
8: new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Security forbids determining the system classloader."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
9: return
start local 2 10: StackMap locals: java.lang.ClassLoader
StackMap stack:
aload 1
ifnull 24
11: new java.lang.StringBuffer
dup
new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "ClassLoader tree:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.StringBuffer.<init>:(Ljava/lang/String;)V
astore 3
start local 3 12: StackMap locals: java.lang.StringBuffer
StackMap stack:
aload 3
aload 1
invokestatic org.apache.commons.logging.LogFactory.objectId:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
13: aload 1
aload 2
if_acmpne 15
14: aload 3
ldc " (SYSTEM) "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
15: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.ClassLoader.getParent:()Ljava/lang/ClassLoader;
astore 1
16: goto 20
StackMap locals:
StackMap stack: java.lang.SecurityException
17: pop
18: aload 3
ldc " --> SECRET"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
19: goto 23
20: StackMap locals:
StackMap stack:
aload 3
ldc " --> "
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
21: aload 1
ifnonnull 12
22: aload 3
ldc "BOOT"
invokevirtual java.lang.StringBuffer.append:(Ljava/lang/String;)Ljava/lang/StringBuffer;
pop
23: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.StringBuffer.toString:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogFactory.logDiagnostic:(Ljava/lang/String;)V
end local 3 24: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 prefix Ljava/lang/String;
0 25 1 classLoader Ljava/lang/ClassLoader;
6 7 2 systemClassLoader Ljava/lang/ClassLoader;
10 25 2 systemClassLoader Ljava/lang/ClassLoader;
4 5 3 classLoaderString Ljava/lang/String;
12 24 3 buf Ljava/lang/StringBuffer;
Exception table:
from to target type
5 6 7 Class java.lang.SecurityException
15 16 17 Class java.lang.SecurityException
MethodParameters:
Name Flags
prefix
classLoader
public static java.lang.String objectId(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
ifnonnull 2
1: ldc "null"
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "@"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokestatic java.lang.System.identityHashCode:(Ljava/lang/Object;)I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
}
SourceFile: "LogFactory.java"
NestMembers:
org.apache.commons.logging.LogFactory$1 org.apache.commons.logging.LogFactory$2 org.apache.commons.logging.LogFactory$3 org.apache.commons.logging.LogFactory$4 org.apache.commons.logging.LogFactory$5 org.apache.commons.logging.LogFactory$6
InnerClasses:
org.apache.commons.logging.LogFactory$1
org.apache.commons.logging.LogFactory$2
org.apache.commons.logging.LogFactory$3
org.apache.commons.logging.LogFactory$4
org.apache.commons.logging.LogFactory$5
org.apache.commons.logging.LogFactory$6