Create spring-boot-jpa module
This commit is contained in:
committed by
Phillip Webb
parent
81d4528eee
commit
079713039d
@@ -36,14 +36,15 @@ import org.springframework.boot.autoconfigure.condition.ConditionOutcome;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.EntityManagerFactoryDependsOnPostProcessor;
|
||||
import org.springframework.boot.devtools.autoconfigure.DevToolsDataSourceAutoConfiguration.DatabaseShutdownExecutorEntityManagerFactoryDependsOnPostProcessor;
|
||||
import org.springframework.boot.devtools.autoconfigure.DevToolsDataSourceAutoConfiguration.DatabaseShutdownExecutorEntityManagerFactoryDependsOnConfiguration;
|
||||
import org.springframework.boot.devtools.autoconfigure.DevToolsDataSourceAutoConfiguration.DevToolsDataSourceCondition;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceProperties;
|
||||
import org.springframework.boot.jpa.autoconfigure.EntityManagerFactoryDependsOnPostProcessor;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.ConditionContext;
|
||||
import org.springframework.context.annotation.Conditional;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.ConfigurationCondition;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.core.type.AnnotatedTypeMetadata;
|
||||
@@ -61,7 +62,7 @@ import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
|
||||
@ConditionalOnEnabledDevTools
|
||||
@Conditional(DevToolsDataSourceCondition.class)
|
||||
@AutoConfiguration(afterName = "org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration")
|
||||
@Import(DatabaseShutdownExecutorEntityManagerFactoryDependsOnPostProcessor.class)
|
||||
@Import(DatabaseShutdownExecutorEntityManagerFactoryDependsOnConfiguration.class)
|
||||
public class DevToolsDataSourceAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
@@ -70,12 +71,19 @@ public class DevToolsDataSourceAutoConfiguration {
|
||||
return new NonEmbeddedInMemoryDatabaseShutdownExecutor(dataSource, dataSourceProperties);
|
||||
}
|
||||
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
@ConditionalOnClass({ EntityManagerFactoryDependsOnPostProcessor.class,
|
||||
LocalContainerEntityManagerFactoryBean.class })
|
||||
@ConditionalOnBean(AbstractEntityManagerFactoryBean.class)
|
||||
@Import(DatabaseShutdownExecutorEntityManagerFactoryDependsOnPostProcessor.class)
|
||||
static class DatabaseShutdownExecutorEntityManagerFactoryDependsOnConfiguration {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* Post processor to ensure that {@link jakarta.persistence.EntityManagerFactory}
|
||||
* beans depend on the {@code inMemoryDatabaseShutdownExecutor} bean.
|
||||
*/
|
||||
@ConditionalOnClass(LocalContainerEntityManagerFactoryBean.class)
|
||||
@ConditionalOnBean(AbstractEntityManagerFactoryBean.class)
|
||||
static class DatabaseShutdownExecutorEntityManagerFactoryDependsOnPostProcessor
|
||||
extends EntityManagerFactoryDependsOnPostProcessor {
|
||||
|
||||
|
||||
Reference in New Issue
Block a user