1. 21 9月, 2016 3 次提交
    • J
      Polishing · 129d7bef
      Juergen Hoeller 提交于
      129d7bef
    • J
      Avoid package dependency cycles · d94ce0a1
      Juergen Hoeller 提交于
      d94ce0a1
    • B
      Add ClientHttpRequestInterceptor in WebClient · 5b33e02f
      Brian Clozel 提交于
      This commit adds a new chain-based, interception contract to be used
      with `WebClient`. This is the HTTP client equivalent of the `WebFilter`
      contract already implemented in web reactive server.
      
      A `ClientHttpRequestInterceptor` implementation can transform the
      outgoing HTTP request (method, URI or headers) before delegating it to
      the next interceptor in the chain, or bypass the request processing
      altogether and return a (cached) HTTP response.
      
      Issue: SPR-14502
      5b33e02f
  2. 20 9月, 2016 6 次提交
    • S
      Rename beforeRead/Write() to resolveRead/WriteHints() · f918a2b1
      Sebastien Deleuze 提交于
      This commit also removes the ServerHttpResponse parameter, not
      needed here since it is possible to override the write() method.
      
      Issue: SPR-14557
      f918a2b1
    • B
      Add ResourceRegionHttpMessageWriter · a7a9e36c
      Brian Clozel 提交于
      This new `HttpMessageWriter` leverages the `ResourceRegionEncoder` to
      write `ResourceRegion` to HTTP responses, thus supporting HTTP Range
      requests.
      
      Whenever possible, this message writer uses the zero copy support for
      single range requests.
      
      This `HttpMessageWriter` is never used directly, but is used as a
      delegate by the `ResourceHttpMessageWriter`. When provided with the
      `BOUNDARY_STRING_HINT`, the `ResourceRegionHttpMessageWriter`
      adapts its behavior in order to write a single/multiple byte ranges.
      
      Issue: SPR-14664
      a7a9e36c
    • B
      Add ResourceRegionEncoder · 55d6f88d
      Brian Clozel 提交于
      This commit adds the necessary infrastructure for the support of HTTP
      Range requests. The new `ResourceRegionEncoder` can write
      `ResourceRegion` objects as streams of bytes.
      
      The `ResourceRegionEncoder` relies on an encoding hint
      `BOUNDARY_STRING_HINT`. If present, the encoder infers that multiple
      `ResourceRegion`s should be encoded and that the provided boundary
      String should be used to separate ranges by mime boundaries.
      If that hint is absent, only a single resource region is encoded.
      
      Issue: SPR-14664
      55d6f88d
    • S
      Polish · 1d46b8d7
      Sebastien Deleuze 提交于
      1d46b8d7
    • S
      Make ServerHttpMessageReader/Writer more powerful and flexible · 857e77ee
      Sebastien Deleuze 提交于
      This commit makes it possible, in addition to provide hints, to
      perform additional operations with the request and the response
      at ServerHttpMessageReader/Writer level.
      
      AbstractServerHttpMessageReader/Writer now provide
      convenient beforeRead/beforeWrite abstract methods for such need.
      
      Issue: SPR-14557
      857e77ee
    • S
      Do not provide hints for can*() methods anymore · 38f3d12e
      Sebastien Deleuze 提交于
      Issue: SPR-14557
      38f3d12e
  3. 19 9月, 2016 1 次提交
  4. 17 9月, 2016 7 次提交
  5. 16 9月, 2016 3 次提交
  6. 15 9月, 2016 3 次提交
  7. 13 9月, 2016 1 次提交
  8. 12 9月, 2016 2 次提交
  9. 07 9月, 2016 1 次提交
    • B
      Align MVC checkNotModified with reactive support · cc5300c4
      Brian Clozel 提交于
      Since SPR-14522, the web reactive framework supports checkNotModified
      features. This commit aligns the existing MVC infrastructure with
      web reactive's behavior.
      
      Because of the new Servlet 3.0 baseline, some constraints
      aren't relevant anymore and duplicate code has been removed in
      `HttpEntityMethodProcessor`.
      
      Issue: SPR-14659
      cc5300c4
  10. 03 9月, 2016 1 次提交
    • V
      Fix AbstractRequestBodyPublisher to comply with the spec · 00617d74
      Violeta Georgieva 提交于
      As per specification "The Subscription MUST allow the Subscriber to
      call Subscription.request synchronously from within onNext or
      onSubscribe". With the current implementation if Subscription.request
      is called more than once when Subscriber.onSubscribe ISE will be
      thrown - java.lang.IllegalStateException: DEMAND.
      With this fix the implementation will not throw ISE and will allow
      many invocations of Subscription.request when
      Subscriber.onSubscribe.
      00617d74
  11. 02 9月, 2016 2 次提交
  12. 01 9月, 2016 4 次提交
    • S
      Polishing · 02bed0a3
      Sebastien Deleuze 提交于
      02bed0a3
    • S
      Let users control SSE stream completion · 06d4bb6a
      Sebastien Deleuze 提交于
      This commit avoid merging automatically the SSE stream with
      Flux.never(). Since browsers automatically reconnect when
      the HTTP connection is closed, it is now the user responsability
      to optionally perform a concatWith(Flux.never()) on streams that
      complete in order to avoid receiving the data multiple times on
      client side.
      
      The behavior with hot streams that never complete does not change.
      
      Issue: SPR-14578
      06d4bb6a
    • A
      Refactored SseEvent to ServerSentEvent · 16b525f6
      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`.
      16b525f6
    • A
      Copied getAndSub() over from Reactor · 35cf4f17
      Arjen Poutsma 提交于
      Operators.getAndSub was removed in Reactor 3.0.1, this commit copies the
      implementation over to AbstractRequestBodyPublisher, which used it.
      35cf4f17
  13. 31 8月, 2016 5 次提交
  14. 30 8月, 2016 1 次提交