1. 12 4月, 2017 1 次提交
  2. 11 4月, 2017 5 次提交
  3. 10 4月, 2017 3 次提交
  4. 08 4月, 2017 4 次提交
  5. 07 4月, 2017 5 次提交
  6. 05 4月, 2017 1 次提交
    • A
      Server HttpMessage[Reader|Writer] in WebFlux fn · 99474376
      Arjen Poutsma 提交于
      This commit introduces support for the server-side methods on
      HttpMessageReader and HttpMessageWriter. It does so by introducing an
      Optional ServerHttpRequest in BodyInserter.Context, and an Optional
      ServerHttpResponse in BodyExtractor.Context. On the client-side, these
      optionals return Optional.empty(); on the server-side, they return the
      respective server-side messages.
      
      Issue: SPR-15370
      99474376
  7. 03 4月, 2017 1 次提交
  8. 02 4月, 2017 1 次提交
  9. 31 3月, 2017 2 次提交
    • S
      Resolve async model attributes in AbstractView · 73b44828
      Sebastien Deleuze 提交于
      This change allows the functional WebFlux API to support natively
      reactive types and also makes it possible for View implementations to
      disable async attributes resolution if they want for example take
      advantage of stream rendering.
      
      It also makes AbstractView#getModelAttributes() asynchronous.
      
      Issue: SPR-15368
      73b44828
    • R
      Add ResponseSpec to WebClient · 840d7abb
      Rossen Stoyanchev 提交于
      Replace the overloaded "retrieve" methods with a single retrieve() +
      ResponseSpec exposing shortcut methods (bodyToMono, bodyToFlux)
      mirroring the ClientResponse shortcuts it delegates to.
      
      Unlike exchange() however with retrieve() there is no access to other
      parts of ClientResponse so ResponseSpec exposes additional shortcuts
      for obtain ResponseEntity<T> or ResponseEntity<List<T>>.
      
      Issue: SPR-15294
      840d7abb
  10. 30 3月, 2017 6 次提交
    • A
      Simplify access to response body in WebClient · e6b4edc7
      Arjen Poutsma 提交于
      This commit makes a change to WebClient in oder to facilitate getting
      the response body as a `Mono<Object>` or `Flux<Object>` without having
      to deal with `ClientResponse`.
      
      Specifically, this commit:
      
       - Adds `RequestHeaderSpec.retrieve` methods, next to `exchange`, that
       return the response body (and not a `ClientResponse`). Two convenience
       methods return the response body as `Mono` or `Flux`.
       - Adds ClientResponse.toRequestEntity to convert the ClientResponse
       into a RequestEntity.
      
      Issue: SPR-15294
      e6b4edc7
    • S
      Suppress warnings in tests · 9f321e8d
      Sebastien Deleuze 提交于
      9f321e8d
    • S
      Specify explicitly Kotlin extensions return type · e2fd398b
      Sebastien Deleuze 提交于
      The main purpose is to specify nullability.
      e2fd398b
    • R
      ServerCodecConfigurer as input in HandlerAdapter · cd8c365a
      Rossen Stoyanchev 提交于
      The ServerCodecConfigurer is now passed all the way into the
      RequestMappingHandlerAdapter which automatically enables the same
      defaults even without the Java config and provides extra flexibility
      in passing message codec configuration for the future.
      cd8c365a
    • R
      Add ArgumentResolverConfigurer · a8162c03
      Rossen Stoyanchev 提交于
      Replace the List<HandlerMethodArgumentResolver> with a dedicated
      configurer that currently has one method accepting custom resolver
      registrations.
      a8162c03
    • A
      Request body improvements in WebClient, WebTestClient · 118f33ae
      Arjen Poutsma 提交于
      This commit makes changes to WebClient and WebTestClient in oder to
      limit setting the body according to HTTP method and also to facilitate
      providing the request body as Object.
      
      Specifically, this commit:
      
       - Moves methods that operate on the request body to a RequestBodySpec
       in both WebClient and WebTestClient, and rename them to `body`.
       These methods now just *set* the body, without performing
       an exchange (which now requires an explicit exchange call).
       - Parameterizes UriSpec in both WebClient and WebTestClient, so that
       it returns either a RequestHeadersSpec or a RequestBodySpec.
      
      Issue: SPR-15394
      118f33ae
  11. 29 3月, 2017 1 次提交
  12. 28 3月, 2017 3 次提交
  13. 26 3月, 2017 1 次提交
  14. 25 3月, 2017 2 次提交
  15. 24 3月, 2017 4 次提交
    • B
      Resolve ResourceUrlProvider from current request · 2baceac5
      Brian Clozel 提交于
      This commit changes `ResourceTransformerSupport` to look for the
      `ResourceUrlProvider` in the current request if none is configured on
      the resource transformer itself.
      
      Issue: SPR-15369
      2baceac5
    • B
      VersionResourceResolver should delegate to the chain · fdd50315
      Brian Clozel 提交于
      Prior to this commit, the `VersionResourceResolver` implementations of
      `resolveUrlPathInternal` would delegate to the resolver chain but would
      never use the give result if the current request didn't match a
      configured version strategy pattern.
      
      This is a problem if the resolver supposed to resolve the resource path
      is configured after a `VersionResourceResolver` in the resolver chain;
      this means that other resolver never gets to participate in the result
      of the chain.
      
      Issue: SPR-15372
      fdd50315
    • J
      Support for populating model attributes through data class constructors · 65ba865d
      Juergen Hoeller 提交于
      Includes a new overloaded ModelAndView constructor with an HttpStatus argument, as well as a HandlerMethodArgumentResolverSupport refactoring (revised checkParameterType signature, actually implementing the HandlerMethodArgumentResolver interface).
      
      Issue: SPR-15199
      65ba865d
    • R
      String decoding for text only vs any MIME type · 0662dbf0
      Rossen Stoyanchev 提交于
      Follow-up to:
      https://github.com/spring-projects/spring-framework/commit/3d68c496f15c80a75711480a569cda1f7c64dc91
      
      StringDecoder can be created in text-only vs "*/*" mode which in turn
      allows a more intuitive order of client side decoders, e.g. SSE does
      not have to be ahead of StringDecoder.
      
      The commit also explicitly disables String from the supported types in
      Jackson2Decoder leaving it to the StringDecoder in "*/*" mode which
      comes after. This does not change the current arrangement since the
      the StringDecoder ahead having "*/*" picks up JSON content just the
      same.
      
      From a broader perspective this change allows any decoder to deal with
      String if it wants to after examining the content type be it the SSE
      or another, custom decoder. For Jackson there is very little value in
      decoding to String which works only if the output contains a single
      JSON string but will fail to parse anything else (JSON object/array)
      while StringDecoder in "*/*" mode will not fail.
      
      Issue: SPR-15374
      0662dbf0