@VisibleForTesting
static void configureDataSource( BasicDataSource ds, DatabaseMeta databaseMeta, String partitionId,
int initialSize, int maximumSize ) throws KettleDatabaseException {
Properties connectionPoolProperties = new Properties( databaseMeta.getConnectionPoolingProperties() );
connectionPoolProperties = environmentSubstitute( connectionPoolProperties, databaseMeta );
setPoolProperties( ds, connectionPoolProperties, initialSize, maximumSize );
setCredentials( ds, databaseMeta, partitionId );
String url = databaseMeta.environmentSubstitute( databaseMeta.getURL( partitionId ) );
ds.setUrl( url );
String clazz = databaseMeta.getDriverClass();
if ( databaseMeta.getDatabaseInterface() != null ) {
ds.setDriverClassLoader( databaseMeta.getDatabaseInterface().getClass().getClassLoader() );
}
ds.setDriverClassName( clazz );
}