1. 17 8月, 2019 1 次提交
  2. 12 8月, 2019 1 次提交
  3. 09 8月, 2019 1 次提交
  4. 07 8月, 2019 5 次提交
    • S
      Use System.nanoTime() in StopWatch · a532afb1
      Sam Brannen 提交于
      Prior to this commit, StopWatch used System.currentTimeMillis() to
      track and report running time in milliseconds.
      
      This commit updates the internals of StopWatch to use System.nanoTime()
      instead of System.currentTimeMillis(). Consequently, running time is
      now tracked and reported in nanoseconds; however, users still have the
      option to retrieve running time in milliseconds or seconds.
      
      Closes gh-23235
      a532afb1
    • S
      Remove unnecessary loop in SerializableTypeWrapper · a43ba052
      Sam Brannen 提交于
      Since arbitrary levels of proxies do not occur, this commit replaces
      the `while` loop in SerializableTypeWrapper.unwrap() with a simple
      `if` statement.
      
      Closes gh-23415
      a43ba052
    • S
      Overhaul StopWatchTests · 83956f8e
      Sam Brannen 提交于
      83956f8e
    • S
      Use AssertJ in AnnotationAttributesTests · 03dd45fb
      Sam Brannen 提交于
      03dd45fb
    • S
      Check for instanceof Throwable in AnnotationAttributes#assertNotException · a092dc05
      Sam Brannen 提交于
      Prior to this commit, AnnotationAttributes#assertNotException checked if
      the attribute value was an instance of Exception. Although this was
      typically sufficient, the scope was not always broad enough -- for
      example, if AnnotationReadingVisitorUtils#convertClassValues stored a
      Throwable in the map (such as a LinkageError).
      
      This commit fixes this by checking for an instance of Throwable in
      AnnotationAttributes#assertNotException.
      
      Closes gh-23424
      a092dc05
  5. 01 8月, 2019 3 次提交
    • P
      Deprecate mutable methods of MethodParameter · 62a3e414
      Phillip Webb 提交于
      Deprecate all mutation methods in `MethodParameter` in favor of factory
      methods that return a new instance. Existing code that previously relied
      on mutation has been updated to use the replacement methods.
      
      Closes gh-23385
      62a3e414
    • S
      Fix bug in TYPE_HIERARCHY_AND_ENCLOSING_CLASSES strategy · de3c1156
      Sam Brannen 提交于
      Prior to this commit, the new `TYPE_HIERARCHY_AND_ENCLOSING_CLASSES`
      annotation search strategy failed to find annotations on enclosing
      classes if the source class was a nested class that itself had no
      annotations present.
      
      This commit fixes this by adding special logic to AnnotationsScanner's
      isWithoutHierarchy() method to properly support nested classes.
      
      Closes gh-23378
      de3c1156
    • S
      Remove duplicate assertion · b03dd475
      Sam Brannen 提交于
      b03dd475
  6. 31 7月, 2019 2 次提交
  7. 30 7月, 2019 3 次提交
  8. 24 7月, 2019 2 次提交
  9. 20 7月, 2019 3 次提交
  10. 19 7月, 2019 2 次提交
  11. 17 7月, 2019 2 次提交
  12. 10 7月, 2019 1 次提交
    • A
      Removed DataBufferUtils::split · 09572e7b
      Arjen Poutsma 提交于
      DataBuffers::split (and underlying algorithm) should not be returning
      a Flux<DataBuffer>, but rather a Flux<Flux<DataBuffer>>. In other words,
      it should not join all data buffers that come before a delimiter.
      
      Providing an implementation of a such a fully reactive split method
      proved to be beyond the scope of this release, so this commit removes
      the method altogether.
      09572e7b
  13. 07 7月, 2019 1 次提交
    • S
      Ignore empty entries when parsing MediaTypes and MimeTypes · efab6eb5
      Sam Brannen 提交于
      Prior to Spring Framework 5.1.3, MimeTypeUtils.parseMimeTypes() and
      MediaType.parseMediaTypes() ignored empty entries, but 5.1.3 introduced
      a regression in that an empty entry -- for example, due to a trailing
      comma in the list of media types in an HTTP Accept header -- would result
      in a "406 Not Acceptable" response status.
      
      This commit fixes this by filtering out empty entries before parsing
      them into MimeType and MediaType instances. Empty entries are therefore
      effectively ignored.
      
      Fixes gh-23241
      efab6eb5
  14. 05 7月, 2019 2 次提交
  15. 30 6月, 2019 1 次提交
    • P
      Restore StringUtils.hasLength check · b3d56ebf
      Phillip Webb 提交于
      Update `MimeTypeUtils` so that the  StringUtils.hasLength check is
      performed immediately on the incoming argument, rather than in
      `parseMimeTypeInternal`. This restores the `IllegalArgumentException`
      rather than the `NullPointerException` which is thrown by the
      `ConcurrentHashMap`.
      
      Closes gh-23215
      See gh-23211
      b3d56ebf
  16. 25 6月, 2019 2 次提交
  17. 24 6月, 2019 1 次提交
  18. 14 6月, 2019 1 次提交
  19. 12 6月, 2019 3 次提交
  20. 30 5月, 2019 1 次提交
  21. 28 5月, 2019 1 次提交
    • S
      Introduce support for sorted Properties · c39c4211
      Sam Brannen 提交于
      This commit introduces an internal SortedProperties class that is a
      specialization of java.util.Properties which sorts properties
      alphanumerically based on their keys.
      
      This can be useful when storing a java.util.Properties instance in a
      properties file, since it allows such files to be generated in a
      repeatable manner with consistent ordering of properties.
      
      Comments in generated properties files can also be optionally omitted.
      
      An instance of SortedProperties can be created via two new
      createSortedProperties() factory methods in
      org.springframework.core.CollectionFactory.
      
      Closes gh-23018
      c39c4211
  22. 27 5月, 2019 1 次提交
    • P
      Use less confusing MergedAnnotation method names · e386e53f
      Phillip Webb 提交于
      Rename some `MergedAnnotation` methods to prevent using parent/child
      terminology, specifically:
      
      	`getDepth()` has been renamed `getDistance()`
      	`getParent()` has been renamed `getMetaSource()`
      	`getTypeHierarchy()` has been renamed `getMetaTypes()`
      
      The parent child naming was particularly confusing given that the
      parent/child relationships were inverted from the way that a lot of
      users think about meta-annotations. For example, a `@RequestMapping`
      having a parent of `@GetMapping` feels odd given that `@GetMapping`
      is the thing declaring the meta-annotation relationship.
      
      The new method names are designed to align more closely with existing
      terms. For example, `getMetaSource` hints at the relationship with
      `isMetaAnnotated` and `getSource`.
      
      Closes gh-22946
      e386e53f