mirror of
https://gitee.com/dcren/initializr.git
synced 2026-02-26 13:43:15 +08:00
Do not map spring-cloud-fonction-stream with Spring Boot 2.1+
Closes gh-759
This commit is contained in:
@@ -83,4 +83,17 @@ public class AbstractProjectRequestPostProcessor implements ProjectRequestPostPr
|
||||
return version.compareTo(requestVersion) <= 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Specify if the Spring Boot version of the {@link ProjectRequest request} is lower
|
||||
* than the specified {@link Version}.
|
||||
* @param request the request to handle
|
||||
* @param version the maximum version
|
||||
* @return {@code true} if the requested version is lower than the specified
|
||||
* {@code version}
|
||||
*/
|
||||
protected boolean isSpringBootVersionBefore(ProjectRequest request, Version version) {
|
||||
Version requestVersion = Version.safeParse(request.getBootVersion());
|
||||
return version.compareTo(requestVersion) > 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -31,6 +31,7 @@ import org.springframework.stereotype.Component;
|
||||
* and/or platform dependencies requested.
|
||||
*
|
||||
* @author Dave Syer
|
||||
* @author Stephane Nicoll
|
||||
*/
|
||||
@Component
|
||||
class SpringCloudFunctionRequestPostProcessor
|
||||
@@ -50,8 +51,9 @@ class SpringCloudFunctionRequestPostProcessor
|
||||
Dependency cloudFunction = getDependency(request, "cloud-function");
|
||||
if (cloudFunction != null) {
|
||||
List<Dependency> swap = new ArrayList<>();
|
||||
if (hasDependency(request, "cloud-stream")
|
||||
|| hasDependency(request, "reactive-cloud-stream")) {
|
||||
if ((hasDependency(request, "cloud-stream")
|
||||
|| hasDependency(request, "reactive-cloud-stream"))
|
||||
&& isSpringBootVersionBefore(request, VERSION_2_1_0_M1)) {
|
||||
swap.add(SCS_ADAPTER);
|
||||
}
|
||||
if (hasDependency(request, "web")) {
|
||||
|
||||
@@ -23,6 +23,7 @@ import org.junit.Test;
|
||||
* Tests for {@link SpringCloudFunctionRequestPostProcessor}.
|
||||
*
|
||||
* @author Dave Syer
|
||||
* @author Stephane Nicoll
|
||||
*/
|
||||
public class SpringCloudFunctionRequestPostProcessorTests
|
||||
extends AbstractRequestPostProcessorTests {
|
||||
@@ -38,6 +39,7 @@ public class SpringCloudFunctionRequestPostProcessorTests
|
||||
public void springCloudStreamWithRabbit() {
|
||||
ProjectRequest request = createProjectRequest("cloud-stream", "amqp",
|
||||
"cloud-function");
|
||||
request.setBootVersion("2.0.6.RELEASE");
|
||||
generateMavenPom(request).hasDependency(getDependency("cloud-stream"))
|
||||
.hasDependency(getDependency("amqp"))
|
||||
.hasDependency(SpringCloudFunctionRequestPostProcessor.SCS_ADAPTER)
|
||||
@@ -48,12 +50,30 @@ public class SpringCloudFunctionRequestPostProcessorTests
|
||||
public void reactiveSpringCloudStreamWithKafka() {
|
||||
ProjectRequest request = createProjectRequest("reactive-cloud-stream", "kafka",
|
||||
"cloud-function");
|
||||
request.setBootVersion("2.0.6.RELEASE");
|
||||
generateMavenPom(request).hasDependency(getDependency("reactive-cloud-stream"))
|
||||
.hasDependency(getDependency("kafka"))
|
||||
.hasDependency(SpringCloudFunctionRequestPostProcessor.SCS_ADAPTER)
|
||||
.hasDependenciesCount(6);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void springCloudStreamWith21() {
|
||||
ProjectRequest request = createProjectRequest("cloud-stream", "cloud-function");
|
||||
request.setBootVersion("2.1.0.RC1");
|
||||
generateMavenPom(request).hasDependency(getDependency("cloud-stream"))
|
||||
.hasDependency(getDependency("cloud-function")).hasDependenciesCount(4);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void reactiveSpringCloudStreamWith21() {
|
||||
ProjectRequest request = createProjectRequest("reactive-cloud-stream",
|
||||
"cloud-function");
|
||||
request.setBootVersion("2.1.0.RELEASE");
|
||||
generateMavenPom(request).hasDependency(getDependency("reactive-cloud-stream"))
|
||||
.hasDependency(getDependency("cloud-function")).hasDependenciesCount(4);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void web() {
|
||||
ProjectRequest request = createProjectRequest("web", "cloud-function");
|
||||
|
||||
Reference in New Issue
Block a user