- 01 9月, 2016 1 次提交
-
-
由 Arjen Poutsma 提交于
- Renamed SseEvent to ServerSentEvent to make the name less redundant. - ServerSentEvent is now immutable, having a builder to create new instances. - Realigned the class properties to more closely match the events described in the spec, so that `reconnectTime` becomes `retry`, and `name` becomes `event`.
-
- 31 8月, 2016 3 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-14646
-
由 Juergen Hoeller 提交于
-
由 Rossen Stoyanchev 提交于
This commit updates the instructions on getting started with Spring Web Reactive and also updates constructors and setters to streamline the getting started procedure. Issue: SPR-14640
-
- 30 8月, 2016 1 次提交
-
-
由 Brian Clozel 提交于
Prior to this commit, exceptions thrown by the `HandlerMethodArgumentResolver` would be wrapped into `IllegalStateException`s. This commit makes sure that a DEBUG log is written with the relevant information and that the root cause is not wrapped into another exception, so that the appropriate `ExceptionHandler` can be used to deal with this error. Issue: SPR-14618
-
- 29 8月, 2016 1 次提交
-
-
由 Sam Brannen 提交于
-
- 09 8月, 2016 1 次提交
-
-
由 Rossen Stoyanchev 提交于
-
- 28 7月, 2016 3 次提交
-
-
由 Rossen Stoyanchev 提交于
-
由 Rossen Stoyanchev 提交于
-
由 Rossen Stoyanchev 提交于
There is really no need for a result handler dedicated to a void return value and it's actually problematic to have it. Each result handler treats void as necessary. For an @ResponseBody method it means an empty body. For view resolution it means no specific value was returned and we should procede with selecting a default view name. Having a dedicated void result handler can interfere with this especially since view resolution needs to be last in order. At the same time there are cases when no result handling is needed and the response is fully handled within the HandlerAdapter. This is the case with WebHandler and the SimpleHandlerAdapter. For that case we simply return mono.then(aVoid -> Mono.empty()) which effectively returns an empty Mono and no result handling follows. The HandlerAdapter already says you can return no values at all if the response is fully handled.
-
- 26 7月, 2016 1 次提交
-
-
由 Juergen Hoeller 提交于
DataSourceUtils moved to main core.io.buffer package. Consistently named Jackson2JsonDecoder/Encoder and Jaxb2XmlDecoder/Encoder. Plenty of related polishing.
-
- 23 7月, 2016 3 次提交
-
-
由 Rossen Stoyanchev 提交于
-
由 Arjen Poutsma 提交于
This commit refactors the StringEncoder to a CharSequenceEncoder, in order to support StringBuilders, Groovy GStrings, etc. Issue: https://github.com/spring-projects/spring-reactive/issues/120
-
由 Rossen Stoyanchev 提交于
Issue: SPR-14159
-
- 21 7月, 2016 1 次提交
-
-
由 Arjen Poutsma 提交于
This commit changes the reactive flushing mechanism to use a newly introduced writeAndFlushWith(Publisher<Publisher<DataBuffer>>) on ReactiveHttpOutputMessage instead of using the FlushingDataBuffer. Issue: https://github.com/spring-projects/spring-reactive/issues/125
-
- 20 7月, 2016 3 次提交
-
-
由 Juergen Hoeller 提交于
Issue: SPR-14479
-
由 Juergen Hoeller 提交于
Consistently use constructor-based instantiation instead of Class.newInstance / BeanUtils.instantiate Issue: SPR-14486
-
由 Juergen Hoeller 提交于
Issue: SPR-14484
-
- 19 7月, 2016 2 次提交
-
-
由 Rossen Stoyanchev 提交于
-
由 Rossen Stoyanchev 提交于
Ensure type-level Javadoc in every class, comply with guidelines for 80 char on Javadoc, and minor polish.
-
- 16 7月, 2016 1 次提交
-
-
由 Rossen Stoyanchev 提交于
-
- 15 7月, 2016 4 次提交
-
-
由 Rossen Stoyanchev 提交于
-
由 Rossen Stoyanchev 提交于
-
由 Rossen Stoyanchev 提交于
-
由 Rossen Stoyanchev 提交于
-
- 13 7月, 2016 5 次提交
-
-
由 Arjen Poutsma 提交于
Moved ResponseBodyProcessor creation from constructor to writeWithInternal(), in preparation of supporting both Publisher<DataBuffer> as well as Publisher<Publisher<DataBuffer>>.
-
由 Arjen Poutsma 提交于
In preparation of supporting both Publisher<DataBuffer> and Publisher<Publisher<DataBuffer>> as response body, moved RequestBodyPublisher and ResponseBodyProcessor into ServletServerHttpRequest and ServletServerHttpResponse respectively.
-
由 Arjen Poutsma 提交于
-
由 Arjen Poutsma 提交于
-
由 Arjen Poutsma 提交于
Refactored Publisher<Void> in AbstractResponseBodyProcessor into separate ResponseBodyWriteResultPublisher.
-
- 12 7月, 2016 1 次提交
-
-
由 Brian Clozel 提交于
-
- 08 7月, 2016 8 次提交
-
-
由 Brian Clozel 提交于
This commit adds the required infrastructure to build HTTP requests as well as extracting relevant information from HTTP responses using the RxJava 1.x API, where Observable and Single don't extend Publisher.
-
由 Brian Clozel 提交于
This commit refactors the `ClientHttpRequestFactory` into an `ClientHttpConnector` abstraction, in order to reflect that `ClientHttpRequest`s only "exist" once the client is connected to the origin server. This is why the HTTP client is now callback-based, containing all interactions with the request within a `Function<ClientHttpRequest,Mono<Void>>` that signals when it's done writing to the request. The `ClientHttpRequest` contract also adopts `setComplete()` and promotes that method to the `ReactiveHttpOutputMessage` contract. This commit also adapts all other APIs to that change and fixes a few issues, including: * use `HttpMessageConverter`s instead of `Encoders`/`Decoders` * better handle type information about request content publishers * support client cookies in HTTP requests * temporarily remove the RxNetty client support
-
由 Brian Clozel 提交于
Reactor's `DependencyUtils` has been renamed to `Converters` and all the `from` converter methods have been disambiguated to `fromPublisher`, `toPublisher`.
-
由 Violeta Georgieva 提交于
The state machine is refactored in order to solve various concurrency issues.
-
由 Rossen Stoyanchev 提交于
This commit adds support for handling an empty request body with both HttpEntity where the body is not required and with @RequestBody where the body is required depending on the annotation's required flag. If the body is an explicit type (e.g. String, HttpEntity<String>) and the body is required an exception is raised before the method is even invoked or otherwise the body is passed in as null. If the body is declared as an async type (e.g. Mono<String>, HttpEntity<Mono<String>>) and is required, the error will flow through the async type. If not required, the async type will be passed with no values (i.e. empty). A notable exception is rx.Single which can only have one value or one error and cannot be empty. As a result currently the use of rx.Single to represent the request body in any form effectively implies the body is required.
-
由 Rossen Stoyanchev 提交于
Before this change decodeToMono always created a StringBuilder to aggregate resulting in an "" (empty string) rather than an empty Mono for an empty input stream. Now we aggregate in the DataBuffer instead and then decode to String.
-
由 Rossen Stoyanchev 提交于
The RequestBodyArgumentResolver has been refactored to have a shared base class and tests with the new HttpEntityMethodArgumentResolver. An HttpEntity argument is not expected to have an async wrapper because the request headers are available immediately. The body however can be asynchronous, e.g. HttpEntity<Flux<String>>.
-
由 Brian Clozel 提交于
* update bean validation API version * MethodParameter now validates indices, see 39e3f2eb * `getCharSet()` is now `getCharset()`
-
- 07 7月, 2016 1 次提交
-
-
由 Rossen Stoyanchev 提交于
-