1. 05 7月, 2018 1 次提交
  2. 30 6月, 2018 1 次提交
  3. 28 6月, 2018 3 次提交
  4. 23 6月, 2018 1 次提交
  5. 05 6月, 2018 1 次提交
  6. 17 3月, 2018 1 次提交
  7. 11 3月, 2018 1 次提交
  8. 09 3月, 2018 1 次提交
  9. 07 3月, 2018 1 次提交
  10. 09 2月, 2018 1 次提交
  11. 02 2月, 2018 1 次提交
  12. 22 1月, 2018 1 次提交
  13. 12 1月, 2018 1 次提交
    • A
      Use DataBufferUtils.compose and remove writeAggregator · 67e7c784
      Arjen Poutsma 提交于
      Use DataBufferUtils.compose instead of writeAggregator to combine
      multiple data buffers into one, as the write aggregator would not work
      when the initial data buffer did not have enough capacity to contain
      all subsequent buffers.
      
      Removed writeAggregator, as it is no longer needed.
      
      Issue: SPR-16365
      67e7c784
  14. 10 1月, 2018 1 次提交
  15. 15 12月, 2017 1 次提交
  16. 15 9月, 2017 1 次提交
    • S
      Revisit nullability annotations · 1bc93e3d
      Sebastien Deleuze 提交于
      This commit introduces the following changes.
      
      1) It adds a new Spring @NonNull annotation which allows to apply
      @NonNullApi semantic on a specific element, like @Nullable does.
      Combined with @Nullable, it allows partial null-safety support when
      package granularity is too broad.
      
      2) @Nullable and @NonNull can apply to ElementType.TYPE_USE in order
      to be used on generic type arguments (SPR-15942).
      
      3) Annotations does not apply to ElementType.TYPE_PARAMETER anymore
      since it is not supported yet (applicability for such use case is
      controversial and need to be discussed).
      
      4) @NonNullApi does not apply to ElementType.FIELD anymore since in a
      lot of use cases (private, protected) it is not part for the public API
      + its usage should remain opt-in. A dedicated @NonNullFields annotation
      has been added in order to set fields default to non-nullable.
      
      5) Updated Javadoc and reference documentation.
      
      Issue: SPR-15756
      1bc93e3d
  17. 17 7月, 2017 1 次提交
    • R
      Methods for reading a Resource in DataBufferUtils · d56fedc2
      Rossen Stoyanchev 提交于
      Currently ResourceEncoder and ResourceRegionEncoder use DataBufferUtils
      to read resource with an AsynchronousFileChannel if it is a file or
      otherwise fallback on getting the channel from the resource.
      
      The same is now required in other places where a Resource needs to be
      read and is also generally useful.
      
      Issue: SPR-15773
      d56fedc2
  18. 12 6月, 2017 1 次提交
  19. 07 6月, 2017 1 次提交
    • J
      Consistent use of @Nullable across the codebase (even for internals) · f813712f
      Juergen Hoeller 提交于
      Beyond just formally declaring the current behavior, this revision actually enforces non-null behavior in selected signatures now, not tolerating null values anymore when not explicitly documented. It also changes some utility methods with historic null-in/null-out tolerance towards enforced non-null return values, making them a proper citizen in non-null assignments.
      
      Some issues are left as to-do: in particular a thorough revision of spring-test, and a few tests with unclear failures (ignored as "TODO: NULLABLE") to be sorted out in a follow-up commit.
      
      Issue: SPR-15540
      f813712f
  20. 01 6月, 2017 1 次提交
  21. 31 5月, 2017 1 次提交
  22. 27 5月, 2017 1 次提交
    • S
      Introduce null-safety of Spring Framework API · 87598f48
      Sebastien Deleuze 提交于
      This commit introduces 2 new @Nullable and @NonNullApi
      annotations that leverage JSR 305 (dormant but available via
      Findbugs jsr305 dependency and already used by libraries
      like OkHttp) meta-annotations to specify explicitly
      null-safety of Spring Framework parameters and return values.
      
      In order to avoid adding too much annotations, the
      default is set at package level with @NonNullApi and
      @Nullable annotations are added when needed at parameter or
      return value level. These annotations are intended to be used
      on Spring Framework itself but also by other Spring projects.
      
      @Nullable annotations have been introduced based on Javadoc
      and search of patterns like "return null;". It is expected that
      nullability of Spring Framework API will be polished with
      complementary commits.
      
      In practice, this will make the whole Spring Framework API
      null-safe for Kotlin projects (when KT-10942 will be fixed)
      since Kotlin will be able to leverage these annotations to
      know if a parameter or a return value is nullable or not. But
      this is also useful for Java developers as well since IntelliJ
      IDEA, for example, also understands these annotations to
      generate warnings when unsafe nullable usages are detected.
      
      Issue: SPR-15540
      87598f48
  23. 06 5月, 2017 2 次提交
    • R
      Polish · 0d28a1c3
      Rossen Stoyanchev 提交于
      0d28a1c3
    • R
      Refine encoding/decoding exception handling · 83e0e160
      Rossen Stoyanchev 提交于
      Starting with removing a package cycle on the use of
      ResponseStatusException in the codec package, this commit generally
      refines codec exception handling.
      
      The new [Encoding|Decoding]Exception mirror the existing
      HttpMessageNot[Readable|Writable]Exception and are used similarly
      especially to differentiate betwen 400 and 500 errors when parsing
      server request body content.
      
      The commit also aligns some of the exception handling of JSON and XML
      on the WebFlux side with that on the Spring MVC side.
      
      Issue: SPR-15516
      83e0e160
  24. 20 4月, 2017 1 次提交
  25. 15 4月, 2017 1 次提交
  26. 12 4月, 2017 1 次提交
  27. 11 4月, 2017 1 次提交
  28. 24 3月, 2017 1 次提交
    • 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
  29. 23 3月, 2017 1 次提交
    • R
      String encoding for any MIME type · 3d68c496
      Rossen Stoyanchev 提交于
      CharSequenceEncoder now supports all MIME types, however since encoding
      Flux<String> can overlap with other encoders (e.g. SSE) there are now
      two ways to create a CharSequenceEncoder -- with support for text/plain
      only or with support for any MIME type.
      
      In WebFlux configuration we insert one CharSequenceEncoder for
      text/plain (as we have so far) and a second instance with support for
      any MIME type at the very end.
      
      Issue: SPR-15374
      3d68c496
  30. 21 3月, 2017 1 次提交
    • R
      EncoderHttpMessageWriter supports streaming MediaTypes · c8671041
      Rossen Stoyanchev 提交于
      Support for flushing in EncoderHttpMessageWriter is now driven from a
      configurable list of "streaming" media types with the list including
      "application/stream+json" by default.
      
      As a result Jackson2ServerHttpMessageWriter is no longer needed.
      c8671041
  31. 09 3月, 2017 1 次提交
    • A
      Add DataBufferUtils.read w/ AsynchFileChannel · 63118c1e
      Arjen Poutsma 提交于
      This commit adds an overloaded DataBufferUtils.read method that operates
      on a AsynchronousFileChannel (as opposed to a ReadableByteChannel, which
      already existed). This commit also uses said method in the Resource
      encoders, if the Resource is a file.
      63118c1e
  32. 13 2月, 2017 1 次提交
  33. 17 1月, 2017 1 次提交
    • A
      Added DataBuffer Encoder/Decoder · 88c5f598
      Arjen Poutsma 提交于
      This commit adds a DataBuffer Encoder and Decoder, and uses it in
      the annotation-based processing model.
      
      Note that these codecs are not used in the functional processing model,
      since the BodyInserter/BodyExtractor already have methods for
      writing/reading DataBuffers.
      
      Issue: SPR-15148
      88c5f598
  34. 07 1月, 2017 1 次提交
  35. 21 10月, 2016 2 次提交
  36. 28 9月, 2016 1 次提交