Class SpringDocApiVersionStrategy

java.lang.Object
org.springdoc.core.versions.AbstractSpringDocApiVersionStrategy
org.springdoc.webmvc.api.SpringDocApiVersionStrategy
All Implemented Interfaces:
org.springframework.web.accept.ApiVersionStrategy

public class SpringDocApiVersionStrategy extends org.springdoc.core.versions.AbstractSpringDocApiVersionStrategy implements org.springframework.web.accept.ApiVersionStrategy
Servlet-based delegating ApiVersionStrategy that gracefully handles springdoc endpoint paths.
Author:
bnasslahsen
See Also:
  • AbstractSpringDocApiVersionStrategy
  • Constructor Details

    • SpringDocApiVersionStrategy

      public SpringDocApiVersionStrategy(org.springframework.web.accept.ApiVersionStrategy delegate, List<String> springDocPaths)
      Instantiates a new SpringDoc API version strategy.
      Parameters:
      delegate - the delegate strategy
      springDocPaths - the springdoc path prefixes to protect
  • Method Details

    • resolveParseAndValidateVersion

      public @Nullable Comparable<?> resolveParseAndValidateVersion(jakarta.servlet.http.HttpServletRequest request)
      Specified by:
      resolveParseAndValidateVersion in interface org.springframework.web.accept.ApiVersionStrategy
    • resolveVersion

      public @Nullable String resolveVersion(jakarta.servlet.http.HttpServletRequest request)
      Specified by:
      resolveVersion in interface org.springframework.web.accept.ApiVersionStrategy
    • parseVersion

      public Comparable<?> parseVersion(String version)
      Specified by:
      parseVersion in interface org.springframework.web.accept.ApiVersionStrategy
    • validateVersion

      public void validateVersion(@Nullable Comparable<?> requestVersion, jakarta.servlet.http.HttpServletRequest request)
      Specified by:
      validateVersion in interface org.springframework.web.accept.ApiVersionStrategy
    • getDefaultVersion

      public @Nullable Comparable<?> getDefaultVersion()
      Specified by:
      getDefaultVersion in interface org.springframework.web.accept.ApiVersionStrategy
    • handleDeprecations

      public void handleDeprecations(Comparable<?> version, Object handler, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
      Specified by:
      handleDeprecations in interface org.springframework.web.accept.ApiVersionStrategy