public final class com.mchange.v2.c3p0.C3P0Registry
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.mchange.v2.c3p0.C3P0Registry
super_class: java.lang.Object
{
private static final java.lang.String MC_PARAM;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "com.mchange.v2.c3p0.management.ManagementCoordinator"
static final com.mchange.v2.log.MLogger logger;
descriptor: Lcom/mchange/v2/log/MLogger;
flags: (0x0018) ACC_STATIC, ACC_FINAL
static boolean banner_printed;
descriptor: Z
flags: (0x0008) ACC_STATIC
static boolean registry_mbean_registered;
descriptor: Z
flags: (0x0008) ACC_STATIC
private static com.mchange.v2.coalesce.CoalesceChecker CC;
descriptor: Lcom/mchange/v2/coalesce/CoalesceChecker;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static com.mchange.v2.coalesce.Coalescer idtCoalescer;
descriptor: Lcom/mchange/v2/coalesce/Coalescer;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.Map tokensToTokenized;
descriptor: Ljava/util/Map;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static java.util.HashSet unclosedPooledDataSources;
descriptor: Ljava/util/HashSet;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.util.Map classNamesToConnectionTesters;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.Map classNamesToConnectionCustomizers;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static com.mchange.v2.c3p0.management.ManagementCoordinator mc;
descriptor: Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=2, args_size=0
0: ldc Lcom/mchange/v2/c3p0/C3P0Registry;
invokestatic com.mchange.v2.log.MLog.getLogger:(Ljava/lang/Class;)Lcom/mchange/v2/log/MLogger;
putstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
1: iconst_0
putstatic com.mchange.v2.c3p0.C3P0Registry.banner_printed:Z
2: iconst_0
putstatic com.mchange.v2.c3p0.C3P0Registry.registry_mbean_registered:Z
3: getstatic com.mchange.v2.c3p0.impl.IdentityTokenizedCoalesceChecker.INSTANCE:Lcom/mchange/v2/c3p0/impl/IdentityTokenizedCoalesceChecker;
putstatic com.mchange.v2.c3p0.C3P0Registry.CC:Lcom/mchange/v2/coalesce/CoalesceChecker;
4: getstatic com.mchange.v2.c3p0.C3P0Registry.CC:Lcom/mchange/v2/coalesce/CoalesceChecker;
iconst_1
iconst_0
invokestatic com.mchange.v2.coalesce.CoalescerFactory.createCoalescer:(Lcom/mchange/v2/coalesce/CoalesceChecker;ZZ)Lcom/mchange/v2/coalesce/Coalescer;
putstatic com.mchange.v2.c3p0.C3P0Registry.idtCoalescer:Lcom/mchange/v2/coalesce/Coalescer;
5: new com.mchange.v2.util.DoubleWeakHashMap
dup
invokespecial com.mchange.v2.util.DoubleWeakHashMap.<init>:()V
putstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
6: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
7: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
8: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionCustomizers:Ljava/util/Map;
9: invokestatic com.mchange.v2.c3p0.C3P0Registry.resetConnectionTesterCache:()V
10: ldc "com.mchange.v2.c3p0.management.ManagementCoordinator"
invokestatic com.mchange.v2.c3p0.cfg.C3P0ConfigUtils.getPropsFileConfigProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
start local 0 11: aload 0
ifnull 24
12: aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.management.ManagementCoordinator
putstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
13: goto 34
14: StackMap locals: java.lang.String
StackMap stack: java.lang.Exception
astore 1
start local 1 15: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
invokeinterface com.mchange.v2.log.MLogger.isLoggable:(Lcom/mchange/v2/log/MLevel;)Z
ifeq 22
16: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
17: new java.lang.StringBuilder
dup
ldc "Could not instantiate user-specified ManagementCoordinator "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
18: ldc ". Using NullManagementCoordinator (c3p0 JMX management disabled!)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: aload 1
21: invokeinterface com.mchange.v2.log.MLogger.log:(Lcom/mchange/v2/log/MLevel;Ljava/lang/String;Ljava/lang/Throwable;)V
22: StackMap locals: java.lang.Exception
StackMap stack:
new com.mchange.v2.c3p0.management.NullManagementCoordinator
dup
invokespecial com.mchange.v2.c3p0.management.NullManagementCoordinator.<init>:()V
putstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
end local 1 23: goto 34
24: StackMap locals:
StackMap stack:
ldc "java.lang.management.ManagementFactory"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
pop
25: ldc "com.mchange.v2.c3p0.management.ActiveManagementCoordinator"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.management.ManagementCoordinator
putstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
26: goto 34
27: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 28: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.INFO:Lcom/mchange/v2/log/MLevel;
invokeinterface com.mchange.v2.log.MLogger.isLoggable:(Lcom/mchange/v2/log/MLevel;)Z
ifeq 33
29: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.INFO:Lcom/mchange/v2/log/MLevel;
30: ldc "jdk1.5 management interfaces unavailable... JMX support disabled."
31: aload 1
32: invokeinterface com.mchange.v2.log.MLogger.log:(Lcom/mchange/v2/log/MLevel;Ljava/lang/String;Ljava/lang/Throwable;)V
33: StackMap locals: java.lang.Exception
StackMap stack:
new com.mchange.v2.c3p0.management.NullManagementCoordinator
dup
invokespecial com.mchange.v2.c3p0.management.NullManagementCoordinator.<init>:()V
putstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
end local 1 end local 0 34: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
11 34 0 userManagementCoordinator Ljava/lang/String;
15 23 1 e Ljava/lang/Exception;
28 34 1 e Ljava/lang/Exception;
Exception table:
from to target type
12 13 14 Class java.lang.Exception
24 26 27 Class java.lang.Exception
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mchange/v2/c3p0/C3P0Registry;
public static void markConfigRefreshed();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=0, args_size=0
0: invokestatic com.mchange.v2.c3p0.C3P0Registry.resetConnectionTesterCache:()V
1: return
LocalVariableTable:
Start End Slot Name Signature
public static com.mchange.v2.c3p0.ConnectionTester getDefaultConnectionTester();
descriptor: ()Lcom/mchange/v2/c3p0/ConnectionTester;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic com.mchange.v2.c3p0.impl.C3P0Defaults.connectionTesterClassName:()Ljava/lang/String;
invokestatic com.mchange.v2.c3p0.C3P0Registry.getConnectionTester:(Ljava/lang/String;)Lcom/mchange/v2/c3p0/ConnectionTester;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static com.mchange.v2.c3p0.ConnectionTester getConnectionTester(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/mchange/v2/c3p0/ConnectionTester;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
dup
astore 1
monitorenter
1: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.ConnectionTester
astore 2
start local 2 2: aload 2
ifnonnull 5
3: aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.ConnectionTester
astore 2
4: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
aload 0
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: StackMap locals: java.util.Map com.mchange.v2.c3p0.ConnectionTester
StackMap stack:
aload 2
aload 1
monitorexit
6: areturn
end local 2 7: StackMap locals: java.lang.String java.util.Map
StackMap stack: java.lang.Throwable
aload 1
monitorexit
8: athrow
9: StackMap locals: java.lang.String
StackMap stack: java.lang.Exception
astore 1
start local 1 10: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
invokeinterface com.mchange.v2.log.MLogger.isLoggable:(Lcom/mchange/v2/log/MLevel;)Z
ifeq 17
11: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
12: new java.lang.StringBuilder
dup
ldc "Could not create for find ConnectionTester with class name '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
13: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "'. Using default."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: aload 1
16: invokeinterface com.mchange.v2.log.MLogger.log:(Lcom/mchange/v2/log/MLevel;Ljava/lang/String;Ljava/lang/Throwable;)V
17: StackMap locals: java.lang.Exception
StackMap stack:
invokestatic com.mchange.v2.c3p0.C3P0Registry.recreateDefaultConnectionTester:()Lcom/mchange/v2/c3p0/ConnectionTester;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 className Ljava/lang/String;
2 7 2 out Lcom/mchange/v2/c3p0/ConnectionTester;
10 18 1 e Ljava/lang/Exception;
Exception table:
from to target type
1 6 7 any
7 8 7 any
0 6 9 Class java.lang.Exception
7 9 9 Class java.lang.Exception
MethodParameters:
Name Flags
className
private static com.mchange.v2.c3p0.ConnectionTester recreateDefaultConnectionTester();
descriptor: ()Lcom/mchange/v2/c3p0/ConnectionTester;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: invokestatic com.mchange.v2.c3p0.impl.C3P0Defaults.connectionTesterClassName:()Ljava/lang/String;
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.ConnectionTester
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 0
start local 0 3: new java.lang.Error
dup
ldc "Huh? We cannot instantiate the hard-coded, default ConnectionTester? We are very broken."
aload 0
invokespecial java.lang.Error.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
3 4 0 e Ljava/lang/Exception;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
private static void resetConnectionTesterCache();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
dup
astore 0
monitorenter
1: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
invokeinterface java.util.Map.clear:()V
2: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionTesters:Ljava/util/Map;
invokestatic com.mchange.v2.c3p0.impl.C3P0Defaults.connectionTesterClassName:()Ljava/lang/String;
invokestatic com.mchange.v2.c3p0.C3P0Registry.recreateDefaultConnectionTester:()Lcom/mchange/v2/c3p0/ConnectionTester;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 0
monitorexit
4: goto 7
StackMap locals: java.util.Map
StackMap stack: java.lang.Throwable
5: aload 0
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
1 4 5 any
5 6 5 any
public static com.mchange.v2.c3p0.ConnectionCustomizer getConnectionCustomizer(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/mchange/v2/c3p0/ConnectionCustomizer;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
ifnull 1
aload 0
invokevirtual java.lang.String.trim:()Ljava/lang/String;
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aconst_null
areturn
2: StackMap locals:
StackMap stack:
getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionCustomizers:Ljava/util/Map;
dup
astore 1
monitorenter
3: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionCustomizers:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.ConnectionCustomizer
astore 2
start local 2 4: aload 2
ifnonnull 7
5: aload 0
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.ConnectionCustomizer
astore 2
6: getstatic com.mchange.v2.c3p0.C3P0Registry.classNamesToConnectionCustomizers:Ljava/util/Map;
aload 0
aload 2
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: StackMap locals: java.util.Map com.mchange.v2.c3p0.ConnectionCustomizer
StackMap stack:
aload 2
aload 1
monitorexit
8: areturn
end local 2 9: StackMap locals: java.lang.String java.util.Map
StackMap stack: java.lang.Throwable
aload 1
monitorexit
10: athrow
11: StackMap locals: java.lang.String
StackMap stack: java.lang.Exception
astore 1
start local 1 12: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
invokeinterface com.mchange.v2.log.MLogger.isLoggable:(Lcom/mchange/v2/log/MLevel;)Z
ifeq 19
13: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
14: new java.lang.StringBuilder
dup
ldc "Could not create for find ConnectionCustomizer with class name '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
15: 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;
16: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: aload 1
18: invokeinterface com.mchange.v2.log.MLogger.log:(Lcom/mchange/v2/log/MLevel;Ljava/lang/String;Ljava/lang/Throwable;)V
19: StackMap locals: java.lang.Exception
StackMap stack:
aload 1
invokestatic com.mchange.v2.sql.SqlUtils.toSQLException:(Ljava/lang/Throwable;)Ljava/sql/SQLException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 className Ljava/lang/String;
4 9 2 out Lcom/mchange/v2/c3p0/ConnectionCustomizer;
12 20 1 e Ljava/lang/Exception;
Exception table:
from to target type
3 8 9 any
9 10 9 any
2 8 11 Class java.lang.Exception
9 11 11 Class java.lang.Exception
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
className
private static void banner();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.banner_printed:Z
ifne 4
1: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.INFO:Lcom/mchange/v2/log/MLevel;
invokeinterface com.mchange.v2.log.MLogger.isLoggable:(Lcom/mchange/v2/log/MLevel;)Z
ifeq 3
2: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
ldc "Initializing c3p0-0.9.5.4 [built 23-March-2019 23:00:48 -0700; debug? true; trace: 10]"
invokeinterface com.mchange.v2.log.MLogger.info:(Ljava/lang/String;)V
3: StackMap locals:
StackMap stack:
iconst_1
putstatic com.mchange.v2.c3p0.C3P0Registry.banner_printed:Z
4: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
private static void attemptRegisterRegistryMBean();
descriptor: ()V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.registry_mbean_registered:Z
ifne 3
1: getstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
invokeinterface com.mchange.v2.c3p0.management.ManagementCoordinator.attemptManageC3P0Registry:()V
2: iconst_1
putstatic com.mchange.v2.c3p0.C3P0Registry.registry_mbean_registered:Z
3: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
private static boolean isIncorporated(com.mchange.v2.c3p0.impl.IdentityTokenized);
descriptor: (Lcom/mchange/v2/c3p0/impl/IdentityTokenized;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
aload 0
invokeinterface com.mchange.v2.c3p0.impl.IdentityTokenized.getIdentityToken:()Ljava/lang/String;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 idt Lcom/mchange/v2/c3p0/impl/IdentityTokenized;
MethodParameters:
Name Flags
idt
private static void incorporate(com.mchange.v2.c3p0.impl.IdentityTokenized);
descriptor: (Lcom/mchange/v2/c3p0/impl/IdentityTokenized;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
aload 0
invokeinterface com.mchange.v2.c3p0.impl.IdentityTokenized.getIdentityToken:()Ljava/lang/String;
aload 0
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: aload 0
instanceof com.mchange.v2.c3p0.PooledDataSource
ifeq 4
2: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
aload 0
invokevirtual java.util.HashSet.add:(Ljava/lang/Object;)Z
pop
3: getstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
aload 0
checkcast com.mchange.v2.c3p0.PooledDataSource
invokeinterface com.mchange.v2.c3p0.management.ManagementCoordinator.attemptManagePooledDataSource:(Lcom/mchange/v2/c3p0/PooledDataSource;)V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 idt Lcom/mchange/v2/c3p0/impl/IdentityTokenized;
MethodParameters:
Name Flags
idt
private static synchronized java.lang.Object findTokenized(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x002a) ACC_PRIVATE, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 identityToken Ljava/lang/String;
MethodParameters:
Name Flags
identityToken
public static java.util.Map extensionsForToken(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Map;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
invokestatic com.mchange.v2.c3p0.C3P0Registry.findTokenized:(Ljava/lang/String;)Ljava/lang/Object;
astore 1
start local 1 1: aload 1
ifnonnull 4
new java.util.NoSuchElementException
dup
new java.lang.StringBuilder
dup
ldc "No object is known to be identified by token '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc "'. Either it is a bad token, or the object was no longer in use and has been garbage collected."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.util.NoSuchElementException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: java.lang.Object
StackMap stack:
aload 1
instanceof com.mchange.v2.c3p0.PooledDataSource
ifne 8
5: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "The object '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "', identified by token '"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "', is not a PooledDataSource and therefore cannot have extensions."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 1
checkcast com.mchange.v2.c3p0.PooledDataSource
invokeinterface com.mchange.v2.c3p0.PooledDataSource.getExtensions:()Ljava/util/Map;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 pooledDataSourceIdentityToken Ljava/lang/String;
1 9 1 o Ljava/lang/Object;
Exceptions:
throws java.util.NoSuchElementException, java.lang.IllegalArgumentException
MethodParameters:
Name Flags
pooledDataSourceIdentityToken
public static synchronized com.mchange.v2.c3p0.impl.IdentityTokenized reregister(com.mchange.v2.c3p0.impl.IdentityTokenized);
descriptor: (Lcom/mchange/v2/c3p0/impl/IdentityTokenized;)Lcom/mchange/v2/c3p0/impl/IdentityTokenized;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
instanceof com.mchange.v2.c3p0.PooledDataSource
ifeq 3
1: invokestatic com.mchange.v2.c3p0.C3P0Registry.banner:()V
2: invokestatic com.mchange.v2.c3p0.C3P0Registry.attemptRegisterRegistryMBean:()V
3: StackMap locals:
StackMap stack:
aload 0
invokeinterface com.mchange.v2.c3p0.impl.IdentityTokenized.getIdentityToken:()Ljava/lang/String;
ifnonnull 5
4: new java.lang.RuntimeException
dup
ldc "[c3p0 issue] The identityToken of a registered object should be set prior to registration."
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
getstatic com.mchange.v2.c3p0.C3P0Registry.idtCoalescer:Lcom/mchange/v2/coalesce/Coalescer;
aload 0
invokeinterface com.mchange.v2.coalesce.Coalescer.coalesce:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.impl.IdentityTokenized
astore 1
start local 1 6: aload 1
invokestatic com.mchange.v2.c3p0.C3P0Registry.isIncorporated:(Lcom/mchange/v2/c3p0/impl/IdentityTokenized;)Z
ifne 8
7: aload 1
invokestatic com.mchange.v2.c3p0.C3P0Registry.incorporate:(Lcom/mchange/v2/c3p0/impl/IdentityTokenized;)V
8: StackMap locals: com.mchange.v2.c3p0.impl.IdentityTokenized
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 idt Lcom/mchange/v2/c3p0/impl/IdentityTokenized;
6 9 1 coalesceCheck Lcom/mchange/v2/c3p0/impl/IdentityTokenized;
MethodParameters:
Name Flags
idt
public static synchronized void markClosed(com.mchange.v2.c3p0.PooledDataSource);
descriptor: (Lcom/mchange/v2/c3p0/PooledDataSource;)V
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
aload 0
invokevirtual java.util.HashSet.remove:(Ljava/lang/Object;)Z
pop
1: getstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
aload 0
invokeinterface com.mchange.v2.c3p0.management.ManagementCoordinator.attemptUnmanagePooledDataSource:(Lcom/mchange/v2/c3p0/PooledDataSource;)V
2: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.isEmpty:()Z
ifeq 5
3: getstatic com.mchange.v2.c3p0.C3P0Registry.mc:Lcom/mchange/v2/c3p0/management/ManagementCoordinator;
invokeinterface com.mchange.v2.c3p0.management.ManagementCoordinator.attemptUnmanageC3P0Registry:()V
4: iconst_0
putstatic com.mchange.v2.c3p0.C3P0Registry.registry_mbean_registered:Z
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 pds Lcom/mchange/v2/c3p0/PooledDataSource;
MethodParameters:
Name Flags
pds
public static synchronized java.util.Set getPooledDataSources();
descriptor: ()Ljava/util/Set;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.clone:()Ljava/lang/Object;
checkcast java.util.Set
areturn
LocalVariableTable:
Start End Slot Name Signature
public static synchronized java.util.Set pooledDataSourcesByName(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Set;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 1
start local 1 1: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 2
start local 2 2: goto 6
3: StackMap locals: java.util.Set java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.PooledDataSource
astore 3
start local 3 4: aload 3
invokeinterface com.mchange.v2.c3p0.PooledDataSource.getDataSourceName:()Ljava/lang/String;
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 1
aload 3
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 3 6: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
end local 2 7: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 dataSourceName Ljava/lang/String;
1 8 1 out Ljava/util/Set;
2 7 2 ii Ljava/util/Iterator;
4 6 3 pds Lcom/mchange/v2/c3p0/PooledDataSource;
MethodParameters:
Name Flags
dataSourceName
public static synchronized com.mchange.v2.c3p0.PooledDataSource pooledDataSourceByName(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/mchange/v2/c3p0/PooledDataSource;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 1
start local 1 1: goto 5
2: StackMap locals: java.util.Iterator
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.PooledDataSource
astore 2
start local 2 3: aload 2
invokeinterface com.mchange.v2.c3p0.PooledDataSource.getDataSourceName:()Ljava/lang/String;
aload 0
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
4: aload 2
areturn
end local 2 5: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
end local 1 6: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 dataSourceName Ljava/lang/String;
1 6 1 ii Ljava/util/Iterator;
3 5 2 pds Lcom/mchange/v2/c3p0/PooledDataSource;
MethodParameters:
Name Flags
dataSourceName
public static synchronized java.util.Set allIdentityTokens();
descriptor: ()Ljava/util/Set;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
invokeinterface java.util.Map.keySet:()Ljava/util/Set;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
astore 0
start local 0 1: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 2 0 out Ljava/util/Set;
public static synchronized java.util.Set allIdentityTokenized();
descriptor: ()Ljava/util/Set;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=0
0: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 0
start local 0 1: aload 0
getstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokevirtual java.util.HashSet.addAll:(Ljava/util/Collection;)Z
pop
2: aload 0
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 3 0 out Ljava/util/HashSet;
public static synchronized java.util.Set allPooledDataSources();
descriptor: ()Ljava/util/Set;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=1, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokestatic java.util.Collections.unmodifiableSet:(Ljava/util/Set;)Ljava/util/Set;
astore 0
start local 0 1: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 2 0 out Ljava/util/Set;
public static synchronized int getNumPooledDataSources();
descriptor: ()I
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=1, locals=0, args_size=0
0: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.size:()I
ireturn
LocalVariableTable:
Start End Slot Name Signature
public static synchronized int getNumPoolsAllDataSources();
descriptor: ()I
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=3, args_size=0
0: iconst_0
istore 0
start local 0 1: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 1
start local 1 2: goto 5
3: StackMap locals: int java.util.Iterator
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.PooledDataSource
astore 2
start local 2 4: iload 0
aload 2
invokeinterface com.mchange.v2.c3p0.PooledDataSource.getNumUserPools:()I
iadd
istore 0
end local 2 5: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
end local 1 6: iload 0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 7 0 count I
2 6 1 ii Ljava/util/Iterator;
4 5 2 pds Lcom/mchange/v2/c3p0/PooledDataSource;
Exceptions:
throws java.sql.SQLException
public synchronized int getNumThreadsAllThreadPools();
descriptor: ()I
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: getstatic com.mchange.v2.c3p0.C3P0Registry.unclosedPooledDataSources:Ljava/util/HashSet;
invokevirtual java.util.HashSet.iterator:()Ljava/util/Iterator;
astore 2
start local 2 2: goto 5
3: StackMap locals: int java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.PooledDataSource
astore 3
start local 3 4: iload 1
aload 3
invokeinterface com.mchange.v2.c3p0.PooledDataSource.getNumHelperThreads:()I
iadd
istore 1
end local 3 5: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
end local 2 6: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/mchange/v2/c3p0/C3P0Registry;
1 7 1 count I
2 6 2 ii Ljava/util/Iterator;
4 5 3 pds Lcom/mchange/v2/c3p0/PooledDataSource;
Exceptions:
throws java.sql.SQLException
public static synchronized java.util.Map getConfigExtensionsForPooledDataSource(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/util/Map;
flags: (0x0029) ACC_PUBLIC, ACC_STATIC, ACC_SYNCHRONIZED
Code:
stack=5, locals=2, args_size=1
start local 0 0: getstatic com.mchange.v2.c3p0.C3P0Registry.tokensToTokenized:Ljava/util/Map;
aload 0
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.mchange.v2.c3p0.PooledDataSource
astore 1
start local 1 1: aload 1
ifnonnull 3
2: new java.sql.SQLException
dup
new java.lang.StringBuilder
dup
ldc "No DataSource or registered IdentityTokenized has identityToken '"
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;
invokespecial java.sql.SQLException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: com.mchange.v2.c3p0.PooledDataSource
StackMap stack:
aload 1
invokeinterface com.mchange.v2.c3p0.PooledDataSource.getExtensions:()Ljava/util/Map;
4: areturn
end local 1 5: StackMap locals: java.lang.String
StackMap stack: java.lang.ClassCastException
astore 1
start local 1 6: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
invokeinterface com.mchange.v2.log.MLogger.isLoggable:(Lcom/mchange/v2/log/MLevel;)Z
ifeq 8
7: getstatic com.mchange.v2.c3p0.C3P0Registry.logger:Lcom/mchange/v2/log/MLogger;
getstatic com.mchange.v2.log.MLevel.WARNING:Lcom/mchange/v2/log/MLevel;
ldc "Tried to get config extensions for an entity that is not a PooledDataSource. (Extensions are available only on PooledDataSources.) Thowing SQLException."
aload 1
invokeinterface com.mchange.v2.log.MLogger.log:(Lcom/mchange/v2/log/MLevel;Ljava/lang/String;Ljava/lang/Throwable;)V
8: StackMap locals: java.lang.ClassCastException
StackMap stack:
ldc "Tried to get config extensions for an entity that is not a PooledDataSource. (Extensions are available only on PooledDataSources.)"
aload 1
invokestatic com.mchange.v2.sql.SqlUtils.toSQLException:(Ljava/lang/String;Ljava/lang/Throwable;)Ljava/sql/SQLException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 identityToken Ljava/lang/String;
1 5 1 pds Lcom/mchange/v2/c3p0/PooledDataSource;
6 9 1 e Ljava/lang/ClassCastException;
Exception table:
from to target type
0 4 5 Class java.lang.ClassCastException
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
identityToken
}
SourceFile: "C3P0Registry.java"