Commit ade1397e authored by Phillip Webb's avatar Phillip Webb

Merge branch '2.0.x'

parents d47e7ebb 571c50e4
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
...@@ -20,6 +21,61 @@ ...@@ -20,6 +21,61 @@
<activation> <activation>
<activeByDefault>true</activeByDefault> <activeByDefault>true</activeByDefault>
</activation> </activation>
<properties>
<spring-javaformat.version>0.0.3</spring-javaformat.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>8.8</version>
</dependency>
<dependency>
<groupId>io.spring.javaformat</groupId>
<artifactId>spring-javaformat-checkstyle</artifactId>
<version>${spring-javaformat.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>checkstyle-validation</id>
<phase>validate</phase>
<configuration>
<skip>${disable.checks}</skip>
<configLocation>src/checkstyle/checkstyle.xml</configLocation>
<suppressionsLocation>src/checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>io.spring.javaformat</groupId>
<artifactId>spring-javaformat-maven-plugin</artifactId>
<version>${spring-javaformat.version}</version>
<executions>
<execution>
<phase>validate</phase>
<configuration>
<skip>${disable.checks}</skip>
</configuration>
<goals>
<goal>validate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<modules> <modules>
<module>spring-boot-project</module> <module>spring-boot-project</module>
<!-- Samples are built via the invoker plugin --> <!-- Samples are built via the invoker plugin -->
......
...@@ -45,9 +45,7 @@ import org.springframework.test.context.junit4.SpringRunner; ...@@ -45,9 +45,7 @@ import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.test.web.reactive.server.WebTestClient;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import static org.springframework.restdocs.payload.PayloadDocumentation.beneathPath; import static org.springframework.restdocs.payload.PayloadDocumentation.beneathPath;
...@@ -55,6 +53,8 @@ import static org.springframework.restdocs.payload.PayloadDocumentation.fieldWit ...@@ -55,6 +53,8 @@ import static org.springframework.restdocs.payload.PayloadDocumentation.fieldWit
import static org.springframework.restdocs.payload.PayloadDocumentation.responseFields; import static org.springframework.restdocs.payload.PayloadDocumentation.responseFields;
import static org.springframework.restdocs.webtestclient.WebTestClientRestDocumentation.document; import static org.springframework.restdocs.webtestclient.WebTestClientRestDocumentation.document;
import static org.springframework.restdocs.webtestclient.WebTestClientRestDocumentation.documentationConfiguration; import static org.springframework.restdocs.webtestclient.WebTestClientRestDocumentation.documentationConfiguration;
import static org.springframework.web.reactive.function.server.RequestPredicates.GET;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
/** /**
* Tests for generating documentation describing {@link MappingsEndpoint}. * Tests for generating documentation describing {@link MappingsEndpoint}.
...@@ -191,8 +191,7 @@ public class MappingsEndpointReactiveDocumentationTests ...@@ -191,8 +191,7 @@ public class MappingsEndpointReactiveDocumentationTests
@Bean @Bean
public RouterFunction<ServerResponse> exampleRouter() { public RouterFunction<ServerResponse> exampleRouter() {
return RouterFunctions.route(RequestPredicates.GET("/foo"), return route(GET("/foo"), (request) -> ServerResponse.ok().build());
(request) -> ServerResponse.ok().build());
} }
@Bean @Bean
......
...@@ -36,13 +36,13 @@ import org.springframework.http.server.reactive.HttpHandler; ...@@ -36,13 +36,13 @@ import org.springframework.http.server.reactive.HttpHandler;
import org.springframework.test.web.reactive.server.WebTestClient; import org.springframework.test.web.reactive.server.WebTestClient;
import org.springframework.web.reactive.config.EnableWebFlux; import org.springframework.web.reactive.config.EnableWebFlux;
import org.springframework.web.reactive.function.server.HandlerFunction; import org.springframework.web.reactive.function.server.HandlerFunction;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import org.springframework.web.server.adapter.WebHttpHandlerBuilder; import org.springframework.web.server.adapter.WebHttpHandlerBuilder;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
import static org.springframework.web.reactive.function.server.RequestPredicates.GET;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
/** /**
* Integration tests for {@link HttpTraceWebFilter}. * Integration tests for {@link HttpTraceWebFilter}.
...@@ -115,10 +115,9 @@ public class HttpTraceWebFilterIntegrationTests { ...@@ -115,10 +115,9 @@ public class HttpTraceWebFilterIntegrationTests {
@Bean @Bean
public RouterFunction<ServerResponse> router() { public RouterFunction<ServerResponse> router() {
return RouterFunctions return route(GET("/mono-error"),
.route(RequestPredicates.GET("/mono-error"), (request) -> Mono.error(new RuntimeException())).andRoute(
(request) -> Mono.error(new RuntimeException())) GET("/thrown"),
.andRoute(RequestPredicates.GET("/thrown"),
(HandlerFunction<ServerResponse>) (request) -> { (HandlerFunction<ServerResponse>) (request) -> {
throw new RuntimeException(); throw new RuntimeException();
}); });
......
...@@ -51,9 +51,7 @@ import org.springframework.web.context.ConfigurableWebApplicationContext; ...@@ -51,9 +51,7 @@ import org.springframework.web.context.ConfigurableWebApplicationContext;
import org.springframework.web.context.WebApplicationContext; import org.springframework.web.context.WebApplicationContext;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext; import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import org.springframework.web.reactive.config.EnableWebFlux; import org.springframework.web.reactive.config.EnableWebFlux;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import org.springframework.web.servlet.DispatcherServlet; import org.springframework.web.servlet.DispatcherServlet;
import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.EnableWebMvc;
...@@ -61,6 +59,9 @@ import org.springframework.web.servlet.config.annotation.EnableWebMvc; ...@@ -61,6 +59,9 @@ import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
import static org.mockito.BDDMockito.given; import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
import static org.springframework.web.reactive.function.server.RequestPredicates.GET;
import static org.springframework.web.reactive.function.server.RequestPredicates.POST;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
/** /**
* Tests for {@link MappingsEndpoint}. * Tests for {@link MappingsEndpoint}.
...@@ -166,11 +167,8 @@ public class MappingsEndpointTests { ...@@ -166,11 +167,8 @@ public class MappingsEndpointTests {
@Bean @Bean
public RouterFunction<ServerResponse> routerFunction() { public RouterFunction<ServerResponse> routerFunction() {
return RouterFunctions return route(GET("/one"), (request) -> ServerResponse.ok().build())
.route(RequestPredicates.GET("/one"), .andRoute(POST("/two"), (request) -> ServerResponse.ok().build());
(request) -> ServerResponse.ok().build())
.andRoute(RequestPredicates.POST("/two"),
(request) -> ServerResponse.ok().build());
} }
@RequestMapping("/three") @RequestMapping("/three")
......
...@@ -35,13 +35,14 @@ import org.springframework.http.HttpStatus; ...@@ -35,13 +35,14 @@ import org.springframework.http.HttpStatus;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
import org.springframework.web.reactive.function.BodyInserters; import org.springframework.web.reactive.function.BodyInserters;
import org.springframework.web.reactive.function.server.RequestPredicate; import org.springframework.web.reactive.function.server.RequestPredicate;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerRequest; import org.springframework.web.reactive.function.server.ServerRequest;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import org.springframework.web.server.ResponseStatusException; import org.springframework.web.server.ResponseStatusException;
import static org.springframework.web.reactive.function.server.RequestPredicates.all;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
/** /**
* Basic global {@link org.springframework.web.server.WebExceptionHandler}, rendering * Basic global {@link org.springframework.web.server.WebExceptionHandler}, rendering
* {@link ErrorAttributes}. * {@link ErrorAttributes}.
...@@ -106,8 +107,8 @@ public class DefaultErrorWebExceptionHandler extends AbstractErrorWebExceptionHa ...@@ -106,8 +107,8 @@ public class DefaultErrorWebExceptionHandler extends AbstractErrorWebExceptionHa
@Override @Override
protected RouterFunction<ServerResponse> getRoutingFunction( protected RouterFunction<ServerResponse> getRoutingFunction(
ErrorAttributes errorAttributes) { ErrorAttributes errorAttributes) {
return RouterFunctions.route(acceptsTextHtml(), this::renderErrorView) return route(acceptsTextHtml(), this::renderErrorView).andRoute(all(),
.andRoute(RequestPredicates.all(), this::renderErrorResponse); this::renderErrorResponse);
} }
/** /**
......
...@@ -23,12 +23,12 @@ import org.springframework.boot.test.context.runner.ReactiveWebApplicationContex ...@@ -23,12 +23,12 @@ import org.springframework.boot.test.context.runner.ReactiveWebApplicationContex
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Configuration;
import org.springframework.http.server.reactive.HttpHandler; import org.springframework.http.server.reactive.HttpHandler;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
import static org.springframework.web.reactive.function.server.RequestPredicates.GET;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
/** /**
* Tests for {@link HttpHandlerAutoConfiguration}. * Tests for {@link HttpHandlerAutoConfiguration}.
...@@ -69,8 +69,7 @@ public class HttpHandlerAutoConfigurationTests { ...@@ -69,8 +69,7 @@ public class HttpHandlerAutoConfigurationTests {
@Bean @Bean
public RouterFunction<ServerResponse> routerFunction() { public RouterFunction<ServerResponse> routerFunction() {
return RouterFunctions.route(RequestPredicates.GET("/test"), return route(GET("/test"), (serverRequest) -> null);
(serverRequest) -> null);
} }
} }
......
...@@ -26,7 +26,6 @@ ...@@ -26,7 +26,6 @@
<aether.version>1.0.2.v20150114</aether.version> <aether.version>1.0.2.v20150114</aether.version>
<maven.version>3.1.1</maven.version> <maven.version>3.1.1</maven.version>
<spock.version>1.0-groovy-2.4</spock.version> <spock.version>1.0-groovy-2.4</spock.version>
<spring-javaformat.version>0.0.2</spring-javaformat.version>
</properties> </properties>
<scm> <scm>
<url>http://github.com/spring-projects/spring-boot</url> <url>http://github.com/spring-projects/spring-boot</url>
...@@ -304,23 +303,6 @@ ...@@ -304,23 +303,6 @@
<artifactId>asciidoctor-maven-plugin</artifactId> <artifactId>asciidoctor-maven-plugin</artifactId>
<version>1.5.5</version> <version>1.5.5</version>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>8.8</version>
</dependency>
<dependency>
<groupId>io.spring.javaformat</groupId>
<artifactId>spring-javaformat-checkstyle</artifactId>
<version>${spring-javaformat.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId> <artifactId>maven-failsafe-plugin</artifactId>
...@@ -574,41 +556,6 @@ ...@@ -574,41 +556,6 @@
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<plugin>
<groupId>io.spring.javaformat</groupId>
<artifactId>spring-javaformat-maven-plugin</artifactId>
<version>${spring-javaformat.version}</version>
<executions>
<execution>
<phase>validate</phase>
<configuration>
<skip>${disable.checks}</skip>
</configuration>
<goals>
<goal>validate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<executions>
<execution>
<id>checkstyle-validation</id>
<phase>validate</phase>
<configuration>
<skip>${disable.checks}</skip>
<configLocation>src/checkstyle/checkstyle.xml</configLocation>
<suppressionsLocation>src/checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId> <artifactId>maven-compiler-plugin</artifactId>
......
...@@ -15,7 +15,6 @@ ...@@ -15,7 +15,6 @@
<properties> <properties>
<main.basedir>${basedir}/..</main.basedir> <main.basedir>${basedir}/..</main.basedir>
<java.version>1.8</java.version> <java.version>1.8</java.version>
<spring-javaformat.version>0.0.2</spring-javaformat.version>
<disable.checks>false</disable.checks> <disable.checks>false</disable.checks>
</properties> </properties>
<modules> <modules>
...@@ -175,54 +174,6 @@ ...@@ -175,54 +174,6 @@
</plugins> </plugins>
</pluginManagement> </pluginManagement>
<plugins> <plugins>
<plugin>
<groupId>io.spring.javaformat</groupId>
<artifactId>spring-javaformat-maven-plugin</artifactId>
<version>${spring-javaformat.version}</version>
<executions>
<execution>
<phase>validate</phase>
<configuration>
<skip>${disable.checks}</skip>
</configuration>
<goals>
<goal>validate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>8.8</version>
</dependency>
<dependency>
<groupId>io.spring.javaformat</groupId>
<artifactId>spring-javaformat-checkstyle</artifactId>
<version>${spring-javaformat.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>checkstyle-validation</id>
<phase>validate</phase>
<configuration>
<skip>${disable.checks}</skip>
<configLocation>../spring-boot-parent/src/checkstyle/checkstyle.xml</configLocation>
<suppressionsLocation>../spring-boot-parent/src/checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId> <artifactId>maven-surefire-plugin</artifactId>
......
...@@ -19,11 +19,12 @@ package sample.secure.webflux; ...@@ -19,11 +19,12 @@ package sample.secure.webflux;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import static org.springframework.web.reactive.function.server.RequestPredicates.POST;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
@SpringBootApplication @SpringBootApplication
public class SampleSecureWebFluxApplication { public class SampleSecureWebFluxApplication {
...@@ -33,7 +34,7 @@ public class SampleSecureWebFluxApplication { ...@@ -33,7 +34,7 @@ public class SampleSecureWebFluxApplication {
@Bean @Bean
public RouterFunction<ServerResponse> monoRouterFunction(EchoHandler echoHandler) { public RouterFunction<ServerResponse> monoRouterFunction(EchoHandler echoHandler) {
return RouterFunctions.route(RequestPredicates.POST("/echo"), echoHandler::echo); return route(POST("/echo"), echoHandler::echo);
} }
} }
...@@ -19,11 +19,12 @@ package sample.webflux; ...@@ -19,11 +19,12 @@ package sample.webflux;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
import org.springframework.web.reactive.function.server.RequestPredicates;
import org.springframework.web.reactive.function.server.RouterFunction; import org.springframework.web.reactive.function.server.RouterFunction;
import org.springframework.web.reactive.function.server.RouterFunctions;
import org.springframework.web.reactive.function.server.ServerResponse; import org.springframework.web.reactive.function.server.ServerResponse;
import static org.springframework.web.reactive.function.server.RequestPredicates.POST;
import static org.springframework.web.reactive.function.server.RouterFunctions.route;
@SpringBootApplication @SpringBootApplication
public class SampleWebFluxApplication { public class SampleWebFluxApplication {
...@@ -33,7 +34,7 @@ public class SampleWebFluxApplication { ...@@ -33,7 +34,7 @@ public class SampleWebFluxApplication {
@Bean @Bean
public RouterFunction<ServerResponse> monoRouterFunction(EchoHandler echoHandler) { public RouterFunction<ServerResponse> monoRouterFunction(EchoHandler echoHandler) {
return RouterFunctions.route(RequestPredicates.POST("/echo"), echoHandler::echo); return route(POST("/echo"), echoHandler::echo);
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment