Skip to content

Commit fe49fcd

Browse files
marko-bekhtayrodiere
authored andcommitted
HSEARCH-4944 Adjust tests to address ORM changes introduced in a recent ORM 6.3 snapshot
1 parent a0e86ad commit fe49fcd

File tree

1 file changed

+17
-7
lines changed

1 file changed

+17
-7
lines changed

util/internal/integrationtest/mapper/orm/src/main/java/org/hibernate/search/util/impl/integrationtest/mapper/orm/multitenancy/impl/H2LazyMultiTenantConnectionProvider.java

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,22 @@
1010
import java.util.Map;
1111

1212
import org.hibernate.HibernateException;
13-
import org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl;
1413
import org.hibernate.engine.jdbc.connections.spi.AbstractMultiTenantConnectionProvider;
1514
import org.hibernate.engine.jdbc.connections.spi.ConnectionProvider;
1615
import org.hibernate.search.util.common.impl.Closer;
1716
import org.hibernate.service.spi.Stoppable;
1817

1918
import org.hibernate.testing.env.ConnectionProviderBuilder;
2019

20+
import org.jboss.logging.Logger;
21+
2122
public class H2LazyMultiTenantConnectionProvider extends AbstractMultiTenantConnectionProvider
2223
implements Stoppable {
2324

25+
private static final Logger log = Logger.getLogger( H2LazyMultiTenantConnectionProvider.class.getName() );
26+
2427
private final String[] tenantIds;
25-
private final Map<String, DriverManagerConnectionProviderImpl> delegates = new HashMap<>();
28+
private final Map<String, ConnectionProvider> delegates = new HashMap<>();
2629

2730
public H2LazyMultiTenantConnectionProvider(String[] tenantIds) {
2831
this.tenantIds = tenantIds;
@@ -31,7 +34,15 @@ public H2LazyMultiTenantConnectionProvider(String[] tenantIds) {
3134
@Override
3235
public void stop() {
3336
try ( Closer<RuntimeException> closer = new Closer<>() ) {
34-
closer.pushAll( DriverManagerConnectionProviderImpl::stop, delegates.values() );
37+
for ( ConnectionProvider connectionProvider : delegates.values() ) {
38+
if ( connectionProvider instanceof Stoppable ) {
39+
closer.push( Stoppable::stop, ( (Stoppable) connectionProvider ) );
40+
}
41+
else {
42+
log.warn( "Connection provider " + connectionProvider
43+
+ " does not implement Stoppable. This provider will not be stopped." );
44+
}
45+
}
3546
}
3647
}
3748

@@ -43,20 +54,19 @@ protected ConnectionProvider getAnyConnectionProvider() {
4354

4455
@Override
4556
public ConnectionProvider selectConnectionProvider(String tenantIdentifier) {
46-
DriverManagerConnectionProviderImpl connectionProviderImpl = getOrCreateDelegates().get( tenantIdentifier );
57+
ConnectionProvider connectionProviderImpl = getOrCreateDelegates().get( tenantIdentifier );
4758
if ( connectionProviderImpl == null ) {
4859
throw new HibernateException( "Unknown tenant identifier" );
4960
}
5061
return connectionProviderImpl;
5162
}
5263

53-
private Map<String, DriverManagerConnectionProviderImpl> getOrCreateDelegates() {
64+
private Map<String, ConnectionProvider> getOrCreateDelegates() {
5465
if ( !delegates.isEmpty() ) {
5566
return delegates;
5667
}
5768
for ( String tenantId : tenantIds ) {
58-
DriverManagerConnectionProviderImpl connectionProvider =
59-
ConnectionProviderBuilder.buildConnectionProvider( tenantId );
69+
ConnectionProvider connectionProvider = ConnectionProviderBuilder.buildConnectionProvider( tenantId );
6070
delegates.put( tenantId, connectionProvider );
6171
}
6272
return delegates;

0 commit comments

Comments
 (0)