Skip to content

Commit

Permalink
Merge branch '2.3.x' into 2.4.x
Browse files Browse the repository at this point in the history
Closes gh-25174
  • Loading branch information
wilkinsona committed Feb 10, 2021
2 parents 46bc551 + 708cbd7 commit 9da3b65
Showing 1 changed file with 12 additions and 1 deletion.
Expand Up @@ -36,6 +36,7 @@
import org.springframework.boot.autoconfigure.jdbc.DataSourceSchemaCreatedEvent;
import org.springframework.boot.jdbc.EmbeddedDatabaseConnection;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
import org.springframework.context.event.ContextRefreshedEvent;
Expand Down Expand Up @@ -136,12 +137,17 @@ private boolean isInitializingDatabase(DataSource dataSource) {
* blocks until any asynchronous DataSource initialization has completed.
*/
static class DataSourceInitializationCompletionListener
implements ApplicationListener<ContextRefreshedEvent>, Ordered {
implements ApplicationListener<ContextRefreshedEvent>, Ordered, ApplicationContextAware {

private volatile ApplicationContext applicationContext;

private volatile Future<?> dataSourceInitialization;

@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
if (!event.getApplicationContext().equals(this.applicationContext)) {
return;
}
Future<?> dataSourceInitialization = this.dataSourceInitialization;
if (dataSourceInitialization != null) {
try {
Expand All @@ -158,6 +164,11 @@ public int getOrder() {
return Ordered.HIGHEST_PRECEDENCE;
}

@Override
public void setApplicationContext(ApplicationContext applicationContext) {
this.applicationContext = applicationContext;
}

}

/**
Expand Down

0 comments on commit 9da3b65

Please sign in to comment.