public class org.apache.commons.logging.LogSource
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.logging.LogSource
super_class: java.lang.Object
{
protected static java.util.Hashtable logs;
descriptor: Ljava/util/Hashtable;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
protected static boolean log4jIsAvailable;
descriptor: Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
protected static boolean jdk14IsAvailable;
descriptor: Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
protected static java.lang.reflect.Constructor logImplctor;
descriptor: Ljava/lang/reflect/Constructor;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
putstatic org.apache.commons.logging.LogSource.logs:Ljava/util/Hashtable;
1: iconst_0
putstatic org.apache.commons.logging.LogSource.log4jIsAvailable:Z
2: iconst_0
putstatic org.apache.commons.logging.LogSource.jdk14IsAvailable:Z
3: aconst_null
putstatic org.apache.commons.logging.LogSource.logImplctor:Ljava/lang/reflect/Constructor;
4: ldc "org.apache.log4j.Logger"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
ifnull 5
iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: putstatic org.apache.commons.logging.LogSource.log4jIsAvailable:Z
7: goto 10
StackMap locals:
StackMap stack: java.lang.Throwable
8: pop
9: iconst_0
putstatic org.apache.commons.logging.LogSource.log4jIsAvailable:Z
10: StackMap locals:
StackMap stack:
ldc "java.util.logging.Logger"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
ifnull 12
11: ldc "org.apache.commons.logging.impl.Jdk14Logger"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
ifnull 12
iconst_1
goto 13
StackMap locals:
StackMap stack:
12: iconst_0
13: StackMap locals:
StackMap stack: int
putstatic org.apache.commons.logging.LogSource.jdk14IsAvailable:Z
14: goto 17
StackMap locals:
StackMap stack: java.lang.Throwable
15: pop
16: iconst_0
putstatic org.apache.commons.logging.LogSource.jdk14IsAvailable:Z
17: StackMap locals:
StackMap stack:
aconst_null
astore 0
start local 0 18: ldc "org.apache.commons.logging.log"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
19: aload 0
ifnonnull 23
20: ldc "org.apache.commons.logging.Log"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
21: goto 23
StackMap locals: java.lang.String
StackMap stack: java.lang.Throwable
22: pop
23: StackMap locals:
StackMap stack:
aload 0
ifnull 31
24: aload 0
invokestatic org.apache.commons.logging.LogSource.setLogImplementation:(Ljava/lang/String;)V
25: goto 43
StackMap locals:
StackMap stack: java.lang.Throwable
26: pop
27: ldc "org.apache.commons.logging.impl.NoOpLog"
invokestatic org.apache.commons.logging.LogSource.setLogImplementation:(Ljava/lang/String;)V
28: goto 43
StackMap locals:
StackMap stack: java.lang.Throwable
29: pop
30: goto 43
31: StackMap locals:
StackMap stack:
getstatic org.apache.commons.logging.LogSource.log4jIsAvailable:Z
ifeq 34
32: ldc "org.apache.commons.logging.impl.Log4JLogger"
invokestatic org.apache.commons.logging.LogSource.setLogImplementation:(Ljava/lang/String;)V
33: goto 43
StackMap locals:
StackMap stack:
34: getstatic org.apache.commons.logging.LogSource.jdk14IsAvailable:Z
ifeq 37
35: ldc "org.apache.commons.logging.impl.Jdk14Logger"
invokestatic org.apache.commons.logging.LogSource.setLogImplementation:(Ljava/lang/String;)V
36: goto 43
37: StackMap locals:
StackMap stack:
ldc "org.apache.commons.logging.impl.NoOpLog"
invokestatic org.apache.commons.logging.LogSource.setLogImplementation:(Ljava/lang/String;)V
38: goto 43
StackMap locals:
StackMap stack: java.lang.Throwable
39: pop
40: ldc "org.apache.commons.logging.impl.NoOpLog"
invokestatic org.apache.commons.logging.LogSource.setLogImplementation:(Ljava/lang/String;)V
41: goto 43
StackMap locals:
StackMap stack: java.lang.Throwable
42: pop
end local 0 43: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
18 43 0 name Ljava/lang/String;
Exception table:
from to target type
4 7 8 Class java.lang.Throwable
10 14 15 Class java.lang.Throwable
18 21 22 Class java.lang.Throwable
24 25 26 Class java.lang.Throwable
27 28 29 Class java.lang.Throwable
31 38 39 Class java.lang.Throwable
40 41 42 Class java.lang.Throwable
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
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/LogSource;
public static void setLogImplementation(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
start local 1 1: iconst_1
anewarray java.lang.Class
astore 2
start local 2 2: aload 2
iconst_0
ldc ""
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aastore
3: aload 1
aload 2
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
putstatic org.apache.commons.logging.LogSource.logImplctor:Ljava/lang/reflect/Constructor;
end local 2 end local 1 4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: pop
6: aconst_null
putstatic org.apache.commons.logging.LogSource.logImplctor:Ljava/lang/reflect/Constructor;
7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 classname Ljava/lang/String;
1 4 1 logclass Ljava/lang/Class;
2 4 2 argtypes [Ljava/lang/Class;
Exception table:
from to target type
0 4 5 Class java.lang.Throwable
Exceptions:
throws java.lang.LinkageError, java.lang.NoSuchMethodException, java.lang.SecurityException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
classname
public static void setLogImplementation(java.lang.Class);
descriptor: (Ljava/lang/Class;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: iconst_1
anewarray java.lang.Class
astore 1
start local 1 1: aload 1
iconst_0
ldc ""
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aastore
2: aload 0
aload 1
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
putstatic org.apache.commons.logging.LogSource.logImplctor:Ljava/lang/reflect/Constructor;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 logclass Ljava/lang/Class;
1 4 1 argtypes [Ljava/lang/Class;
Exceptions:
throws java.lang.LinkageError, java.lang.ExceptionInInitializerError, java.lang.NoSuchMethodException, java.lang.SecurityException
MethodParameters:
Name Flags
logclass
public static org.apache.commons.logging.Log getInstance(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/commons/logging/Log;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: getstatic org.apache.commons.logging.LogSource.logs:Ljava/util/Hashtable;
aload 0
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.commons.logging.Log
astore 1
start local 1 1: aload 1
ifnonnull 4
2: aload 0
invokestatic org.apache.commons.logging.LogSource.makeNewLogInstance:(Ljava/lang/String;)Lorg/apache/commons/logging/Log;
astore 1
3: getstatic org.apache.commons.logging.LogSource.logs:Ljava/util/Hashtable;
aload 0
aload 1
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: StackMap locals: org.apache.commons.logging.Log
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 name Ljava/lang/String;
1 5 1 log Lorg/apache/commons/logging/Log;
MethodParameters:
Name Flags
name
public static org.apache.commons.logging.Log getInstance(java.lang.Class);
descriptor: (Ljava/lang/Class;)Lorg/apache/commons/logging/Log;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic org.apache.commons.logging.LogSource.getInstance:(Ljava/lang/String;)Lorg/apache/commons/logging/Log;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 clazz Ljava/lang/Class;
MethodParameters:
Name Flags
clazz
public static org.apache.commons.logging.Log makeNewLogInstance(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/commons/logging/Log;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
astore 2
start local 2 1: getstatic org.apache.commons.logging.LogSource.logImplctor:Ljava/lang/reflect/Constructor;
aload 2
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.commons.logging.Log
astore 1
end local 2 start local 1 2: goto 5
end local 1 StackMap locals:
StackMap stack: java.lang.Throwable
3: pop
4: aconst_null
astore 1
start local 1 5: StackMap locals: org.apache.commons.logging.Log
StackMap stack:
aload 1
ifnonnull 7
6: new org.apache.commons.logging.impl.NoOpLog
dup
aload 0
invokespecial org.apache.commons.logging.impl.NoOpLog.<init>:(Ljava/lang/String;)V
astore 1
7: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 name Ljava/lang/String;
2 3 1 log Lorg/apache/commons/logging/Log;
5 8 1 log Lorg/apache/commons/logging/Log;
1 2 2 args [Ljava/lang/Object;
Exception table:
from to target type
0 2 3 Class java.lang.Throwable
MethodParameters:
Name Flags
name
public static java.lang.String[] getLogNames();
descriptor: ()[Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic org.apache.commons.logging.LogSource.logs:Ljava/util/Hashtable;
invokevirtual java.util.Hashtable.keySet:()Ljava/util/Set;
getstatic org.apache.commons.logging.LogSource.logs:Ljava/util/Hashtable;
invokevirtual java.util.Hashtable.size:()I
anewarray java.lang.String
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "LogSource.java"