Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
DEMO
spring-boot
Commits
76dfe1aa
Commit
76dfe1aa
authored
Aug 16, 2019
by
Madhura Bhave
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '2.1.x'
Closes gh-17887
parents
dab815af
fe638655
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
88 additions
and
3 deletions
+88
-3
EntityManagerFactoryDependsOnPostProcessor.java
.../data/jpa/EntityManagerFactoryDependsOnPostProcessor.java
+16
-0
JdbcOperationsDependsOnPostProcessor.java
...oconfigure/jdbc/JdbcOperationsDependsOnPostProcessor.java
+16
-0
NamedParameterJdbcOperationsDependsOnPostProcessor.java
...c/NamedParameterJdbcOperationsDependsOnPostProcessor.java
+16
-0
LiquibaseAutoConfiguration.java
...t/autoconfigure/liquibase/LiquibaseAutoConfiguration.java
+3
-3
LiquibaseAutoConfigurationTests.java
...oconfigure/liquibase/LiquibaseAutoConfigurationTests.java
+37
-0
No files found.
spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/jpa/EntityManagerFactoryDependsOnPostProcessor.java
View file @
76dfe1aa
...
@@ -31,13 +31,29 @@ import org.springframework.orm.jpa.AbstractEntityManagerFactoryBean;
...
@@ -31,13 +31,29 @@ import org.springframework.orm.jpa.AbstractEntityManagerFactoryBean;
* @author Dave Syer
* @author Dave Syer
* @author Phillip Webb
* @author Phillip Webb
* @author Andy Wilkinson
* @author Andy Wilkinson
* @author Andrii Hrytsiuk
* @since 1.1.0
* @since 1.1.0
* @see BeanDefinition#setDependsOn(String[])
* @see BeanDefinition#setDependsOn(String[])
*/
*/
public
class
EntityManagerFactoryDependsOnPostProcessor
extends
AbstractDependsOnBeanFactoryPostProcessor
{
public
class
EntityManagerFactoryDependsOnPostProcessor
extends
AbstractDependsOnBeanFactoryPostProcessor
{
/**
* Creates a new {@code EntityManagerFactoryDependsOnPostProcessor} that will set up
* dependencies upon beans with the given names.
* @param dependsOn names of the beans to depend upon
*/
public
EntityManagerFactoryDependsOnPostProcessor
(
String
...
dependsOn
)
{
public
EntityManagerFactoryDependsOnPostProcessor
(
String
...
dependsOn
)
{
super
(
EntityManagerFactory
.
class
,
AbstractEntityManagerFactoryBean
.
class
,
dependsOn
);
super
(
EntityManagerFactory
.
class
,
AbstractEntityManagerFactoryBean
.
class
,
dependsOn
);
}
}
/**
* Creates a new {@code EntityManagerFactoryDependsOnPostProcessor} that will set up
* dependencies upon beans with the given types.
* @param dependsOn types of the beans to depend upon
* @since 2.1.8
*/
public
EntityManagerFactoryDependsOnPostProcessor
(
Class
<?>...
dependsOn
)
{
super
(
EntityManagerFactory
.
class
,
AbstractEntityManagerFactoryBean
.
class
,
dependsOn
);
}
}
}
spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/JdbcOperationsDependsOnPostProcessor.java
View file @
76dfe1aa
...
@@ -29,13 +29,29 @@ import org.springframework.jdbc.core.JdbcOperations;
...
@@ -29,13 +29,29 @@ import org.springframework.jdbc.core.JdbcOperations;
* @author Dave Syer
* @author Dave Syer
* @author Phillip Webb
* @author Phillip Webb
* @author Andy Wilkinson
* @author Andy Wilkinson
* @author Andrii Hrytsiuk
* @since 2.0.4
* @since 2.0.4
* @see BeanDefinition#setDependsOn(String[])
* @see BeanDefinition#setDependsOn(String[])
*/
*/
public
class
JdbcOperationsDependsOnPostProcessor
extends
AbstractDependsOnBeanFactoryPostProcessor
{
public
class
JdbcOperationsDependsOnPostProcessor
extends
AbstractDependsOnBeanFactoryPostProcessor
{
/**
* Creates a new {@code JdbcOperationsDependsOnPostProcessor} that will set up
* dependencies upon beans with the given names.
* @param dependsOn names of the beans to depend upon
*/
public
JdbcOperationsDependsOnPostProcessor
(
String
...
dependsOn
)
{
public
JdbcOperationsDependsOnPostProcessor
(
String
...
dependsOn
)
{
super
(
JdbcOperations
.
class
,
dependsOn
);
super
(
JdbcOperations
.
class
,
dependsOn
);
}
}
/**
* Creates a new {@code JdbcOperationsDependsOnPostProcessor} that will set up
* dependencies upon beans with the given types.
* @param dependsOn types of the beans to depend upon
* @since 2.1.8
*/
public
JdbcOperationsDependsOnPostProcessor
(
Class
<?>...
dependsOn
)
{
super
(
JdbcOperations
.
class
,
dependsOn
);
}
}
}
spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/jdbc/NamedParameterJdbcOperationsDependsOnPostProcessor.java
View file @
76dfe1aa
...
@@ -27,13 +27,29 @@ import org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations;
...
@@ -27,13 +27,29 @@ import org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations;
* beans.
* beans.
*
*
* @author Dan Zheng
* @author Dan Zheng
* @author Andrii Hrytsiuk
* @since 2.1.4
* @since 2.1.4
* @see BeanDefinition#setDependsOn(String[])
* @see BeanDefinition#setDependsOn(String[])
*/
*/
public
class
NamedParameterJdbcOperationsDependsOnPostProcessor
extends
AbstractDependsOnBeanFactoryPostProcessor
{
public
class
NamedParameterJdbcOperationsDependsOnPostProcessor
extends
AbstractDependsOnBeanFactoryPostProcessor
{
/**
* Creates a new {@code NamedParameterJdbcOperationsDependsOnPostProcessor} that will
* set up dependencies upon beans with the given names.
* @param dependsOn names of the beans to depend upon
*/
public
NamedParameterJdbcOperationsDependsOnPostProcessor
(
String
...
dependsOn
)
{
public
NamedParameterJdbcOperationsDependsOnPostProcessor
(
String
...
dependsOn
)
{
super
(
NamedParameterJdbcOperations
.
class
,
dependsOn
);
super
(
NamedParameterJdbcOperations
.
class
,
dependsOn
);
}
}
/**
* Creates a new {@code NamedParameterJdbcOperationsDependsOnPostProcessor} that will
* set up dependencies upon beans with the given types.
* @param dependsOn types of the beans to depend upon
* @since 2.1.8
*/
public
NamedParameterJdbcOperationsDependsOnPostProcessor
(
Class
<?>...
dependsOn
)
{
super
(
NamedParameterJdbcOperations
.
class
,
dependsOn
);
}
}
}
spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/liquibase/LiquibaseAutoConfiguration.java
View file @
76dfe1aa
...
@@ -161,7 +161,7 @@ public class LiquibaseAutoConfiguration {
...
@@ -161,7 +161,7 @@ public class LiquibaseAutoConfiguration {
protected
static
class
LiquibaseJpaDependencyConfiguration
extends
EntityManagerFactoryDependsOnPostProcessor
{
protected
static
class
LiquibaseJpaDependencyConfiguration
extends
EntityManagerFactoryDependsOnPostProcessor
{
public
LiquibaseJpaDependencyConfiguration
()
{
public
LiquibaseJpaDependencyConfiguration
()
{
super
(
"liquibase"
);
super
(
SpringLiquibase
.
class
);
}
}
}
}
...
@@ -176,7 +176,7 @@ public class LiquibaseAutoConfiguration {
...
@@ -176,7 +176,7 @@ public class LiquibaseAutoConfiguration {
protected
static
class
LiquibaseJdbcOperationsDependencyConfiguration
extends
JdbcOperationsDependsOnPostProcessor
{
protected
static
class
LiquibaseJdbcOperationsDependencyConfiguration
extends
JdbcOperationsDependsOnPostProcessor
{
public
LiquibaseJdbcOperationsDependencyConfiguration
()
{
public
LiquibaseJdbcOperationsDependencyConfiguration
()
{
super
(
"liquibase"
);
super
(
SpringLiquibase
.
class
);
}
}
}
}
...
@@ -192,7 +192,7 @@ public class LiquibaseAutoConfiguration {
...
@@ -192,7 +192,7 @@ public class LiquibaseAutoConfiguration {
extends
NamedParameterJdbcOperationsDependsOnPostProcessor
{
extends
NamedParameterJdbcOperationsDependsOnPostProcessor
{
public
LiquibaseNamedParameterJdbcOperationsDependencyConfiguration
()
{
public
LiquibaseNamedParameterJdbcOperationsDependencyConfiguration
()
{
super
(
"liquibase"
);
super
(
SpringLiquibase
.
class
);
}
}
}
}
...
...
spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/liquibase/LiquibaseAutoConfigurationTests.java
View file @
76dfe1aa
...
@@ -36,9 +36,11 @@ import org.junit.jupiter.api.extension.ExtendWith;
...
@@ -36,9 +36,11 @@ import org.junit.jupiter.api.extension.ExtendWith;
import
org.junit.jupiter.api.io.TempDir
;
import
org.junit.jupiter.api.io.TempDir
;
import
org.springframework.beans.factory.BeanCreationException
;
import
org.springframework.beans.factory.BeanCreationException
;
import
org.springframework.beans.factory.config.BeanDefinition
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.AutoConfigurations
;
import
org.springframework.boot.autoconfigure.AutoConfigurations
;
import
org.springframework.boot.autoconfigure.jdbc.EmbeddedDataSourceConfiguration
;
import
org.springframework.boot.autoconfigure.jdbc.EmbeddedDataSourceConfiguration
;
import
org.springframework.boot.autoconfigure.jdbc.JdbcTemplateAutoConfiguration
;
import
org.springframework.boot.context.event.ApplicationStartingEvent
;
import
org.springframework.boot.context.event.ApplicationStartingEvent
;
import
org.springframework.boot.jdbc.DataSourceBuilder
;
import
org.springframework.boot.jdbc.DataSourceBuilder
;
import
org.springframework.boot.liquibase.LiquibaseServiceLocatorApplicationListener
;
import
org.springframework.boot.liquibase.LiquibaseServiceLocatorApplicationListener
;
...
@@ -65,6 +67,7 @@ import static org.assertj.core.api.Assertions.contentOf;
...
@@ -65,6 +67,7 @@ import static org.assertj.core.api.Assertions.contentOf;
* @author Stephane Nicoll
* @author Stephane Nicoll
* @author Dominic Gunn
* @author Dominic Gunn
* @author András Deák
* @author András Deák
* @author Andrii Hrytsiuk
*/
*/
@ExtendWith
(
OutputCaptureExtension
.
class
)
@ExtendWith
(
OutputCaptureExtension
.
class
)
class
LiquibaseAutoConfigurationTests
{
class
LiquibaseAutoConfigurationTests
{
...
@@ -309,6 +312,26 @@ class LiquibaseAutoConfigurationTests {
...
@@ -309,6 +312,26 @@ class LiquibaseAutoConfigurationTests {
});
});
}
}
@Test
void
userConfigurationBeans
()
{
this
.
contextRunner
.
withUserConfiguration
(
LiquibaseUserConfiguration
.
class
,
EmbeddedDataSourceConfiguration
.
class
)
.
run
((
context
)
->
{
assertThat
(
context
).
hasBean
(
"springLiquibase"
);
assertThat
(
context
).
doesNotHaveBean
(
"liquibase"
);
});
}
@Test
void
userConfigurationJdbcTemplateDependency
()
{
this
.
contextRunner
.
withConfiguration
(
AutoConfigurations
.
of
(
JdbcTemplateAutoConfiguration
.
class
))
.
withUserConfiguration
(
LiquibaseUserConfiguration
.
class
,
EmbeddedDataSourceConfiguration
.
class
)
.
run
((
context
)
->
{
BeanDefinition
beanDefinition
=
context
.
getBeanFactory
().
getBeanDefinition
(
"jdbcTemplate"
);
assertThat
(
beanDefinition
.
getDependsOn
()).
containsExactly
(
"springLiquibase"
);
});
}
private
ContextConsumer
<
AssertableApplicationContext
>
assertLiquibase
(
Consumer
<
SpringLiquibase
>
consumer
)
{
private
ContextConsumer
<
AssertableApplicationContext
>
assertLiquibase
(
Consumer
<
SpringLiquibase
>
consumer
)
{
return
(
context
)
->
{
return
(
context
)
->
{
assertThat
(
context
).
hasSingleBean
(
SpringLiquibase
.
class
);
assertThat
(
context
).
hasSingleBean
(
SpringLiquibase
.
class
);
...
@@ -334,4 +357,18 @@ class LiquibaseAutoConfigurationTests {
...
@@ -334,4 +357,18 @@ class LiquibaseAutoConfigurationTests {
}
}
@Configuration
(
proxyBeanMethods
=
false
)
static
class
LiquibaseUserConfiguration
{
@Bean
SpringLiquibase
springLiquibase
(
DataSource
dataSource
)
{
SpringLiquibase
liquibase
=
new
SpringLiquibase
();
liquibase
.
setChangeLog
(
"classpath:/db/changelog/db.changelog-master.yaml"
);
liquibase
.
setShouldRun
(
true
);
liquibase
.
setDataSource
(
dataSource
);
return
liquibase
;
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment