1. 23 3月, 2019 1 次提交
  2. 22 11月, 2018 1 次提交
  3. 17 11月, 2018 1 次提交
  4. 26 10月, 2018 1 次提交
  5. 28 6月, 2018 3 次提交
  6. 21 10月, 2017 1 次提交
  7. 17 8月, 2017 1 次提交
  8. 18 7月, 2017 1 次提交
    • B
      Remove PathPatternParser from PatternsRequestCondition · a06da001
      Brian Clozel 提交于
      Since `PathPattern.combine` now returns another `PathPattern` instance
      (it was previously returning a String instance), we can now safely
      remove the parser instance included in `PatternsRequestCondition`.
      
      Issue: SPR-15663
      a06da001
  9. 30 6月, 2017 1 次提交
  10. 13 6月, 2017 1 次提交
    • B
      Add PathPatternRegistry for handler mapping matching · 233c15b8
      Brian Clozel 提交于
      Previously `HandlerMapping` implementation were heavily relying on
      `String` path patterns, `PathMatcher` implementations and dedicated maps
      for matching incoming request URL to an actual request handler.
      
      This commit adds the `PathPatternRegistry` that holds `PathPattern`
      instances and the associated request handler — matching results are then
      shared as `PathMatchResult` instances. `AbstractUrlHandlerMapping` will
      use this registry directly, but other components dealing with request
      matching (like `PatternsRequestCondition`) will directly use ordered
      `PathPattern` collections since ordering is important there.
      
      This opens the door for faster request matching and simplifies the
      design of this part.
      
      Issue: SPR-15608
      233c15b8
  11. 10 6月, 2017 1 次提交
    • R
      Refactor MappingContentTypeResolver implementations · b0e8e7f5
      Rossen Stoyanchev 提交于
      After the removal of suffix pattern matches, there is no longer a need
      to expose the list of registered file extensions.
      
      Also polish, refactor, and simplify the abstract base class
      AbstractMappingContentTypeResolver and its sub-classes.
      
      Issue: SPR-15639
      b0e8e7f5
  12. 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
  13. 02 6月, 2017 1 次提交
    • B
      Introduce LookupPath in WebFlux request routing · cf1bc811
      Brian Clozel 提交于
      This commit adds the `LookupPath` class that contains the full
      request path relative to the web context; the application can
      get from it various information, including the file extension
      and path parameters (if any).
      
      Since that operation is done multiple times for each request, this
      object is stored as an attribute at the `ServerWebExchange` level.
      
      Issue: SPR-15397
      cf1bc811
  14. 31 5月, 2017 1 次提交
  15. 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
  16. 11 2月, 2017 1 次提交
  17. 09 2月, 2017 2 次提交
    • B
      Refactor HandlerMapping path match configuration · 09d18f2e
      Brian Clozel 提交于
      Since the introduction of `PathPatternRegistry`, the various path match
      configuration flags are no longer needed in several places and that
      configuration can live in the registry itself.
      
      Issue: SPR-14544
      09d18f2e
    • B
      Add PathPatternRegistry · 18c04815
      Brian Clozel 提交于
      This commit adds the new `PathPatternRegistry`, which  holds a
      sorted set of `PathPattern`s and allows for searching/adding patterns
      
      This registry is being used in `HandlerMapping` implementations and
      separates path pattern parsing/matching logic from the rest. Directly
      using `PathPattern` instances should improve the performance of those
      `HandlerMapping` implementations, since the parsing and generation of
      pattern variants (trailing slash, suffix patterns, etc) is done only
      once.
      
      Issue: SPR-14544
      18c04815
  18. 02 2月, 2017 1 次提交
  19. 30 11月, 2016 1 次提交
    • J
      HttpRequestPathHelper in new web.server.support package · 8cb7e026
      Juergen Hoeller 提交于
      In general, web.util is supposed to remain lowest-level, not depending on any other web.* package. Since web.client also has a support package, a corresponding web.server.support package seemed appropriate for a helper class depending on ServerWebExchange in web.server itself.
      8cb7e026
  20. 15 7月, 2016 1 次提交
  21. 26 5月, 2016 1 次提交
  22. 19 4月, 2016 1 次提交
    • R
      Update FileExtensionContentTypeResolver · 9ffc0b5e
      Rossen Stoyanchev 提交于
      Rename to MappingContentTypeResolver and replace "fileExtension" with
      "key" in methods to be more general (e.g. file extension or query
      param). Also switch from List to Set for the return values.
      9ffc0b5e
  23. 16 4月, 2016 1 次提交
    • R
      Add RequestCondition hierarchy · b2ca2164
      Rossen Stoyanchev 提交于
      A pretty complete equivalent to the same in spring-webmvc except for
      CORS checks, and custom HTTP methods. Another notable difference is
      that the "params" condition works on query params strictly.
      b2ca2164