@Override public String resolveSchemaName(Connection connection, Dialect dialect) throws SQLException { // NOTE: delegate should not be cached in DefaultSchemaNameResolver because, // in the case of multiple data sources, there may be a data source that // requires a different delegate. See HHH-12392. final SchemaNameResolver delegate = determineAppropriateResolverDelegate( connection ); return delegate.resolveSchemaName( connection, dialect ); }
private String determineCurrentSchemaName( DatabaseMetaData databaseMetaData, ServiceRegistry serviceRegistry, Dialect dialect) throws SQLException { final SchemaNameResolver schemaNameResolver; final Object setting = serviceRegistry.getService( ConfigurationService.class ).getSettings().get( SCHEMA_NAME_RESOLVER ); if ( setting == null ) { schemaNameResolver = dialect.getSchemaNameResolver(); } else { schemaNameResolver = serviceRegistry.getService( StrategySelector.class ).resolveDefaultableStrategy( SchemaNameResolver.class, setting, dialect.getSchemaNameResolver() ); } try { return schemaNameResolver.resolveSchemaName( databaseMetaData.getConnection(), dialect ); } catch (Exception e) { log.debug( "Unable to resolve connection default schema", e ); return null; } }
@Override public String resolveSchemaName(Connection connection, Dialect dialect) throws SQLException { // NOTE: delegate should not be cached in DefaultSchemaNameResolver because, // in the case of multiple data sources, there may be a data source that // requires a different delegate. See HHH-12392. final SchemaNameResolver delegate = determineAppropriateResolverDelegate( connection ); return delegate.resolveSchemaName( connection, dialect ); }
private String determineCurrentSchemaName( DatabaseMetaData databaseMetaData, ServiceRegistry serviceRegistry, Dialect dialect) throws SQLException { final SchemaNameResolver schemaNameResolver; final Object setting = serviceRegistry.getService( ConfigurationService.class ).getSettings().get( SCHEMA_NAME_RESOLVER ); if ( setting == null ) { schemaNameResolver = dialect.getSchemaNameResolver(); } else { schemaNameResolver = serviceRegistry.getService( StrategySelector.class ).resolveDefaultableStrategy( SchemaNameResolver.class, setting, dialect.getSchemaNameResolver() ); } try { return schemaNameResolver.resolveSchemaName( databaseMetaData.getConnection(), dialect ); } catch (Exception e) { log.debug( "Unable to resolve connection default schema", e ); return null; } }