public class org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl implements org.hibernate.engine.jdbc.connections.spi.ConnectionProvider, org.hibernate.service.spi.Configurable, org.hibernate.service.spi.Stoppable, org.hibernate.service.spi.ServiceRegistryAwareService
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl
super_class: java.lang.Object
{
private static final org.hibernate.internal.CoreMessageLogger log;
descriptor: Lorg/hibernate/internal/CoreMessageLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
public static final java.lang.String MIN_SIZE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "hibernate.connection.min_pool_size"
public static final java.lang.String INITIAL_SIZE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "hibernate.connection.initial_pool_size"
public static final java.lang.String VALIDATION_INTERVAL;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "hibernate.connection.pool_validation_interval"
private boolean active;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.util.concurrent.ConcurrentLinkedQueue<java.sql.Connection> connections;
descriptor: Ljava/util/concurrent/ConcurrentLinkedQueue;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/ConcurrentLinkedQueue<Ljava/sql/Connection;>;
private org.hibernate.engine.jdbc.connections.internal.ConnectionCreator connectionCreator;
descriptor: Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
flags: (0x0002) ACC_PRIVATE
private java.util.concurrent.ScheduledExecutorService executorService;
descriptor: Ljava/util/concurrent/ScheduledExecutorService;
flags: (0x0002) ACC_PRIVATE
private org.hibernate.service.spi.ServiceRegistryImplementor serviceRegistry;
descriptor: Lorg/hibernate/service/spi/ServiceRegistryImplementor;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
invokestatic org.hibernate.internal.CoreLogging.messageLogger:(Ljava/lang/Class;)Lorg/hibernate/internal/CoreMessageLogger;
putstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_1
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.active:Z
2: aload 0
new java.util.concurrent.ConcurrentLinkedQueue
dup
invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connections:Ljava/util/concurrent/ConcurrentLinkedQueue;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
public void injectServices(org.hibernate.service.spi.ServiceRegistryImplementor);
descriptor: (Lorg/hibernate/service/spi/ServiceRegistryImplementor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.serviceRegistry:Lorg/hibernate/service/spi/ServiceRegistryImplementor;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 2 1 serviceRegistry Lorg/hibernate/service/spi/ServiceRegistryImplementor;
MethodParameters:
Name Flags
serviceRegistry
public void configure(java.util.Map);
descriptor: (Ljava/util/Map;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
invokeinterface org.hibernate.internal.CoreMessageLogger.usingHibernateBuiltInConnectionPool:()V
1: aload 0
aload 0
aload 1
invokevirtual org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.buildCreator:(Ljava/util/Map;)Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connectionCreator:Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
2: ldc "hibernate.connection.min_pool_size"
aload 1
iconst_1
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
istore 2
start local 2 3: ldc "hibernate.connection.pool_size"
aload 1
bipush 20
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
istore 3
start local 3 4: ldc "hibernate.connection.initial_pool_size"
aload 1
iload 2
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInt:(Ljava/lang/String;Ljava/util/Map;I)I
istore 4
start local 4 5: ldc "hibernate.connection.pool_validation_interval"
aload 1
bipush 30
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getLong:(Ljava/lang/String;Ljava/util/Map;I)J
lstore 5
start local 5 6: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
iload 3
iload 2
invokeinterface org.hibernate.internal.CoreMessageLogger.hibernateConnectionPoolSize:(II)V
7: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
ldc "Initializing Connection pool with %s Connections"
iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface org.hibernate.internal.CoreMessageLogger.debugf:(Ljava/lang/String;Ljava/lang/Object;)V
8: iconst_0
istore 7
start local 7 9: goto 12
10: StackMap locals: org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl java.util.Map int int int long int
StackMap stack:
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connections:Ljava/util/concurrent/ConcurrentLinkedQueue;
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connectionCreator:Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
invokeinterface org.hibernate.engine.jdbc.connections.internal.ConnectionCreator.createConnection:()Ljava/sql/Connection;
invokevirtual java.util.concurrent.ConcurrentLinkedQueue.add:(Ljava/lang/Object;)Z
pop
11: iinc 7 1
StackMap locals:
StackMap stack:
12: iload 7
iload 4
if_icmplt 10
end local 7 13: aload 0
invokestatic java.util.concurrent.Executors.newSingleThreadScheduledExecutor:()Ljava/util/concurrent/ScheduledExecutorService;
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.executorService:Ljava/util/concurrent/ScheduledExecutorService;
14: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.executorService:Ljava/util/concurrent/ScheduledExecutorService;
15: new org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$1
dup
aload 0
iload 2
iload 3
invokespecial org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$1.<init>:(Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;II)V
16: lload 5
17: lload 5
18: getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
19: invokeinterface java.util.concurrent.ScheduledExecutorService.scheduleWithFixedDelay:(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;
pop
20: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 21 1 configurationValues Ljava/util/Map;
3 21 2 minSize I
4 21 3 maxSize I
5 21 4 initialSize I
6 21 5 validationInterval J
9 13 7 i I
MethodParameters:
Name Flags
configurationValues
private org.hibernate.engine.jdbc.connections.internal.ConnectionCreator buildCreator(java.util.Map);
descriptor: (Ljava/util/Map;)Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: new org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder
dup
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.serviceRegistry:Lorg/hibernate/service/spi/ServiceRegistryImplementor;
invokespecial org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.<init>:(Lorg/hibernate/service/spi/ServiceRegistryImplementor;)V
astore 2
start local 2 1: aload 1
ldc "hibernate.connection.driver_class"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 2: aload 2
aload 0
aload 3
invokevirtual org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.loadDriverIfPossible:(Ljava/lang/String;)Ljava/sql/Driver;
invokevirtual org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.setDriver:(Ljava/sql/Driver;)V
3: aload 1
ldc "hibernate.connection.url"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 4: aload 4
ifnonnull 8
5: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
ldc "hibernate.connection.url"
invokeinterface org.hibernate.internal.CoreMessageLogger.jdbcUrlNotSpecified:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 6: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 5
invokeinterface org.hibernate.internal.CoreMessageLogger.error:(Ljava/lang/Object;)V
7: new org.hibernate.HibernateException
dup
aload 5
invokespecial org.hibernate.HibernateException.<init>:(Ljava/lang/String;)V
athrow
end local 5 8: StackMap locals: org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder java.lang.String java.lang.String
StackMap stack:
aload 2
aload 4
invokevirtual org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.setUrl:(Ljava/lang/String;)V
9: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 3
aload 4
invokeinterface org.hibernate.internal.CoreMessageLogger.usingDriver:(Ljava/lang/String;Ljava/lang/String;)V
10: aload 1
invokestatic org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.getConnectionProperties:(Ljava/util/Map;)Ljava/util/Properties;
astore 5
start local 5 11: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
invokeinterface org.hibernate.internal.CoreMessageLogger.isDebugEnabled:()Z
ifeq 14
12: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 5
invokeinterface org.hibernate.internal.CoreMessageLogger.connectionProperties:(Ljava/util/Properties;)V
13: goto 15
14: StackMap locals: java.util.Properties
StackMap stack:
getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 5
ldc "password"
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.maskOut:(Ljava/util/Properties;Ljava/lang/String;)Ljava/util/Properties;
invokeinterface org.hibernate.internal.CoreMessageLogger.connectionProperties:(Ljava/util/Properties;)V
15: StackMap locals:
StackMap stack:
aload 2
aload 5
invokevirtual org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.setConnectionProps:(Ljava/util/Properties;)V
16: ldc "hibernate.connection.autocommit"
aload 1
iconst_0
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getBoolean:(Ljava/lang/String;Ljava/util/Map;Z)Z
istore 6
start local 6 17: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
iload 6
invokeinterface org.hibernate.internal.CoreMessageLogger.autoCommitMode:(Z)V
18: aload 2
iload 6
invokevirtual org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.setAutoCommit:(Z)V
19: ldc "hibernate.connection.isolation"
aload 1
invokestatic org.hibernate.internal.util.config.ConfigurationHelper.getInteger:(Ljava/lang/String;Ljava/util/Map;)Ljava/lang/Integer;
astore 7
start local 7 20: aload 7
ifnull 22
21: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 7
invokevirtual java.lang.Integer.intValue:()I
invokestatic org.hibernate.cfg.Environment.isolationLevelToString:(I)Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.jdbcIsolationLevel:(Ljava/lang/String;)V
22: StackMap locals: int java.lang.Integer
StackMap stack:
aload 2
aload 7
invokevirtual org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.setIsolation:(Ljava/lang/Integer;)V
23: aload 2
invokevirtual org.hibernate.engine.jdbc.connections.internal.ConnectionCreatorBuilder.build:()Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 24 1 configurationValues Ljava/util/Map;
1 24 2 connectionCreatorBuilder Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreatorBuilder;
2 24 3 driverClassName Ljava/lang/String;
4 24 4 url Ljava/lang/String;
6 8 5 msg Ljava/lang/String;
11 24 5 connectionProps Ljava/util/Properties;
17 24 6 autoCommit Z
20 24 7 isolation Ljava/lang/Integer;
MethodParameters:
Name Flags
configurationValues
private java.sql.Driver loadDriverIfPossible(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/sql/Driver;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 3
1: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
ldc "No driver class specified"
invokeinterface org.hibernate.internal.CoreMessageLogger.debug:(Ljava/lang/Object;)V
2: aconst_null
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.serviceRegistry:Lorg/hibernate/service/spi/ServiceRegistryImplementor;
ifnull 10
4: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.serviceRegistry:Lorg/hibernate/service/spi/ServiceRegistryImplementor;
ldc Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
invokeinterface org.hibernate.service.spi.ServiceRegistryImplementor.getService:(Ljava/lang/Class;)Lorg/hibernate/service/Service;
checkcast org.hibernate.boot.registry.classloading.spi.ClassLoaderService
astore 2
start local 2 5: aload 2
aload 1
invokeinterface org.hibernate.boot.registry.classloading.spi.ClassLoaderService.classForName:(Ljava/lang/String;)Ljava/lang/Class;
astore 3
start local 3 6: aload 3
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast java.sql.Driver
7: areturn
8: StackMap locals: org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl java.lang.String org.hibernate.boot.registry.classloading.spi.ClassLoaderService java.lang.Class
StackMap stack: java.lang.Exception
astore 4
start local 4 9: new org.hibernate.service.spi.ServiceException
dup
new java.lang.StringBuilder
dup
ldc "Specified JDBC Driver "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " could not be loaded"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4
invokespecial org.hibernate.service.spi.ServiceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 end local 3 end local 2 10: StackMap locals:
StackMap stack:
aload 1
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast java.sql.Driver
11: areturn
12: StackMap locals:
StackMap stack: java.lang.Exception
pop
13: aload 1
invokestatic org.hibernate.internal.util.ReflectHelper.classForName:(Ljava/lang/String;)Ljava/lang/Class;
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
checkcast java.sql.Driver
14: areturn
15: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 16: new org.hibernate.service.spi.ServiceException
dup
new java.lang.StringBuilder
dup
ldc "Specified JDBC Driver "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " could not be loaded"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokespecial org.hibernate.service.spi.ServiceException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 17 1 driverClassName Ljava/lang/String;
5 10 2 classLoaderService Lorg/hibernate/boot/registry/classloading/spi/ClassLoaderService;
6 10 3 driverClass Ljava/lang/Class<Ljava/sql/Driver;>;
9 10 4 e Ljava/lang/Exception;
16 17 2 e2 Ljava/lang/Exception;
Exception table:
from to target type
6 7 8 Class java.lang.Exception
10 11 12 Class java.lang.Exception
13 14 15 Class java.lang.Exception
MethodParameters:
Name Flags
driverClassName
public java.sql.Connection getConnection();
descriptor: ()Ljava/sql/Connection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.active:Z
ifne 2
1: new org.hibernate.HibernateException
dup
ldc "Connection pool is no longer active"
invokespecial org.hibernate.HibernateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connections:Ljava/util/concurrent/ConcurrentLinkedQueue;
invokevirtual java.util.concurrent.ConcurrentLinkedQueue.poll:()Ljava/lang/Object;
checkcast java.sql.Connection
dup
astore 1
start local 1 3: ifnonnull 5
4: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connectionCreator:Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
invokeinterface org.hibernate.engine.jdbc.connections.internal.ConnectionCreator.createConnection:()Ljava/sql/Connection;
astore 1
5: StackMap locals: java.sql.Connection
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
3 6 1 connection Ljava/sql/Connection;
Exceptions:
throws java.sql.SQLException
public void closeConnection(java.sql.Connection);
descriptor: (Ljava/sql/Connection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connections:Ljava/util/concurrent/ConcurrentLinkedQueue;
aload 1
invokevirtual java.util.concurrent.ConcurrentLinkedQueue.offer:(Ljava/lang/Object;)Z
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 4 1 conn Ljava/sql/Connection;
Exceptions:
throws java.sql.SQLException
MethodParameters:
Name Flags
conn
public boolean supportsAggressiveRelease();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
public boolean isUnwrappableAs(java.lang.Class);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc Lorg/hibernate/engine/jdbc/connections/spi/ConnectionProvider;
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 3
1: ldc Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
aload 1
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 3
2: iconst_0
ireturn
StackMap locals:
StackMap stack:
3: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 4 1 unwrapType Ljava/lang/Class;
MethodParameters:
Name Flags
unwrapType
public <T> T unwrap(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: ldc Lorg/hibernate/engine/jdbc/connections/spi/ConnectionProvider;
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 2
1: ldc Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
aload 1
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 3
2: StackMap locals:
StackMap stack:
aload 0
areturn
3: StackMap locals:
StackMap stack:
new org.hibernate.service.UnknownUnwrapTypeException
dup
aload 1
invokespecial org.hibernate.service.UnknownUnwrapTypeException.<init>:(Ljava/lang/Class;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
0 4 1 unwrapType Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
unwrapType
public void stop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.active:Z
ifne 2
1: return
2: StackMap locals:
StackMap stack:
getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connectionCreator:Lorg/hibernate/engine/jdbc/connections/internal/ConnectionCreator;
invokeinterface org.hibernate.engine.jdbc.connections.internal.ConnectionCreator.getUrl:()Ljava/lang/String;
invokeinterface org.hibernate.internal.CoreMessageLogger.cleaningUpConnectionPool:(Ljava/lang/String;)V
3: aload 0
iconst_0
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.active:Z
4: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.executorService:Ljava/util/concurrent/ScheduledExecutorService;
ifnull 6
5: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.executorService:Ljava/util/concurrent/ScheduledExecutorService;
invokeinterface java.util.concurrent.ScheduledExecutorService.shutdown:()V
6: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.executorService:Ljava/util/concurrent/ScheduledExecutorService;
7: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.connections:Ljava/util/concurrent/ConcurrentLinkedQueue;
invokevirtual java.util.concurrent.ConcurrentLinkedQueue.iterator:()Ljava/util/Iterator;
astore 2
goto 13
StackMap locals: org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl top java.util.Iterator
StackMap stack:
8: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.sql.Connection
astore 1
start local 1 9: aload 1
invokeinterface java.sql.Connection.close:()V
10: goto 13
11: StackMap locals: org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl java.sql.Connection java.util.Iterator
StackMap stack: java.sql.SQLException
astore 3
start local 3 12: getstatic org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.log:Lorg/hibernate/internal/CoreMessageLogger;
aload 3
invokeinterface org.hibernate.internal.CoreMessageLogger.unableToClosePooledConnection:(Ljava/sql/SQLException;)V
end local 3 end local 1 13: StackMap locals: org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl top java.util.Iterator
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 8
14: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
9 13 1 connection Ljava/sql/Connection;
12 13 3 e Ljava/sql/SQLException;
Exception table:
from to target type
9 10 11 Class java.sql.SQLException
protected void finalize();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.active:Z
ifeq 2
1: aload 0
invokevirtual org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl.stop:()V
2: StackMap locals:
StackMap stack:
aload 0
invokespecial java.lang.Object.finalize:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl;
Exceptions:
throws java.lang.Throwable
}
SourceFile: "DriverManagerConnectionProviderImpl.java"
NestMembers:
org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$1
InnerClasses:
org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$1