diff --git a/documentation/src/main/asciidoc/topical/registries/ServiceRegistries.adoc b/documentation/src/main/asciidoc/topical/registries/ServiceRegistries.adoc index 4f91a3274636..42150f386edc 100644 --- a/documentation/src/main/asciidoc/topical/registries/ServiceRegistries.adoc +++ b/documentation/src/main/asciidoc/topical/registries/ServiceRegistries.adoc @@ -28,7 +28,7 @@ service is defined by the interface (service role) +org.hibernate.engine.jdbc.co which declares methods for obtaining and releasing the Connections. There are then multiple implementations of that service contract, varying in how they actually manage the Connections: -* +org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl+ for using a +javax.sql.DataSource+ +* +org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider+ for using a +javax.sql.DataSource+ * +org.hibernate.c3p0.internal.C3P0ConnectionProvider+ for using a C3P0 Connection pool * etc. diff --git a/hibernate-core/src/main/java/org/hibernate/cfg/JdbcSettings.java b/hibernate-core/src/main/java/org/hibernate/cfg/JdbcSettings.java index 12b686ccf47d..4c59d442ecd6 100644 --- a/hibernate-core/src/main/java/org/hibernate/cfg/JdbcSettings.java +++ b/hibernate-core/src/main/java/org/hibernate/cfg/JdbcSettings.java @@ -246,12 +246,12 @@ public interface JdbcSettings extends C3p0Settings, AgroalSettings, HikariCPSett * automatically: * *

@@ -266,7 +266,7 @@ public interface JdbcSettings extends C3p0Settings, AgroalSettings, HikariCPSett * Specifies the maximum number of inactive connections for any * {@linkplain ConnectionProvider connection pool} which respects this * setting, including every built-in implementation except for - * {@link org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl}. + * {@link org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider}. *

* The default pool size depends on the connection provider. */ @@ -276,7 +276,7 @@ public interface JdbcSettings extends C3p0Settings, AgroalSettings, HikariCPSett * Specifies the JDBC transaction isolation level for connections obtained * from any {@link ConnectionProvider} implementation which respects this * setting, including every built-in implementation except for - * {@link org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl}. + * {@link org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider}. *

* Possible values are enumerated by {@link java.sql.Connection}: * {@code READ_UNCOMMITTED}, {@code READ_COMMITTED}, @@ -293,7 +293,7 @@ public interface JdbcSettings extends C3p0Settings, AgroalSettings, HikariCPSett * Controls the autocommit mode of JDBC connections obtained from any * {@link ConnectionProvider} implementation which respects this setting, * including every built-in implementation except for - * {@link org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl}. + * {@link org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider}. * * @see java.sql.Connection#setAutoCommit(boolean) * @@ -329,7 +329,7 @@ public interface JdbcSettings extends C3p0Settings, AgroalSettings, HikariCPSett * append {@code foo=bar} to the JDBC connection URL. * * @deprecated This setting is only supported by {@code C3P0ConnectionProvider} - * and {@link org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl}. + * and {@link org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider}. */ @Deprecated(since="7") String CONNECTION_PREFIX = "hibernate.connection"; diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/ConnectionProviderInitiator.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/ConnectionProviderInitiator.java index aa7b879477ea..4d9fb06c5fbd 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/ConnectionProviderInitiator.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/ConnectionProviderInitiator.java @@ -140,7 +140,7 @@ private ConnectionProvider instantiateNamedConnectionProvider( private ConnectionProvider instantiateConnectionProvider( Map configurationValues, StrategySelector strategySelector, BeanContainer beanContainer) { if ( configurationValues.containsKey( DATASOURCE ) ) { - return new DatasourceConnectionProviderImpl(); + return new DataSourceConnectionProvider(); } final Class singleRegisteredProvider = @@ -163,7 +163,7 @@ else if ( hasConfiguration( configurationValues, AGROAL_CONFIG_PREFIX ) ) { return instantiateProvider( strategySelector, AGROAL_STRATEGY ); } else if ( configurationValues.containsKey( URL ) ) { - return new DriverManagerConnectionProviderImpl(); + return new DriverManagerConnectionProvider(); } else { if ( beanContainer != null ) { diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DataSourceConnectionProvider.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DataSourceConnectionProvider.java new file mode 100644 index 000000000000..f9f27ad5e9ef --- /dev/null +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DataSourceConnectionProvider.java @@ -0,0 +1,192 @@ +/* + * SPDX-License-Identifier: Apache-2.0 + * Copyright Red Hat Inc. and Hibernate Authors + */ +package org.hibernate.engine.jdbc.connections.internal; + +import java.sql.Connection; +import java.sql.SQLException; +import java.util.Map; +import javax.sql.DataSource; + +import org.hibernate.HibernateException; +import org.hibernate.cfg.JdbcSettings; +import org.hibernate.dialect.Dialect; +import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; +import org.hibernate.engine.jdbc.connections.spi.ConnectionProviderConfigurationException; +import org.hibernate.engine.jdbc.connections.spi.DatabaseConnectionInfo; +import org.hibernate.engine.jdbc.env.spi.ExtractedDatabaseMetaData; +import org.hibernate.engine.jndi.spi.JndiService; +import org.hibernate.internal.log.ConnectionInfoLogger; +import org.hibernate.service.UnknownUnwrapTypeException; +import org.hibernate.service.spi.Configurable; +import org.hibernate.service.spi.InjectService; +import org.hibernate.service.spi.Stoppable; + +import static org.hibernate.cfg.JdbcSettings.DATASOURCE; +import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.toIsolationNiceName; + +/** + * A {@link ConnectionProvider} that manages connections from an underlying {@link DataSource}. + *

+ * The {@link DataSource} to use may be specified by either:

+ * + * @author Gavin King + * @author Steve Ebersole + */ +public class DataSourceConnectionProvider + implements ConnectionProvider, Configurable, Stoppable { + + private DataSource dataSource; + private String user; + private String pass; + private boolean useCredentials; + private JndiService jndiService; + private String dataSourceJndiName; + + private boolean available; + + public DataSource getDataSource() { + return dataSource; + } + + public void setDataSource(DataSource dataSource) { + this.dataSource = dataSource; + } + + @InjectService( required = false ) + @SuppressWarnings("unused") + public void setJndiService(JndiService jndiService) { + this.jndiService = jndiService; + } + + @Override + public boolean isUnwrappableAs(Class unwrapType) { + return unwrapType.isAssignableFrom( DataSourceConnectionProvider.class ) + || unwrapType.isAssignableFrom( DataSource.class); + } + + @Override + @SuppressWarnings("unchecked") + public T unwrap(Class unwrapType) { + if ( unwrapType.isAssignableFrom( DataSourceConnectionProvider.class ) ) { + return (T) this; + } + else if ( unwrapType.isAssignableFrom( DataSource.class) ) { + return (T) getDataSource(); + } + else { + throw new UnknownUnwrapTypeException( unwrapType ); + } + } + + @Override + public void configure(Map configuration) { + if ( dataSource == null ) { + final Object dataSourceSetting = configuration.get( DATASOURCE ); + if ( dataSourceSetting instanceof DataSource instance ) { + dataSource = instance; + } + else if ( dataSourceSetting instanceof String jndiName ) { + dataSourceJndiName = jndiName; + if ( jndiService == null ) { + throw new ConnectionProviderConfigurationException( "Unable to locate JndiService to lookup Datasource" ); + } + dataSource = (DataSource) jndiService.locate( jndiName ); + } + else { + throw new ConnectionProviderConfigurationException( + "DataSource to use was not injected nor specified by '" + DATASOURCE + "'" ); + } + } + if ( dataSource == null ) { + throw new ConnectionProviderConfigurationException( "Unable to determine appropriate DataSource to use" ); + } + + if ( configuration.containsKey( JdbcSettings.AUTOCOMMIT ) ) { + ConnectionInfoLogger.INSTANCE.ignoredSetting( JdbcSettings.AUTOCOMMIT, + DataSourceConnectionProvider.class ); + } + if ( configuration.containsKey( JdbcSettings.ISOLATION ) ) { + ConnectionInfoLogger.INSTANCE.ignoredSetting( JdbcSettings.ISOLATION, + DataSourceConnectionProvider.class ); + } + + user = (String) configuration.get( JdbcSettings.USER ); + pass = (String) configuration.get( JdbcSettings.PASS ); + useCredentials = user != null || pass != null; + available = true; + } + + @Override + public void stop() { + available = false; + dataSource = null; + } + + @Override + public Connection getConnection() throws SQLException { + if ( !available ) { + throw new HibernateException( "Provider is closed" ); + } + return useCredentials ? dataSource.getConnection( user, pass ) : dataSource.getConnection(); + } + + @Override + public void closeConnection(Connection connection) throws SQLException { + connection.close(); + } + + @Override + public boolean supportsAggressiveRelease() { + return true; + } + + @Override + public DatabaseConnectionInfo getDatabaseConnectionInfo(Dialect dialect) { + return getDatabaseConnectionInfo( dialect, null ); + } + + @Override + public DatabaseConnectionInfo getDatabaseConnectionInfo(Dialect dialect, ExtractedDatabaseMetaData metaData) { + return new DatabaseConnectionInfoImpl( + DataSourceConnectionProvider.class, + metaData == null ? null : metaData.getUrl(), + metaData == null ? null : metaData.getDriver(), + dialect.getClass(), + dialect.getVersion(), + metaData == null || metaData.supportsSchemas(), + metaData == null || metaData.supportsCatalogs(), + metaData == null ? null : metaData.getConnectionSchemaName(), + metaData == null ? null : metaData.getConnectionCatalogName(), + null, + metaData == null ? null : isolationString( metaData ), + null, + null, + metaData != null ? fetchSize( metaData ) : null + ) { + @Override + public String toInfoString() { + return dataSourceJndiName != null + ? "\tDataSource JNDI name [" + dataSourceJndiName + "]\n" + super.toInfoString() + : super.toInfoString(); + } + }; + } + + private static Integer fetchSize(ExtractedDatabaseMetaData metaData) { + final int defaultFetchSize = metaData.getDefaultFetchSize(); + return defaultFetchSize == -1 ? null : defaultFetchSize; + } + + private String isolationString(ExtractedDatabaseMetaData metaData) { + return toIsolationNiceName( metaData.getTransactionIsolation() ) + + " [default " + toIsolationNiceName( metaData.getDefaultTransactionIsolation() ) + "]"; + } +} diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DatasourceConnectionProviderImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DatasourceConnectionProviderImpl.java index 6877fa533e94..5595eb0b0ebf 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DatasourceConnectionProviderImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DatasourceConnectionProviderImpl.java @@ -4,189 +4,9 @@ */ package org.hibernate.engine.jdbc.connections.internal; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.Map; -import javax.sql.DataSource; - -import org.hibernate.HibernateException; -import org.hibernate.cfg.JdbcSettings; -import org.hibernate.dialect.Dialect; -import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; -import org.hibernate.engine.jdbc.connections.spi.ConnectionProviderConfigurationException; -import org.hibernate.engine.jdbc.connections.spi.DatabaseConnectionInfo; -import org.hibernate.engine.jdbc.env.spi.ExtractedDatabaseMetaData; -import org.hibernate.engine.jndi.spi.JndiService; -import org.hibernate.internal.log.ConnectionInfoLogger; -import org.hibernate.service.UnknownUnwrapTypeException; -import org.hibernate.service.spi.Configurable; -import org.hibernate.service.spi.InjectService; -import org.hibernate.service.spi.Stoppable; - -import static org.hibernate.cfg.JdbcSettings.DATASOURCE; -import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.toIsolationNiceName; - /** - * A {@link ConnectionProvider} that manages connections from an underlying {@link DataSource}. - *

- * The {@link DataSource} to use may be specified by either:

    - *
  • injection using {@link #setDataSource}, - *
  • passing the {@link DataSource} instance using {@value JdbcSettings#DATASOURCE}, - * {@value JdbcSettings#JAKARTA_JTA_DATASOURCE}, or {@value JdbcSettings#JAKARTA_NON_JTA_DATASOURCE}, or - *
  • declaring the JNDI name under which the {@link DataSource} is found via {@value JdbcSettings#DATASOURCE}, - * {@value JdbcSettings#JAKARTA_JTA_DATASOURCE}, or {@value JdbcSettings#JAKARTA_NON_JTA_DATASOURCE}. - *
- * - * @author Gavin King - * @author Steve Ebersole + * @deprecated Use {@link DataSourceConnectionProvider} */ -public class DatasourceConnectionProviderImpl - implements ConnectionProvider, Configurable, Stoppable { - - private DataSource dataSource; - private String user; - private String pass; - private boolean useCredentials; - private JndiService jndiService; - private String dataSourceJndiName; - - private boolean available; - - public DataSource getDataSource() { - return dataSource; - } - - public void setDataSource(DataSource dataSource) { - this.dataSource = dataSource; - } - - @InjectService( required = false ) - @SuppressWarnings("unused") - public void setJndiService(JndiService jndiService) { - this.jndiService = jndiService; - } - - @Override - public boolean isUnwrappableAs(Class unwrapType) { - return unwrapType.isAssignableFrom( DatasourceConnectionProviderImpl.class ) - || unwrapType.isAssignableFrom( DataSource.class); - } - - @Override - @SuppressWarnings("unchecked") - public T unwrap(Class unwrapType) { - if ( unwrapType.isAssignableFrom( DatasourceConnectionProviderImpl.class ) ) { - return (T) this; - } - else if ( unwrapType.isAssignableFrom( DataSource.class) ) { - return (T) getDataSource(); - } - else { - throw new UnknownUnwrapTypeException( unwrapType ); - } - } - - @Override - public void configure(Map configuration) { - if ( dataSource == null ) { - final Object dataSourceSetting = configuration.get( DATASOURCE ); - if ( dataSourceSetting instanceof DataSource instance ) { - dataSource = instance; - } - else if ( dataSourceSetting instanceof String jndiName ) { - dataSourceJndiName = jndiName; - if ( jndiService == null ) { - throw new ConnectionProviderConfigurationException( "Unable to locate JndiService to lookup Datasource" ); - } - dataSource = (DataSource) jndiService.locate( jndiName ); - } - else { - throw new ConnectionProviderConfigurationException( - "DataSource to use was not injected nor specified by '" + DATASOURCE + "'" ); - } - } - if ( dataSource == null ) { - throw new ConnectionProviderConfigurationException( "Unable to determine appropriate DataSource to use" ); - } - - if ( configuration.containsKey( JdbcSettings.AUTOCOMMIT ) ) { - ConnectionInfoLogger.INSTANCE.ignoredSetting( JdbcSettings.AUTOCOMMIT, - DatasourceConnectionProviderImpl.class ); - } - if ( configuration.containsKey( JdbcSettings.ISOLATION ) ) { - ConnectionInfoLogger.INSTANCE.ignoredSetting( JdbcSettings.ISOLATION, - DatasourceConnectionProviderImpl.class ); - } - - user = (String) configuration.get( JdbcSettings.USER ); - pass = (String) configuration.get( JdbcSettings.PASS ); - useCredentials = user != null || pass != null; - available = true; - } - - @Override - public void stop() { - available = false; - dataSource = null; - } - - @Override - public Connection getConnection() throws SQLException { - if ( !available ) { - throw new HibernateException( "Provider is closed" ); - } - return useCredentials ? dataSource.getConnection( user, pass ) : dataSource.getConnection(); - } - - @Override - public void closeConnection(Connection connection) throws SQLException { - connection.close(); - } - - @Override - public boolean supportsAggressiveRelease() { - return true; - } - - @Override - public DatabaseConnectionInfo getDatabaseConnectionInfo(Dialect dialect) { - return getDatabaseConnectionInfo( dialect, null ); - } - - @Override - public DatabaseConnectionInfo getDatabaseConnectionInfo(Dialect dialect, ExtractedDatabaseMetaData metaData) { - return new DatabaseConnectionInfoImpl( - DatasourceConnectionProviderImpl.class, - metaData == null ? null : metaData.getUrl(), - metaData == null ? null : metaData.getDriver(), - dialect.getClass(), - dialect.getVersion(), - metaData == null || metaData.supportsSchemas(), - metaData == null || metaData.supportsCatalogs(), - metaData == null ? null : metaData.getConnectionSchemaName(), - metaData == null ? null : metaData.getConnectionCatalogName(), - null, - metaData == null ? null : isolationString( metaData ), - null, - null, - metaData != null ? fetchSize( metaData ) : null - ) { - @Override - public String toInfoString() { - return dataSourceJndiName != null - ? "\tDataSource JNDI name [" + dataSourceJndiName + "]\n" + super.toInfoString() - : super.toInfoString(); - } - }; - } - - private static Integer fetchSize(ExtractedDatabaseMetaData metaData) { - final int defaultFetchSize = metaData.getDefaultFetchSize(); - return defaultFetchSize == -1 ? null : defaultFetchSize; - } - - private String isolationString(ExtractedDatabaseMetaData metaData) { - return toIsolationNiceName( metaData.getTransactionIsolation() ) - + " [default " + toIsolationNiceName( metaData.getDefaultTransactionIsolation() ) + "]"; - } +@Deprecated(since = "7.1", forRemoval = true) +public class DatasourceConnectionProviderImpl extends DriverManagerConnectionProvider { } diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProvider.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProvider.java new file mode 100644 index 000000000000..168e78865dae --- /dev/null +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProvider.java @@ -0,0 +1,372 @@ +/* + * SPDX-License-Identifier: Apache-2.0 + * Copyright Red Hat Inc. and Hibernate Authors + */ +package org.hibernate.engine.jdbc.connections.internal; + +import java.sql.Connection; +import java.sql.Driver; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.Map; +import java.util.Properties; + +import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; +import org.hibernate.dialect.Database; +import org.hibernate.dialect.Dialect; +import org.hibernate.dialect.SimpleDatabaseVersion; +import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; +import org.hibernate.engine.jdbc.connections.spi.ConnectionProviderConfigurationException; +import org.hibernate.engine.jdbc.connections.spi.DatabaseConnectionInfo; +import org.hibernate.exception.JDBCConnectionException; +import org.hibernate.service.ServiceRegistry; +import org.hibernate.service.UnknownUnwrapTypeException; +import org.hibernate.service.spi.Configurable; +import org.hibernate.service.spi.ServiceException; +import org.hibernate.service.spi.ServiceRegistryAwareService; +import org.hibernate.service.spi.ServiceRegistryImplementor; +import org.hibernate.service.spi.Stoppable; +import org.hibernate.internal.log.ConnectionInfoLogger; + +import static org.hibernate.cfg.JdbcSettings.AUTOCOMMIT; +import static org.hibernate.cfg.JdbcSettings.DRIVER; +import static org.hibernate.cfg.JdbcSettings.JAKARTA_JDBC_URL; +import static org.hibernate.cfg.JdbcSettings.POOL_SIZE; +import static org.hibernate.cfg.JdbcSettings.URL; +import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.extractIsolation; +import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.getConnectionProperties; +import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.toIsolationNiceName; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getCatalog; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getDriverName; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getFetchSize; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getIsolation; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getSchema; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.hasCatalog; +import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.hasSchema; +import static org.hibernate.internal.util.config.ConfigurationHelper.getBoolean; +import static org.hibernate.internal.util.config.ConfigurationHelper.getInt; +import static org.hibernate.internal.util.config.ConfigurationHelper.getLong; +import static org.hibernate.internal.util.config.ConfigurationHelper.getString; + +/** + * A connection provider that uses the {@link DriverManager} directly to open connections and provides + * a very rudimentary connection pool. + * + * @implNote Not intended for use in production systems! + * + * @author Gavin King + * @author Steve Ebersole + */ +public class DriverManagerConnectionProvider + implements ConnectionProvider, Configurable, Stoppable, ServiceRegistryAwareService, ConnectionValidator { + + public static final String MIN_SIZE = "hibernate.connection.min_pool_size"; + public static final String INITIAL_SIZE = "hibernate.connection.initial_pool_size"; + // in TimeUnit.SECONDS + public static final String VALIDATION_INTERVAL = "hibernate.connection.pool_validation_interval"; + public static final String INIT_SQL ="hibernate.connection.init_sql"; + public static final String CONNECTION_CREATOR_FACTORY ="hibernate.connection.creator_factory_class"; + + private volatile PoolState state; + + private static DatabaseConnectionInfo dbInfo; + + // create the pool ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + private volatile ServiceRegistry serviceRegistry; + + @Override + public void injectServices(ServiceRegistryImplementor serviceRegistry) { + this.serviceRegistry = serviceRegistry; + } + + @Override + public void configure(Map configurationValues) { + ConnectionInfoLogger.INSTANCE.usingHibernateBuiltInConnectionPool(); + final PooledConnections pool = buildPool( configurationValues, serviceRegistry ); + final long validationInterval = getLong( VALIDATION_INTERVAL, configurationValues, 30 ); + state = new PoolState( pool, validationInterval ); + } + + private PooledConnections buildPool(Map configuration, ServiceRegistry serviceRegistry) { + // connection settings + final String url = jdbcUrl( configuration ); + final String driverClassName = getString( DRIVER, configuration ); + final Properties connectionProps = getConnectionProperties( configuration ); + final boolean autoCommit = getBoolean( AUTOCOMMIT, configuration ); // default autocommit to false + final Integer isolation = extractIsolation( configuration ); + final String initSql = getString( INIT_SQL, configuration ); + + // pool settings + final int minSize = getInt( MIN_SIZE, configuration, 1 ); + final int maxSize = getInt( POOL_SIZE, configuration, 20 ); + final int initialSize = getInt( INITIAL_SIZE, configuration, minSize ); + + final Driver driver = loadDriver( driverClassName, serviceRegistry, url ); + if ( driver == null ) { + //we're hoping that the driver is already loaded + logAvailableDrivers(); + } + + final var connectionCreator = + getConnectionCreatorFactory( configuration, serviceRegistry ) + .create( + driver, + serviceRegistry, + url, + connectionProps, + autoCommit, + isolation, + initSql, + configuration + ); + + try ( var connection = connectionCreator.createConnection() ) { + dbInfo = new DatabaseConnectionInfoImpl( + DriverManagerConnectionProvider.class, + url, + getDriverName( connection ), + null, + SimpleDatabaseVersion.ZERO_VERSION, + hasSchema( connection ), + hasCatalog( connection ), + getSchema( connection ), + getCatalog( connection ), + Boolean.toString( autoCommit ), + isolation != null + ? toIsolationNiceName( isolation ) + : toIsolationNiceName( getIsolation( connection ) ), + minSize, + maxSize, + getFetchSize( connection ) + ); + if ( !connection.getAutoCommit() ) { + connection.rollback(); + } + } + catch (SQLException e) { + throw new JDBCConnectionException( "Could not create connection", e ); + } + + return new PooledConnections.Builder( connectionCreator ) + .autoCommit( autoCommit ) + .initialSize( initialSize ) + .minSize( minSize ) + .maxSize( maxSize ) + .validator( this ) + .build(); + } + + private static Driver loadDriver(String driverClassName, ServiceRegistry serviceRegistry, String url) { + if ( driverClassName != null ) { + return loadDriverIfPossible( driverClassName, serviceRegistry ); + } + else { + // try to guess the driver class from the JDBC URL + for ( var database: Database.values() ) { + if ( database.matchesUrl( url ) ) { + final String databaseDriverClassName = database.getDriverClassName( url ); + if ( databaseDriverClassName != null ) { + try { + return loadDriverIfPossible( databaseDriverClassName, serviceRegistry ); + } + catch (Exception e) { + // swallow it, since this was not an explicit setting by the user + } + } + } + } + return null; + } + } + + private static void logAvailableDrivers() { + ConnectionInfoLogger.INSTANCE.jdbcDriverNotSpecified(); + final var list = new StringBuilder(); + DriverManager.drivers() + .forEach( driver -> { + if ( !list.isEmpty() ) { + list.append( ", " ); + } + list.append( driver.getClass().getName() ); + } ); + ConnectionInfoLogger.INSTANCE.availableJdbcDrivers( list.toString() ); + } + + private static String jdbcUrl(Map configuration) { + final String url = (String) configuration.get( URL ); + if ( url == null ) { + throw new ConnectionProviderConfigurationException( "No JDBC URL specified by property '" + JAKARTA_JDBC_URL + "'" ); + } + return url; + } + + private static ConnectionCreatorFactory getConnectionCreatorFactory( + Map configuration, ServiceRegistry serviceRegistry) { + final Object connectionCreatorFactory = configuration.get( CONNECTION_CREATOR_FACTORY ); + final ConnectionCreatorFactory factory; + if ( connectionCreatorFactory instanceof ConnectionCreatorFactory instance ) { + factory = instance; + } + else if ( connectionCreatorFactory != null ) { + factory = loadConnectionCreatorFactory( connectionCreatorFactory.toString(), serviceRegistry ); + } + else { + factory = null; + } + return factory == null ? ConnectionCreatorFactoryImpl.INSTANCE : factory; + } + + private static Driver loadDriverIfPossible(String driverClassName, ServiceRegistry serviceRegistry) { + if ( driverClassName == null ) { + ConnectionInfoLogger.INSTANCE.debug( "No driver class specified" ); + return null; + } + else if ( serviceRegistry != null ) { + final Class driverClass = + serviceRegistry.requireService( ClassLoaderService.class ) + .classForName( driverClassName ); + try { + return driverClass.newInstance(); + } + catch ( Exception e ) { + throw new ServiceException( "Specified JDBC Driver " + driverClassName + " could not be loaded", e ); + } + } + else { + try { + return (Driver) Class.forName( driverClassName ).newInstance(); + } + catch (Exception e1) { + throw new ServiceException( "Specified JDBC Driver " + driverClassName + " could not be loaded", e1 ); + } + } + } + + private static ConnectionCreatorFactory loadConnectionCreatorFactory( + String connectionCreatorFactoryClassName, ServiceRegistry serviceRegistry) { + if ( connectionCreatorFactoryClassName == null ) { + ConnectionInfoLogger.INSTANCE.debug( "No connection creator factory class specified" ); + return null; + } + else if ( serviceRegistry != null ) { + final Class factoryClass = + serviceRegistry.requireService( ClassLoaderService.class ) + .classForName( connectionCreatorFactoryClassName ); + try { + return factoryClass.newInstance(); + } + catch ( Exception e ) { + throw new ServiceException( "Specified ConnectionCreatorFactory " + connectionCreatorFactoryClassName + + " could not be loaded", e ); + } + } + else { + try { + return (ConnectionCreatorFactory) Class.forName( connectionCreatorFactoryClassName ).newInstance(); + } + catch (Exception e1) { + throw new ServiceException( "Specified ConnectionCreatorFactory " + connectionCreatorFactoryClassName + + " could not be loaded", e1 ); + } + } + } + + + // use the pool ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + @Override + public Connection getConnection() throws SQLException { + if ( state == null ) { + throw new IllegalStateException( "Cannot get a connection as the driver manager is not properly initialized" ); + } + return state.getConnection(); + } + + @Override + public void closeConnection(Connection connection) throws SQLException { + if ( state == null ) { + throw new IllegalStateException( "Cannot close a connection as the driver manager is not properly initialized" ); + } + state.closeConnection( connection ); + } + + @Override + public boolean supportsAggressiveRelease() { + return false; + } + + @Override + public DatabaseConnectionInfo getDatabaseConnectionInfo(Dialect dialect) { + return new DatabaseConnectionInfoImpl( + DriverManagerConnectionProvider.class, + dbInfo.getJdbcUrl(), + dbInfo.getJdbcDriver(), + dialect.getClass(), + dialect.getVersion(), + dbInfo.hasSchema(), + dbInfo.hasCatalog(), + dbInfo.getSchema(), + dbInfo.getCatalog(), + dbInfo.getAutoCommitMode(), + dbInfo.getIsolationLevel(), + dbInfo.getPoolMinSize(), + dbInfo.getPoolMaxSize(), + dbInfo.getJdbcFetchSize() + ); + } + + @Override + public boolean isUnwrappableAs(Class unwrapType) { + return unwrapType.isAssignableFrom( DriverManagerConnectionProvider.class ); + } + + @Override + @SuppressWarnings( {"unchecked"}) + public T unwrap(Class unwrapType) { + if ( unwrapType.isAssignableFrom( DriverManagerConnectionProvider.class ) ) { + return (T) this; + } + else { + throw new UnknownUnwrapTypeException( unwrapType ); + } + } + + protected int getOpenConnections() { + return state.getPool().getOpenConnectionCount(); + } + + protected void validateConnectionsReturned() { + final int allocationCount = getOpenConnections(); + if ( allocationCount != 0 ) { + ConnectionInfoLogger.INSTANCE.error( "Connection leak detected: there are " + allocationCount + " unclosed connections"); + } + } + + protected void validateConnections(ConnectionValidator validator) { + state.validateConnections( validator ); + } + + // destroy the pool ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + + @Override + public void stop() { + if ( state != null ) { + state.stop(); + validateConnectionsReturned(); + } + } + + @Override + protected void finalize() throws Throwable { + if ( state != null ) { + state.stop(); + } + super.finalize(); + } + + @Override + public boolean isValid(Connection connection) throws SQLException { + return true; + } +} diff --git a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl.java b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl.java index 2450ccecf331..13fa1d73f041 100644 --- a/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl.java +++ b/hibernate-core/src/main/java/org/hibernate/engine/jdbc/connections/internal/DriverManagerConnectionProviderImpl.java @@ -4,369 +4,9 @@ */ package org.hibernate.engine.jdbc.connections.internal; -import java.sql.Connection; -import java.sql.Driver; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.util.Map; -import java.util.Properties; - -import org.hibernate.boot.registry.classloading.spi.ClassLoaderService; -import org.hibernate.dialect.Database; -import org.hibernate.dialect.Dialect; -import org.hibernate.dialect.SimpleDatabaseVersion; -import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; -import org.hibernate.engine.jdbc.connections.spi.ConnectionProviderConfigurationException; -import org.hibernate.engine.jdbc.connections.spi.DatabaseConnectionInfo; -import org.hibernate.exception.JDBCConnectionException; -import org.hibernate.service.ServiceRegistry; -import org.hibernate.service.UnknownUnwrapTypeException; -import org.hibernate.service.spi.Configurable; -import org.hibernate.service.spi.ServiceException; -import org.hibernate.service.spi.ServiceRegistryAwareService; -import org.hibernate.service.spi.ServiceRegistryImplementor; -import org.hibernate.service.spi.Stoppable; -import org.hibernate.internal.log.ConnectionInfoLogger; - -import static org.hibernate.cfg.JdbcSettings.AUTOCOMMIT; -import static org.hibernate.cfg.JdbcSettings.DRIVER; -import static org.hibernate.cfg.JdbcSettings.JAKARTA_JDBC_URL; -import static org.hibernate.cfg.JdbcSettings.POOL_SIZE; -import static org.hibernate.cfg.JdbcSettings.URL; -import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.extractIsolation; -import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.getConnectionProperties; -import static org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator.toIsolationNiceName; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getCatalog; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getDriverName; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getFetchSize; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getIsolation; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.getSchema; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.hasCatalog; -import static org.hibernate.engine.jdbc.connections.internal.DatabaseConnectionInfoImpl.hasSchema; -import static org.hibernate.internal.util.config.ConfigurationHelper.getBoolean; -import static org.hibernate.internal.util.config.ConfigurationHelper.getInt; -import static org.hibernate.internal.util.config.ConfigurationHelper.getLong; -import static org.hibernate.internal.util.config.ConfigurationHelper.getString; - /** - * A connection provider that uses the {@link DriverManager} directly to open connections and provides - * a very rudimentary connection pool. - * - * @implNote Not intended for use in production systems! - * - * @author Gavin King - * @author Steve Ebersole + * @deprecated Use {@link DriverManagerConnectionProvider} */ -public class DriverManagerConnectionProviderImpl - implements ConnectionProvider, Configurable, Stoppable, ServiceRegistryAwareService, ConnectionValidator { - - public static final String MIN_SIZE = "hibernate.connection.min_pool_size"; - public static final String INITIAL_SIZE = "hibernate.connection.initial_pool_size"; - // in TimeUnit.SECONDS - public static final String VALIDATION_INTERVAL = "hibernate.connection.pool_validation_interval"; - public static final String INIT_SQL ="hibernate.connection.init_sql"; - public static final String CONNECTION_CREATOR_FACTORY ="hibernate.connection.creator_factory_class"; - - private volatile PoolState state; - - private static DatabaseConnectionInfo dbInfo; - - // create the pool ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - private volatile ServiceRegistry serviceRegistry; - - @Override - public void injectServices(ServiceRegistryImplementor serviceRegistry) { - this.serviceRegistry = serviceRegistry; - } - - @Override - public void configure(Map configurationValues) { - ConnectionInfoLogger.INSTANCE.usingHibernateBuiltInConnectionPool(); - final PooledConnections pool = buildPool( configurationValues, serviceRegistry ); - final long validationInterval = getLong( VALIDATION_INTERVAL, configurationValues, 30 ); - state = new PoolState( pool, validationInterval ); - } - - private PooledConnections buildPool(Map configuration, ServiceRegistry serviceRegistry) { - // connection settings - final String url = jdbcUrl( configuration ); - final String driverClassName = getString( DRIVER, configuration ); - final Properties connectionProps = getConnectionProperties( configuration ); - final boolean autoCommit = getBoolean( AUTOCOMMIT, configuration ); // default autocommit to false - final Integer isolation = extractIsolation( configuration ); - final String initSql = getString( INIT_SQL, configuration ); - - // pool settings - final int minSize = getInt( MIN_SIZE, configuration, 1 ); - final int maxSize = getInt( POOL_SIZE, configuration, 20 ); - final int initialSize = getInt( INITIAL_SIZE, configuration, minSize ); - - final Driver driver = loadDriver( driverClassName, serviceRegistry, url ); - if ( driver == null ) { - //we're hoping that the driver is already loaded - logAvailableDrivers(); - } - - final var connectionCreator = - getConnectionCreatorFactory( configuration, serviceRegistry ) - .create( - driver, - serviceRegistry, - url, - connectionProps, - autoCommit, - isolation, - initSql, - configuration - ); - - try ( var connection = connectionCreator.createConnection() ) { - dbInfo = new DatabaseConnectionInfoImpl( - DriverManagerConnectionProviderImpl.class, - url, - getDriverName( connection ), - null, - SimpleDatabaseVersion.ZERO_VERSION, - hasSchema( connection ), - hasCatalog( connection ), - getSchema( connection ), - getCatalog( connection ), - Boolean.toString( autoCommit ), - isolation != null - ? toIsolationNiceName( isolation ) - : toIsolationNiceName( getIsolation( connection ) ), - minSize, - maxSize, - getFetchSize( connection ) - ); - if ( !connection.getAutoCommit() ) { - connection.rollback(); - } - } - catch (SQLException e) { - throw new JDBCConnectionException( "Could not create connection", e ); - } - - return new PooledConnections.Builder( connectionCreator ) - .autoCommit( autoCommit ) - .initialSize( initialSize ) - .minSize( minSize ) - .maxSize( maxSize ) - .validator( this ) - .build(); - } - - private static Driver loadDriver(String driverClassName, ServiceRegistry serviceRegistry, String url) { - if ( driverClassName != null ) { - return loadDriverIfPossible( driverClassName, serviceRegistry ); - } - else { - // try to guess the driver class from the JDBC URL - for ( var database: Database.values() ) { - if ( database.matchesUrl( url ) ) { - final String databaseDriverClassName = database.getDriverClassName( url ); - if ( databaseDriverClassName != null ) { - try { - return loadDriverIfPossible( databaseDriverClassName, serviceRegistry ); - } - catch (Exception e) { - // swallow it, since this was not an explicit setting by the user - } - } - } - } - return null; - } - } - - private static void logAvailableDrivers() { - ConnectionInfoLogger.INSTANCE.jdbcDriverNotSpecified(); - final var list = new StringBuilder(); - DriverManager.drivers() - .forEach( driver -> { - if ( !list.isEmpty() ) { - list.append( ", " ); - } - list.append( driver.getClass().getName() ); - } ); - ConnectionInfoLogger.INSTANCE.availableJdbcDrivers( list.toString() ); - } - - private static String jdbcUrl(Map configuration) { - final String url = (String) configuration.get( URL ); - if ( url == null ) { - throw new ConnectionProviderConfigurationException( "No JDBC URL specified by property '" + JAKARTA_JDBC_URL + "'" ); - } - return url; - } - - private static ConnectionCreatorFactory getConnectionCreatorFactory( - Map configuration, ServiceRegistry serviceRegistry) { - final Object connectionCreatorFactory = configuration.get( CONNECTION_CREATOR_FACTORY ); - final ConnectionCreatorFactory factory; - if ( connectionCreatorFactory instanceof ConnectionCreatorFactory instance ) { - factory = instance; - } - else if ( connectionCreatorFactory != null ) { - factory = loadConnectionCreatorFactory( connectionCreatorFactory.toString(), serviceRegistry ); - } - else { - factory = null; - } - return factory == null ? ConnectionCreatorFactoryImpl.INSTANCE : factory; - } - - private static Driver loadDriverIfPossible(String driverClassName, ServiceRegistry serviceRegistry) { - if ( driverClassName == null ) { - ConnectionInfoLogger.INSTANCE.debug( "No driver class specified" ); - return null; - } - else if ( serviceRegistry != null ) { - final Class driverClass = - serviceRegistry.requireService( ClassLoaderService.class ) - .classForName( driverClassName ); - try { - return driverClass.newInstance(); - } - catch ( Exception e ) { - throw new ServiceException( "Specified JDBC Driver " + driverClassName + " could not be loaded", e ); - } - } - else { - try { - return (Driver) Class.forName( driverClassName ).newInstance(); - } - catch (Exception e1) { - throw new ServiceException( "Specified JDBC Driver " + driverClassName + " could not be loaded", e1 ); - } - } - } - - private static ConnectionCreatorFactory loadConnectionCreatorFactory( - String connectionCreatorFactoryClassName, ServiceRegistry serviceRegistry) { - if ( connectionCreatorFactoryClassName == null ) { - ConnectionInfoLogger.INSTANCE.debug( "No connection creator factory class specified" ); - return null; - } - else if ( serviceRegistry != null ) { - final Class factoryClass = - serviceRegistry.requireService( ClassLoaderService.class ) - .classForName( connectionCreatorFactoryClassName ); - try { - return factoryClass.newInstance(); - } - catch ( Exception e ) { - throw new ServiceException( "Specified ConnectionCreatorFactory " + connectionCreatorFactoryClassName - + " could not be loaded", e ); - } - } - else { - try { - return (ConnectionCreatorFactory) Class.forName( connectionCreatorFactoryClassName ).newInstance(); - } - catch (Exception e1) { - throw new ServiceException( "Specified ConnectionCreatorFactory " + connectionCreatorFactoryClassName - + " could not be loaded", e1 ); - } - } - } - - - // use the pool ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - @Override - public Connection getConnection() throws SQLException { - if ( state == null ) { - throw new IllegalStateException( "Cannot get a connection as the driver manager is not properly initialized" ); - } - return state.getConnection(); - } - - @Override - public void closeConnection(Connection connection) throws SQLException { - if ( state == null ) { - throw new IllegalStateException( "Cannot close a connection as the driver manager is not properly initialized" ); - } - state.closeConnection( connection ); - } - - @Override - public boolean supportsAggressiveRelease() { - return false; - } - - @Override - public DatabaseConnectionInfo getDatabaseConnectionInfo(Dialect dialect) { - return new DatabaseConnectionInfoImpl( - DriverManagerConnectionProviderImpl.class, - dbInfo.getJdbcUrl(), - dbInfo.getJdbcDriver(), - dialect.getClass(), - dialect.getVersion(), - dbInfo.hasSchema(), - dbInfo.hasCatalog(), - dbInfo.getSchema(), - dbInfo.getCatalog(), - dbInfo.getAutoCommitMode(), - dbInfo.getIsolationLevel(), - dbInfo.getPoolMinSize(), - dbInfo.getPoolMaxSize(), - dbInfo.getJdbcFetchSize() - ); - } - - @Override - public boolean isUnwrappableAs(Class unwrapType) { - return unwrapType.isAssignableFrom( DriverManagerConnectionProviderImpl.class ); - } - - @Override - @SuppressWarnings( {"unchecked"}) - public T unwrap(Class unwrapType) { - if ( unwrapType.isAssignableFrom( DriverManagerConnectionProviderImpl.class ) ) { - return (T) this; - } - else { - throw new UnknownUnwrapTypeException( unwrapType ); - } - } - - protected int getOpenConnections() { - return state.getPool().getOpenConnectionCount(); - } - - protected void validateConnectionsReturned() { - final int allocationCount = getOpenConnections(); - if ( allocationCount != 0 ) { - ConnectionInfoLogger.INSTANCE.error( "Connection leak detected: there are " + allocationCount + " unclosed connections"); - } - } - - protected void validateConnections(ConnectionValidator validator) { - state.validateConnections( validator ); - } - - // destroy the pool ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - - @Override - public void stop() { - if ( state != null ) { - state.stop(); - validateConnectionsReturned(); - } - } - - @Override - protected void finalize() throws Throwable { - if ( state != null ) { - state.stop(); - } - super.finalize(); - } - - @Override - public boolean isValid(Connection connection) throws SQLException { - return true; - } +@Deprecated(since = "7.1", forRemoval = true) +public class DriverManagerConnectionProviderImpl extends DriverManagerConnectionProvider { } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitInfoTests.java b/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitInfoTests.java index 5f206c4695ef..4d1133b43ac2 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitInfoTests.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitInfoTests.java @@ -12,7 +12,7 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.dialect.H2Dialect; -import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.jpa.HibernatePersistenceProvider; @@ -58,8 +58,8 @@ public DataSource getNonJtaDataSource() { final ConnectionProvider connectionProvider = emf.unwrap( SessionFactoryImplementor.class ) .getServiceRegistry() .getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DatasourceConnectionProviderImpl.class ) ); - final DatasourceConnectionProviderImpl dsCp = (DatasourceConnectionProviderImpl) connectionProvider; + assertThat( connectionProvider, instanceOf( DataSourceConnectionProvider.class ) ); + final DataSourceConnectionProvider dsCp = (DataSourceConnectionProvider) connectionProvider; assertThat( dsCp.getDataSource(), is( puDataSource ) ); // now let's check that it is exposed via the EMF properties @@ -92,8 +92,8 @@ public DataSource getJtaDataSource() { final ConnectionProvider connectionProvider = emf.unwrap( SessionFactoryImplementor.class ) .getServiceRegistry() .getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DatasourceConnectionProviderImpl.class ) ); - final DatasourceConnectionProviderImpl dsCp = (DatasourceConnectionProviderImpl) connectionProvider; + assertThat( connectionProvider, instanceOf( DataSourceConnectionProvider.class ) ); + final DataSourceConnectionProvider dsCp = (DataSourceConnectionProvider) connectionProvider; assertThat( dsCp.getDataSource(), is( puDataSource ) ); // now let's check that it is exposed via the EMF properties diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitOverridesTests.java b/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitOverridesTests.java index 904404f3bce1..00abd23f5ae4 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitOverridesTests.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/bootstrap/jpa/PersistenceUnitOverridesTests.java @@ -16,8 +16,8 @@ import org.hibernate.dialect.Dialect; import org.hibernate.dialect.H2Dialect; import org.hibernate.dialect.SimpleDatabaseVersion; -import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.jpa.HibernatePersistenceProvider; @@ -106,8 +106,8 @@ public void testPassingIntegrationJtaDataSourceOverrideForJpaJdbcSettings() { final ConnectionProvider connectionProvider = emf.unwrap( SessionFactoryImplementor.class ) .getServiceRegistry() .getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DatasourceConnectionProviderImpl.class ) ); - final DatasourceConnectionProviderImpl dsCp = (DatasourceConnectionProviderImpl) connectionProvider; + assertThat( connectionProvider, instanceOf( DataSourceConnectionProvider.class ) ); + final DataSourceConnectionProvider dsCp = (DataSourceConnectionProvider) connectionProvider; assertThat( dsCp.getDataSource(), is( integrationDataSource ) ); // now let's check that it is exposed via the EMF properties @@ -190,7 +190,7 @@ public Properties getProperties() { final ConnectionProvider connectionProvider = emf.unwrap( SessionFactoryImplementor.class ) .getServiceRegistry() .getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DriverManagerConnectionProviderImpl.class ) ); + assertThat( connectionProvider, instanceOf( DriverManagerConnectionProvider.class ) ); } finally { emf.close(); @@ -243,7 +243,7 @@ public DataSource getJtaDataSource() { final ConnectionProvider connectionProvider = emf.unwrap( SessionFactoryImplementor.class ) .getServiceRegistry() .getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DriverManagerConnectionProviderImpl.class ) ); + assertThat( connectionProvider, instanceOf( DriverManagerConnectionProvider.class ) ); } finally { emf.close(); @@ -298,9 +298,9 @@ public DataSource getJtaDataSource() { final ConnectionProvider connectionProvider = emf.unwrap( SessionFactoryImplementor.class ) .getServiceRegistry() .getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DatasourceConnectionProviderImpl.class ) ); + assertThat( connectionProvider, instanceOf( DataSourceConnectionProvider.class ) ); - final DatasourceConnectionProviderImpl datasourceConnectionProvider = (DatasourceConnectionProviderImpl) connectionProvider; + final DataSourceConnectionProvider datasourceConnectionProvider = (DataSourceConnectionProvider) connectionProvider; assertThat( datasourceConnectionProvider.getDataSource(), is( integrationDataSource ) ); } finally { @@ -345,9 +345,9 @@ public DataSource getNonJtaDataSource() { final SessionFactoryImplementor sessionFactory = emf.unwrap( SessionFactoryImplementor.class ); final ConnectionProvider connectionProvider = sessionFactory.getServiceRegistry().getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DatasourceConnectionProviderImpl.class ) ); + assertThat( connectionProvider, instanceOf( DataSourceConnectionProvider.class ) ); - final DatasourceConnectionProviderImpl dsProvider = (DatasourceConnectionProviderImpl) connectionProvider; + final DataSourceConnectionProvider dsProvider = (DataSourceConnectionProvider) connectionProvider; assertThat( dsProvider.getDataSource(), is( override ) ); } finally { @@ -374,7 +374,7 @@ public DataSource getNonJtaDataSource() { integrationSettings.put( AvailableSettings.JPA_JDBC_URL, ConnectionProviderBuilder.URL ); integrationSettings.put( AvailableSettings.JPA_JDBC_USER, ConnectionProviderBuilder.USER ); integrationSettings.put( AvailableSettings.JPA_JDBC_PASSWORD, ConnectionProviderBuilder.PASS ); - integrationSettings.put( DriverManagerConnectionProviderImpl.INIT_SQL, "" ); + integrationSettings.put( DriverManagerConnectionProvider.INIT_SQL, "" ); final PersistenceProvider provider = new HibernatePersistenceProvider(); @@ -387,7 +387,7 @@ public DataSource getNonJtaDataSource() { final SessionFactoryImplementor sessionFactory = emf.unwrap( SessionFactoryImplementor.class ); final ConnectionProvider connectionProvider = sessionFactory.getServiceRegistry().getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DriverManagerConnectionProviderImpl.class ) ); + assertThat( connectionProvider, instanceOf( DriverManagerConnectionProvider.class ) ); } finally { emf.close(); @@ -413,7 +413,7 @@ public DataSource getNonJtaDataSource() { integrationSettings.put( AvailableSettings.JAKARTA_JDBC_URL, ConnectionProviderBuilder.URL ); integrationSettings.put( AvailableSettings.JAKARTA_JDBC_USER, ConnectionProviderBuilder.USER ); integrationSettings.put( AvailableSettings.JAKARTA_JDBC_PASSWORD, ConnectionProviderBuilder.PASS ); - integrationSettings.put( DriverManagerConnectionProviderImpl.INIT_SQL, "" ); + integrationSettings.put( DriverManagerConnectionProvider.INIT_SQL, "" ); final PersistenceProvider provider = new HibernatePersistenceProvider(); @@ -426,7 +426,7 @@ public DataSource getNonJtaDataSource() { final SessionFactoryImplementor sessionFactory = emf.unwrap( SessionFactoryImplementor.class ); final ConnectionProvider connectionProvider = sessionFactory.getServiceRegistry().getService( ConnectionProvider.class ); - assertThat( connectionProvider, instanceOf( DriverManagerConnectionProviderImpl.class ) ); + assertThat( connectionProvider, instanceOf( DriverManagerConnectionProvider.class ) ); } finally { emf.close(); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/cache/SingleRegisteredProviderTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/cache/SingleRegisteredProviderTest.java index 1657b083db24..bea4b7d4f332 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/cache/SingleRegisteredProviderTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/cache/SingleRegisteredProviderTest.java @@ -13,7 +13,7 @@ import org.hibernate.cache.internal.NoCachingRegionFactory; import org.hibernate.cache.spi.RegionFactory; import org.hibernate.cfg.AvailableSettings; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.testing.junit4.BaseUnitTestCase; @@ -91,14 +91,14 @@ public void testConnectionsRegistered() { bsr.getService( StrategySelector.class ).registerStrategyImplementor( ConnectionProvider.class, "testing", - DriverManagerConnectionProviderImpl.class + DriverManagerConnectionProvider.class ); final StandardServiceRegistry ssr = ServiceRegistryUtil.serviceRegistryBuilder( bsr ).build(); final ConnectionProvider configuredProvider = ssr.getService( ConnectionProvider.class ); - assertThat( configuredProvider, instanceOf( DriverManagerConnectionProviderImpl.class ) ); + assertThat( configuredProvider, instanceOf( DriverManagerConnectionProvider.class ) ); } } } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderTransactionIsolationConfigTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderTransactionIsolationConfigTest.java index 99f4b7198225..2526bf217593 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderTransactionIsolationConfigTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderTransactionIsolationConfigTest.java @@ -4,7 +4,7 @@ */ package org.hibernate.orm.test.connection; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.testing.common.connections.BaseTransactionIsolationConfigTest; @@ -21,6 +21,6 @@ public class DriverManagerConnectionProviderTransactionIsolationConfigTest extends BaseTransactionIsolationConfigTest { @Override protected ConnectionProvider getConnectionProviderUnderTest() { - return new DriverManagerConnectionProviderImpl(); + return new DriverManagerConnectionProvider(); } } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderValidationConfigTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderValidationConfigTest.java index 89a3c393ce54..df8d7b4d8db5 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderValidationConfigTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/connection/DriverManagerConnectionProviderValidationConfigTest.java @@ -9,7 +9,7 @@ import jakarta.persistence.Id; import org.hibernate.cfg.AvailableSettings; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.testing.orm.junit.EntityManagerFactoryScope; import org.hibernate.testing.orm.junit.Jpa; @@ -27,7 +27,7 @@ integrationSettings = { // Force a non-shared connection provider to avoid re-creation of the shared pool @Setting(name = AvailableSettings.CONNECTION_PROVIDER, value = ""), - @Setting(name = DriverManagerConnectionProviderImpl.VALIDATION_INTERVAL, value = "1") + @Setting(name = DriverManagerConnectionProvider.VALIDATION_INTERVAL, value = "1") } ) public class DriverManagerConnectionProviderValidationConfigTest { diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/datasource/TestDataSourceConnectionProvider.java b/hibernate-core/src/test/java/org/hibernate/orm/test/datasource/TestDataSourceConnectionProvider.java index e28d11f7ab47..31c4c59db798 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/datasource/TestDataSourceConnectionProvider.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/datasource/TestDataSourceConnectionProvider.java @@ -4,8 +4,8 @@ */ package org.hibernate.orm.test.datasource; -import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.service.spi.ServiceRegistryAwareService; import org.hibernate.service.spi.ServiceRegistryImplementor; @@ -19,10 +19,10 @@ @SuppressWarnings( "unused" ) // used by DatasourceTest in this package public class TestDataSourceConnectionProvider - extends DatasourceConnectionProviderImpl + extends DataSourceConnectionProvider implements ServiceRegistryAwareService { - final DriverManagerConnectionProviderImpl delegate = new DriverManagerConnectionProviderImpl(); + final DriverManagerConnectionProvider delegate = new DriverManagerConnectionProvider(); @Override public void configure(Map configuration) { diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/AnsiNullTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/AnsiNullTest.java index 050dff360e5a..92e03dbb2f7b 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/AnsiNullTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/AnsiNullTest.java @@ -7,7 +7,7 @@ import jakarta.persistence.Entity; import jakarta.persistence.Id; import org.hibernate.dialect.SybaseASEDialect; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.orm.test.length.WithLongStrings; import org.hibernate.testing.orm.junit.DomainModel; import org.hibernate.testing.orm.junit.Jira; @@ -65,7 +65,7 @@ void tearDown(SessionFactoryScope scope) { @RequiresDialect(value = SybaseASEDialect.class) @DomainModel(annotatedClasses = { AnsiNullTest.Book.class, WithLongStrings.class }) @SessionFactory - @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProviderImpl.INIT_SQL, value = "set ansinull on")} ) + @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProvider.INIT_SQL, value = "set ansinull on")} ) public void testWithAnsiNullOn(SessionFactoryScope scope) { scope.inTransaction( session -> { @@ -109,7 +109,7 @@ public void testWithAnsiNullOn(SessionFactoryScope scope) { @RequiresDialect(value = SybaseASEDialect.class) @DomainModel(annotatedClasses = { AnsiNullTest.Book.class, WithLongStrings.class }) @SessionFactory - @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProviderImpl.INIT_SQL, value = "set ansinull on")} ) + @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProvider.INIT_SQL, value = "set ansinull on")} ) public void testLOBWithAnsiNullOn(SessionFactoryScope scope) { scope.inTransaction( session -> { @@ -152,7 +152,7 @@ public void testLOBWithAnsiNullOn(SessionFactoryScope scope) { @RequiresDialect(value = SybaseASEDialect.class) @DomainModel(annotatedClasses = { AnsiNullTest.Book.class, WithLongStrings.class }) @SessionFactory - @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProviderImpl.INIT_SQL, value = "set ansinull off")} ) + @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProvider.INIT_SQL, value = "set ansinull off")} ) public void testWithAnsiNullOff(SessionFactoryScope scope) { scope.inTransaction( session -> { @@ -195,7 +195,7 @@ public void testWithAnsiNullOff(SessionFactoryScope scope) { @RequiresDialect(value = SybaseASEDialect.class) @DomainModel(annotatedClasses = { AnsiNullTest.Book.class, WithLongStrings.class }) @SessionFactory - @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProviderImpl.INIT_SQL, value = "set ansinull off")} ) + @ServiceRegistry( settings = {@Setting(name = DriverManagerConnectionProvider.INIT_SQL, value = "set ansinull off")} ) public void testLOBWithAnsiNullOff(SessionFactoryScope scope) { scope.inTransaction( session -> { diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SQLServerDialectTempTableCollationTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SQLServerDialectTempTableCollationTest.java index e66b2b20d251..a351e0d007e7 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SQLServerDialectTempTableCollationTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SQLServerDialectTempTableCollationTest.java @@ -21,7 +21,7 @@ import org.hibernate.testing.RequiresDialect; import org.hibernate.testing.orm.junit.JiraKey; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; import org.hibernate.testing.junit4.BaseCoreFunctionalTestCase; import org.hibernate.testing.transaction.TransactionUtil; import org.junit.Assert; @@ -83,7 +83,7 @@ protected void releaseSessionFactory() { } } // The alter database calls could lead to issues with existing connections, so we reset the shared pool here - SharedDriverManagerConnectionProviderImpl.getInstance().reset(); + SharedDriverManagerConnectionProvider.getInstance().reset(); } @Override diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SequenceInformationMariaDBTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SequenceInformationMariaDBTest.java index a4db1dca655c..7a6f4ae7b712 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SequenceInformationMariaDBTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/dialect/functional/SequenceInformationMariaDBTest.java @@ -18,7 +18,7 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; import org.hibernate.dialect.MariaDBDialect; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.testing.orm.junit.JiraKey; import org.hibernate.testing.orm.junit.EntityManagerFactoryScope; @@ -48,11 +48,11 @@ ) public class SequenceInformationMariaDBTest { - private DriverManagerConnectionProviderImpl connectionProvider; + private DriverManagerConnectionProvider connectionProvider; @BeforeAll public void init() { - connectionProvider = new DriverManagerConnectionProviderImpl(); + connectionProvider = new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map( Environment.getProperties() ) ); try(Connection connection = connectionProvider.getConnection(); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/id/sequence/PooledWithCustomNamingStrategyTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/id/sequence/PooledWithCustomNamingStrategyTest.java index 9fbc0a918c98..c9ecf985863b 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/id/sequence/PooledWithCustomNamingStrategyTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/id/sequence/PooledWithCustomNamingStrategyTest.java @@ -17,7 +17,7 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; import org.hibernate.dialect.H2Dialect; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.engine.jdbc.env.spi.JdbcEnvironment; import org.hibernate.engine.spi.SessionFactoryImplementor; @@ -91,7 +91,7 @@ public void testRightIncrementSize() { @BeforeAll public void setUp() { - final DriverManagerConnectionProviderImpl provider = new DriverManagerConnectionProviderImpl(); + final DriverManagerConnectionProvider provider = new DriverManagerConnectionProvider(); provider.configure( PropertiesHelper.map( Environment.getProperties() ) ); connectionProvider = provider; try (final Connection connection = connectionProvider.getConnection(); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/jakarta/JakartaSchemaToolingTests.java b/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/jakarta/JakartaSchemaToolingTests.java index 6d0fa83c5699..d3c64b8f8f41 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/jakarta/JakartaSchemaToolingTests.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/jakarta/JakartaSchemaToolingTests.java @@ -11,7 +11,7 @@ import org.hibernate.SessionFactoryObserver; import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.spi.SessionFactoryImplementor; import org.hibernate.jpa.boot.spi.Bootstrap; import org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder; @@ -147,10 +147,10 @@ private SessionFactoryImplementor buildSessionFactory(Object... settingPairs) { final Properties settings = new Properties(); settings.setProperty( AvailableSettings.AUTOCOMMIT, "false" ); settings.setProperty( AvailableSettings.POOL_SIZE, "5" ); - settings.setProperty( DriverManagerConnectionProviderImpl.INITIAL_SIZE, "0" ); + settings.setProperty( DriverManagerConnectionProvider.INITIAL_SIZE, "0" ); settings.setProperty( - DriverManagerConnectionProviderImpl.INIT_SQL, - Environment.getProperties().getProperty( DriverManagerConnectionProviderImpl.INIT_SQL ) + DriverManagerConnectionProvider.INIT_SQL, + Environment.getProperties().getProperty( DriverManagerConnectionProvider.INIT_SQL ) ); applyToProperties( settings, settingPairs ); ServiceRegistryUtil.applySettings( settings ); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/transaction/TransactionCommitFailureTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/transaction/TransactionCommitFailureTest.java index 810c35d1a8eb..d52f72ab2925 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/transaction/TransactionCommitFailureTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/jpa/transaction/TransactionCommitFailureTest.java @@ -19,7 +19,7 @@ import org.hibernate.jpa.boot.spi.Bootstrap; import org.hibernate.testing.jdbc.ConnectionProviderDelegate; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; import org.hibernate.testing.orm.jpa.PersistenceUnitDescriptorAdapter; import org.hibernate.orm.test.jpa.SettingsGenerator; @@ -123,7 +123,7 @@ private Map basicSettings() { public static class ProxyConnectionProvider extends ConnectionProviderDelegate { public ProxyConnectionProvider() { - setConnectionProvider( SharedDriverManagerConnectionProviderImpl.getInstance() ); + setConnectionProvider( SharedDriverManagerConnectionProvider.getInstance() ); } @Override diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/AbstractMultiTenancyTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/AbstractMultiTenancyTest.java index 5c3986492951..1734e80f4660 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/AbstractMultiTenancyTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/AbstractMultiTenancyTest.java @@ -23,7 +23,7 @@ import org.hibernate.boot.SessionFactoryBuilder; import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.query.Query; @@ -102,8 +102,8 @@ protected void registerConnectionProvider(String tenantIdentifier) { properties.put(Environment.URL, tenantUrl(properties.getProperty(Environment.URL), tenantIdentifier)); - DriverManagerConnectionProviderImpl connectionProvider = - new DriverManagerConnectionProviderImpl(); + DriverManagerConnectionProvider connectionProvider = + new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map(properties) ); connectionProviderMap.put(tenantIdentifier, connectionProvider); } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/DatabaseTimeZoneMultiTenancyTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/DatabaseTimeZoneMultiTenancyTest.java index 79c8db9e9905..4ecf1303b11f 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/DatabaseTimeZoneMultiTenancyTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/multitenancy/DatabaseTimeZoneMultiTenancyTest.java @@ -29,7 +29,7 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; import org.hibernate.dialect.H2Dialect; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.service.spi.ServiceRegistryImplementor; @@ -104,8 +104,8 @@ protected void registerConnectionProvider(String tenantIdentifier, TimeZone time tenantUrl( properties.getProperty(Environment.URL), tenantIdentifier ) ); - DriverManagerConnectionProviderImpl connectionProvider = - new DriverManagerConnectionProviderImpl(); + DriverManagerConnectionProvider connectionProvider = + new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map(properties) ); connectionProviderMap.put(tenantIdentifier, connectionProvider); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/querycache/QueryCacheTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/querycache/QueryCacheTest.java index a4dc2ab2364b..0e201ca828de 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/querycache/QueryCacheTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/querycache/QueryCacheTest.java @@ -28,7 +28,7 @@ import org.hibernate.type.Type; import org.hibernate.testing.jdbc.ConnectionProviderDelegate; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; import org.hibernate.testing.orm.junit.DomainModel; import org.hibernate.testing.orm.junit.JiraKey; import org.hibernate.testing.orm.junit.ServiceRegistry; @@ -805,7 +805,7 @@ public static class ProxyConnectionProvider extends ConnectionProviderDelegate { private static final ThreadLocal CONNECTION_RETRIEVAL_EXCEPTION_TO_THROW = new ThreadLocal<>(); public ProxyConnectionProvider() { - setConnectionProvider( SharedDriverManagerConnectionProviderImpl.getInstance() ); + setConnectionProvider( SharedDriverManagerConnectionProvider.getInstance() ); } static void runWithConnectionRetrievalFailure(SQLException exceptionToThrow, Runnable runnable) { diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/schemaupdate/ConnectionsReleaseTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/schemaupdate/ConnectionsReleaseTest.java index f0b1747ee795..3fbde03955f2 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/schemaupdate/ConnectionsReleaseTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/schemaupdate/ConnectionsReleaseTest.java @@ -20,7 +20,7 @@ import org.hibernate.tool.schema.TargetType; import org.hibernate.testing.orm.junit.JiraKey; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; import org.hibernate.testing.junit4.BaseUnitTestCase; import org.hibernate.testing.orm.junit.RequiresDialect; import org.hibernate.testing.util.ServiceRegistryUtil; @@ -40,11 +40,11 @@ public class ConnectionsReleaseTest extends BaseUnitTestCase { private StandardServiceRegistry ssr; private MetadataImplementor metadata; - private SharedDriverManagerConnectionProviderImpl connectionProvider; + private SharedDriverManagerConnectionProvider connectionProvider; @Before public void setUp() { - connectionProvider = SharedDriverManagerConnectionProviderImpl.getInstance(); + connectionProvider = SharedDriverManagerConnectionProvider.getInstance(); ssr = ServiceRegistryUtil.serviceRegistryBuilder() .addService( ConnectionProvider.class, connectionProvider ) diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/service/ServiceBootstrappingTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/service/ServiceBootstrappingTest.java index 7f0a8ae19695..693140742dc0 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/service/ServiceBootstrappingTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/service/ServiceBootstrappingTest.java @@ -10,7 +10,7 @@ import org.hibernate.boot.registry.internal.StandardServiceRegistryImpl; import org.hibernate.cfg.Environment; import org.hibernate.dialect.H2Dialect; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.internal.UserSuppliedConnectionProviderImpl; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.ConnectionProviderJdbcConnectionAccess; @@ -50,7 +50,7 @@ public void testBasicBuild() throws Exception{ ConnectionProviderJdbcConnectionAccess.class, jdbcServices.getBootstrapJdbcConnectionAccess() ); - assertTrue( connectionAccess.getConnectionProvider().isUnwrappableAs( DriverManagerConnectionProviderImpl.class ) ); + assertTrue( connectionAccess.getConnectionProvider().isUnwrappableAs( DriverManagerConnectionProvider.class ) ); assertFalse( jdbcServices.getSqlStatementLogger().isLogToStdout() ); } finally { @@ -74,7 +74,7 @@ public void testBuildWithLogging() { ConnectionProviderJdbcConnectionAccess.class, jdbcServices.getBootstrapJdbcConnectionAccess() ); - assertTrue( connectionAccess.getConnectionProvider().isUnwrappableAs( DriverManagerConnectionProviderImpl.class ) ); + assertTrue( connectionAccess.getConnectionProvider().isUnwrappableAs( DriverManagerConnectionProvider.class ) ); assertTrue( jdbcServices.getSqlStatementLogger().isLogToStdout() ); } finally { @@ -93,7 +93,7 @@ public void testBuildWithServiceOverride() { ConnectionProviderJdbcConnectionAccess.class, jdbcServices.getBootstrapJdbcConnectionAccess() ); - assertTrue( connectionAccess.getConnectionProvider().isUnwrappableAs( DriverManagerConnectionProviderImpl.class ) ); + assertTrue( connectionAccess.getConnectionProvider().isUnwrappableAs( DriverManagerConnectionProvider.class ) ); } finally { serviceRegistry.destroy(); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/timezones/UTCNormalizedInstantTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/timezones/UTCNormalizedInstantTest.java index 1b1141031781..78f1129bb945 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/timezones/UTCNormalizedInstantTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/timezones/UTCNormalizedInstantTest.java @@ -16,7 +16,7 @@ import org.hibernate.testing.orm.junit.SkipForDialect; import org.hibernate.type.descriptor.DateTimeUtils; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; import org.hibernate.testing.orm.junit.DomainModel; import org.hibernate.testing.orm.junit.SessionFactory; import org.hibernate.testing.orm.junit.SessionFactoryScope; @@ -71,7 +71,7 @@ else if ( dialect.getDefaultTimestampPrecision() == 6 ) { @Test void testWithSystemTimeZone(SessionFactoryScope scope) { final TimeZone timeZoneBefore = TimeZone.getDefault(); TimeZone.setDefault( TimeZone.getTimeZone( "CET" ) ); - SharedDriverManagerConnectionProviderImpl.getInstance().onDefaultTimeZoneChange(); + SharedDriverManagerConnectionProvider.getInstance().onDefaultTimeZoneChange(); try { final Instant instant; final Dialect dialect = scope.getSessionFactory().getJdbcServices().getDialect(); @@ -109,7 +109,7 @@ else if ( dialect.getDefaultTimestampPrecision() == 6 ) { } finally { TimeZone.setDefault( timeZoneBefore ); - SharedDriverManagerConnectionProviderImpl.getInstance().onDefaultTimeZoneChange(); + SharedDriverManagerConnectionProvider.getInstance().onDefaultTimeZoneChange(); } } diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplConnectionTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplConnectionTest.java index dcfb39e19fe0..95f389cd3198 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplConnectionTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplConnectionTest.java @@ -24,7 +24,7 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.dialect.H2Dialect; import org.hibernate.engine.config.spi.ConfigurationService; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.internal.CoreMessageLogger; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.service.spi.ServiceRegistryImplementor; @@ -77,14 +77,14 @@ public class IndividuallySchemaValidatorImplConnectionTest extends BaseUnitTestC private ExecutionOptions executionOptions; - private DriverManagerConnectionProviderImpl connectionProvider; + private DriverManagerConnectionProvider connectionProvider; private Connection connection; @Before public void setUp() throws Exception { connectionProvider = - new DriverManagerConnectionProviderImpl(); + new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map( properties() ) ); connection = connectionProvider.getConnection(); @@ -142,8 +142,8 @@ public void testMissingEntityContainsUnqualifiedEntityName() throws Exception { .applySettings( settings ) .build(); - DriverManagerConnectionProviderImpl connectionProvider = - new DriverManagerConnectionProviderImpl(); + DriverManagerConnectionProvider connectionProvider = + new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map( properties() ) ); final GenerationTargetToDatabase schemaGenerator = new GenerationTargetToDatabase( diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplTest.java index 58f14a0f7d31..e1b09937cb7c 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/IndividuallySchemaValidatorImplTest.java @@ -21,7 +21,7 @@ import org.hibernate.boot.spi.MetadataImplementor; import org.hibernate.dialect.H2Dialect; import org.hibernate.engine.config.spi.ConfigurationService; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.internal.CoreMessageLogger; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.service.spi.ServiceRegistryImplementor; @@ -157,8 +157,8 @@ public void testMissingColumn() { .applySettings( settings ) .build(); - DriverManagerConnectionProviderImpl connectionProvider = - new DriverManagerConnectionProviderImpl(); + DriverManagerConnectionProvider connectionProvider = + new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map( properties() ) ); final GenerationTargetToDatabase schemaGenerator = new GenerationTargetToDatabase( @@ -214,8 +214,8 @@ public void testMismatchColumnType() { .applySettings( settings ) .build(); - DriverManagerConnectionProviderImpl connectionProvider = - new DriverManagerConnectionProviderImpl(); + DriverManagerConnectionProvider connectionProvider = + new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map( properties() ) ); final GenerationTargetToDatabase schemaGenerator = new GenerationTargetToDatabase( diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/MySQLColumnValidationTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/MySQLColumnValidationTest.java index be6f9b4925b3..c72b38a1a1e9 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/MySQLColumnValidationTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/tool/schema/MySQLColumnValidationTest.java @@ -15,7 +15,7 @@ import org.hibernate.cfg.Environment; import org.hibernate.dialect.MySQLDialect; import org.hibernate.engine.config.spi.ConfigurationService; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.tool.schema.internal.DefaultSchemaFilter; import org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl; @@ -66,11 +66,11 @@ @RequiresDialect( value = MySQLDialect.class, matchSubTypes = false ) public class MySQLColumnValidationTest { - private DriverManagerConnectionProviderImpl connectionProvider; + private DriverManagerConnectionProvider connectionProvider; @BeforeAll public void init() { - connectionProvider = new DriverManagerConnectionProviderImpl(); + connectionProvider = new DriverManagerConnectionProvider(); connectionProvider.configure( PropertiesHelper.map( Environment.getProperties() ) ); try( Connection connection = connectionProvider.getConnection(); diff --git a/hibernate-core/src/test/java/org/hibernate/orm/test/type/AbstractJavaTimeTypeTest.java b/hibernate-core/src/test/java/org/hibernate/orm/test/type/AbstractJavaTimeTypeTest.java index 4c5eeb3c4779..690c1aca29b3 100644 --- a/hibernate-core/src/test/java/org/hibernate/orm/test/type/AbstractJavaTimeTypeTest.java +++ b/hibernate-core/src/test/java/org/hibernate/orm/test/type/AbstractJavaTimeTypeTest.java @@ -28,7 +28,7 @@ import org.hibernate.service.ServiceRegistry; import org.hibernate.testing.orm.junit.JiraKey; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; import org.hibernate.testing.junit4.BaseCoreFunctionalTestCase; import org.hibernate.testing.junit4.CustomParameterized; import org.hibernate.testing.orm.junit.DialectContext; @@ -194,7 +194,7 @@ public void nativeWriteThenRead() { protected final void withDefaultTimeZone(Runnable runnable) { TimeZone timeZoneBefore = TimeZone.getDefault(); TimeZone.setDefault( toTimeZone( env.defaultJvmTimeZone ) ); - SharedDriverManagerConnectionProviderImpl.getInstance().onDefaultTimeZoneChange(); + SharedDriverManagerConnectionProvider.getInstance().onDefaultTimeZoneChange(); /* * Run the code in a new thread, because some libraries (looking at you, h2 JDBC driver) * cache data dependent on the default timezone in thread local variables, @@ -223,7 +223,7 @@ else if ( cause instanceof Error ) { } finally { TimeZone.setDefault( timeZoneBefore ); - SharedDriverManagerConnectionProviderImpl.getInstance().onDefaultTimeZoneChange(); + SharedDriverManagerConnectionProvider.getInstance().onDefaultTimeZoneChange(); } } diff --git a/hibernate-testing/src/main/java/org/hibernate/testing/env/ConnectionProviderBuilder.java b/hibernate-testing/src/main/java/org/hibernate/testing/env/ConnectionProviderBuilder.java index e0cf1cb42cf2..fd837a44616f 100644 --- a/hibernate-testing/src/main/java/org/hibernate/testing/env/ConnectionProviderBuilder.java +++ b/hibernate-testing/src/main/java/org/hibernate/testing/env/ConnectionProviderBuilder.java @@ -17,8 +17,8 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; import org.hibernate.dialect.Dialect; -import org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DataSourceConnectionProvider; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.internal.util.PropertiesHelper; import org.hibernate.internal.util.ReflectHelper; @@ -59,7 +59,7 @@ public static Properties getConnectionProviderProperties(String dbName, Map PGJDBC_STANDARD_TYPE_NAMES = buildTypeNames( Set.of( "int2", @@ -70,7 +70,7 @@ private static Set buildTypeNames(Set baseTypeNames) { return typeNames; } - public static SharedDriverManagerConnectionProviderImpl getInstance() { + public static SharedDriverManagerConnectionProvider getInstance() { return INSTANCE; } diff --git a/hibernate-testing/src/main/java/org/hibernate/testing/jdbc/SharedDriverManagerTypeCacheClearingIntegrator.java b/hibernate-testing/src/main/java/org/hibernate/testing/jdbc/SharedDriverManagerTypeCacheClearingIntegrator.java index b8ea1031d74c..6118d2db2796 100644 --- a/hibernate-testing/src/main/java/org/hibernate/testing/jdbc/SharedDriverManagerTypeCacheClearingIntegrator.java +++ b/hibernate-testing/src/main/java/org/hibernate/testing/jdbc/SharedDriverManagerTypeCacheClearingIntegrator.java @@ -15,6 +15,6 @@ public void integrate( Metadata metadata, BootstrapContext bootstrapContext, SessionFactoryImplementor sessionFactory) { - SharedDriverManagerConnectionProviderImpl.getInstance().clearTypeCache(); + SharedDriverManagerConnectionProvider.getInstance().clearTypeCache(); } } diff --git a/hibernate-testing/src/main/java/org/hibernate/testing/jta/JtaAwareConnectionProviderImpl.java b/hibernate-testing/src/main/java/org/hibernate/testing/jta/JtaAwareConnectionProviderImpl.java index b2b67aeed2bb..c1cfd49be905 100644 --- a/hibernate-testing/src/main/java/org/hibernate/testing/jta/JtaAwareConnectionProviderImpl.java +++ b/hibernate-testing/src/main/java/org/hibernate/testing/jta/JtaAwareConnectionProviderImpl.java @@ -53,7 +53,7 @@ import org.hibernate.cfg.Environment; import org.hibernate.dialect.Dialect; import org.hibernate.engine.jdbc.connections.internal.ConnectionProviderInitiator; -import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl; +import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.engine.jdbc.connections.spi.DatabaseConnectionInfo; import org.hibernate.engine.jdbc.env.spi.ExtractedDatabaseMetaData; @@ -62,7 +62,7 @@ import org.hibernate.service.spi.ServiceRegistryAwareService; import org.hibernate.service.spi.ServiceRegistryImplementor; import org.hibernate.service.spi.Stoppable; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; /** * A {@link ConnectionProvider} implementation intended for testing Hibernate/JTA interaction. In that limited scope we @@ -76,7 +76,7 @@ public class JtaAwareConnectionProviderImpl implements ConnectionProvider, Confi ServiceRegistryAwareService { private static final String CONNECTION_KEY = "_database_connection"; - private final DriverManagerConnectionProviderImpl delegate = SharedDriverManagerConnectionProviderImpl.getInstance(); + private final DriverManagerConnectionProvider delegate = SharedDriverManagerConnectionProvider.getInstance(); private final List nonEnlistedConnections = new ArrayList<>(); @@ -102,7 +102,7 @@ public void configure(Map configurationValues) { connectionSettings.put( Environment.AUTOCOMMIT, "false" ); connectionSettings.put( Environment.POOL_SIZE, "5" ); - connectionSettings.put( DriverManagerConnectionProviderImpl.INITIAL_SIZE, "0" ); + connectionSettings.put( DriverManagerConnectionProvider.INITIAL_SIZE, "0" ); delegate.configure( connectionSettings ); } diff --git a/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/PreparedStatementSpyConnectionProvider.java b/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/PreparedStatementSpyConnectionProvider.java index f8a28db2e67f..ff0d73829516 100644 --- a/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/PreparedStatementSpyConnectionProvider.java +++ b/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/PreparedStatementSpyConnectionProvider.java @@ -18,7 +18,7 @@ import org.hibernate.testing.jdbc.ConnectionProviderDelegate; import org.hibernate.testing.jdbc.JdbcSpies; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; /** * This {@link ConnectionProvider} extends any other ConnectionProvider that would be used by default taken the current configuration properties, and it @@ -61,7 +61,7 @@ public PreparedStatementSpyConnectionProvider() { public PreparedStatementSpyConnectionProvider(boolean forceSupportsAggressiveRelease) { super(forceSupportsAggressiveRelease); - setConnectionProvider( SharedDriverManagerConnectionProviderImpl.getInstance() ); + setConnectionProvider( SharedDriverManagerConnectionProvider.getInstance() ); } protected Connection actualConnection() throws SQLException { diff --git a/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/TimeZoneConnectionProvider.java b/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/TimeZoneConnectionProvider.java index 1aafc205fdcd..29aae4c3c5e7 100644 --- a/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/TimeZoneConnectionProvider.java +++ b/hibernate-testing/src/main/java/org/hibernate/testing/orm/jdbc/TimeZoneConnectionProvider.java @@ -9,7 +9,7 @@ import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider; import org.hibernate.testing.jdbc.ConnectionProviderDelegate; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; /** * This {@link ConnectionProvider} extends any other ConnectionProvider that would be used by default taken the current configuration properties, and it @@ -28,7 +28,7 @@ public TimeZoneConnectionProvider(String customTimeZone) { this.defaultTimeZone = System.setProperty( "user.timezone", customTimeZone); TimeZone.setDefault(TimeZone.getTimeZone( customTimeZone )); // Clear the connection pool to avoid issues with drivers that initialize the session TZ to the system TZ - SharedDriverManagerConnectionProviderImpl.getInstance().onDefaultTimeZoneChange(); + SharedDriverManagerConnectionProvider.getInstance().onDefaultTimeZoneChange(); } @Override @@ -37,6 +37,6 @@ public void stop() { System.setProperty( "user.timezone", defaultTimeZone); TimeZone.setDefault(TimeZone.getTimeZone( defaultTimeZone )); // Clear the connection pool to avoid issues with drivers that initialize the session TZ to the system TZ - SharedDriverManagerConnectionProviderImpl.getInstance().onDefaultTimeZoneChange(); + SharedDriverManagerConnectionProvider.getInstance().onDefaultTimeZoneChange(); } } diff --git a/hibernate-testing/src/main/java/org/hibernate/testing/util/ServiceRegistryUtil.java b/hibernate-testing/src/main/java/org/hibernate/testing/util/ServiceRegistryUtil.java index 36f8135cd336..417f0da4e9a8 100644 --- a/hibernate-testing/src/main/java/org/hibernate/testing/util/ServiceRegistryUtil.java +++ b/hibernate-testing/src/main/java/org/hibernate/testing/util/ServiceRegistryUtil.java @@ -13,7 +13,7 @@ import org.hibernate.cfg.AvailableSettings; import org.hibernate.cfg.Environment; -import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProviderImpl; +import org.hibernate.testing.jdbc.SharedDriverManagerConnectionProvider; public class ServiceRegistryUtil { @@ -46,7 +46,7 @@ public static StandardServiceRegistryBuilder applySettings(StandardServiceRegist && !builder.getSettings().containsKey( AvailableSettings.CONNECTION_PROVIDER ) ) { builder.applySetting( AvailableSettings.CONNECTION_PROVIDER, - SharedDriverManagerConnectionProviderImpl.getInstance() + SharedDriverManagerConnectionProvider.getInstance() ); builder.applySetting( AvailableSettings.CONNECTION_PROVIDER_DISABLES_AUTOCOMMIT, @@ -62,7 +62,7 @@ public static void applySettings(Map properties) { final Map objectMap = (Map) properties; objectMap.put( AvailableSettings.CONNECTION_PROVIDER, - SharedDriverManagerConnectionProviderImpl.getInstance() + SharedDriverManagerConnectionProvider.getInstance() ); objectMap.put( AvailableSettings.CONNECTION_PROVIDER_DISABLES_AUTOCOMMIT,