Skip to content

Commit 6fc3ebf

Browse files
committed
keep compatibility with spring versions previous to 5.1
1 parent 5bf8c3d commit 6fc3ebf

File tree

4 files changed

+9
-13
lines changed

4 files changed

+9
-13
lines changed

springdoc-openapi-webflux-core/src/main/java/org/springdoc/webflux/api/OpenApiResource.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@
4747
import reactor.core.publisher.Mono;
4848

4949
import org.springframework.beans.factory.ObjectFactory;
50-
import org.springframework.beans.factory.ObjectProvider;
5150
import org.springframework.context.ApplicationContext;
5251
import org.springframework.http.server.reactive.ServerHttpRequest;
5352
import org.springframework.util.MimeType;
@@ -153,8 +152,8 @@ protected Mono<String> openapiYaml(ServerHttpRequest serverHttpRequest, String a
153152
@Override
154153
@SuppressWarnings("unchecked")
155154
protected void getPaths(Map<String, Object> restControllers, Locale locale) {
156-
ObjectProvider<RequestMappingHandlerMapping> requestMappingHandlerMappingObjectProvider = openAPIService.getContext().getBeanProvider(RequestMappingHandlerMapping.class);
157-
for (RequestMappingHandlerMapping requestMappingHandlerMapping : requestMappingHandlerMappingObjectProvider) {
155+
Map<String, RequestMappingHandlerMapping> beansOfTypeRequestMappingHandlerMapping = openAPIService.getContext().getBeansOfType(RequestMappingHandlerMapping.class);
156+
for (RequestMappingHandlerMapping requestMappingHandlerMapping : beansOfTypeRequestMappingHandlerMapping.values()) {
158157
Map<RequestMappingInfo, HandlerMethod> map = requestMappingHandlerMapping.getHandlerMethods();
159158
calculatePath(restControllers, map, locale);
160159
if (isShowActuator()) {

springdoc-openapi-webflux-core/src/main/java/org/springdoc/webflux/api/OpenApiWebfluxResource.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,6 @@
4242
import reactor.core.publisher.Mono;
4343

4444
import org.springframework.beans.factory.ObjectFactory;
45-
import org.springframework.beans.factory.ObjectProvider;
4645
import org.springframework.beans.factory.annotation.Autowired;
4746
import org.springframework.beans.factory.annotation.Value;
4847
import org.springframework.context.ApplicationContext;
@@ -159,8 +158,8 @@ protected String getServerUrl(ServerHttpRequest serverHttpRequest, String apiDoc
159158
*/
160159
public static String findPathPrefix(OpenAPIService openAPIService, SpringDocConfigProperties springDocConfigProperties) {
161160
ApplicationContext applicationContext = openAPIService.getContext();
162-
ObjectProvider<RequestMappingHandlerMapping> requestMappingHandlerMappingObjectProvider = applicationContext.getBeanProvider(RequestMappingHandlerMapping.class);
163-
for (RequestMappingHandlerMapping requestMappingHandlerMapping : requestMappingHandlerMappingObjectProvider) {
161+
Map<String, RequestMappingHandlerMapping> beansOfTypeRequestMappingHandlerMapping = applicationContext.getBeansOfType(RequestMappingHandlerMapping.class);
162+
for (RequestMappingHandlerMapping requestMappingHandlerMapping : beansOfTypeRequestMappingHandlerMapping.values()) {
164163
Map<RequestMappingInfo, HandlerMethod> map = requestMappingHandlerMapping.getHandlerMethods();
165164
List<Entry<RequestMappingInfo, HandlerMethod>> entries = new ArrayList<>(map.entrySet());
166165
for (Map.Entry<RequestMappingInfo, HandlerMethod> entry : entries) {

springdoc-openapi-webmvc-core/src/main/java/org/springdoc/webmvc/api/OpenApiResource.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@
5151
import org.springdoc.webmvc.core.RouterFunctionProvider;
5252

5353
import org.springframework.beans.factory.ObjectFactory;
54-
import org.springframework.beans.factory.ObjectProvider;
5554
import org.springframework.util.CollectionUtils;
5655
import org.springframework.util.MimeType;
5756
import org.springframework.web.bind.annotation.RequestMethod;
@@ -183,8 +182,8 @@ public String openapiYaml(HttpServletRequest request,
183182
@Override
184183
@SuppressWarnings("unchecked")
185184
protected void getPaths(Map<String, Object> restControllers, Locale locale) {
186-
ObjectProvider<RequestMappingHandlerMapping> requestMappingHandlerMappingObjectProvider = openAPIService.getContext().getBeanProvider(RequestMappingHandlerMapping.class);
187-
for (RequestMappingHandlerMapping requestMappingHandlerMapping : requestMappingHandlerMappingObjectProvider) {
185+
Map<String, RequestMappingHandlerMapping> beansOfTypeRequestMappingHandlerMapping = openAPIService.getContext().getBeansOfType(RequestMappingHandlerMapping.class);
186+
for (RequestMappingHandlerMapping requestMappingHandlerMapping : beansOfTypeRequestMappingHandlerMapping.values()) {
188187
Map<RequestMappingInfo, HandlerMethod> map = requestMappingHandlerMapping.getHandlerMethods();
189188
if (repositoryRestResourceProvider.isPresent()) {
190189
RepositoryRestResourceProvider restResourceProvider = this.repositoryRestResourceProvider.get();

springdoc-openapi-webmvc-core/src/main/java/org/springdoc/webmvc/api/OpenApiWebMvcResource.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@
4646
import org.springdoc.webmvc.core.RouterFunctionProvider;
4747

4848
import org.springframework.beans.factory.ObjectFactory;
49-
import org.springframework.beans.factory.ObjectProvider;
5049
import org.springframework.beans.factory.annotation.Autowired;
5150
import org.springframework.beans.factory.annotation.Value;
5251
import org.springframework.context.ApplicationContext;
@@ -154,7 +153,7 @@ public String openapiYaml(HttpServletRequest request, @Value(DEFAULT_API_DOCS_UR
154153
protected String getServerUrl(HttpServletRequest request, String apiDocsUrl) {
155154
String requestUrl = decode(request.getRequestURL().toString());
156155
final String prefix = findPathPrefix(this.openAPIService, this.springDocConfigProperties);
157-
return requestUrl.substring(0, requestUrl.length() - apiDocsUrl.length()- prefix.length());
156+
return requestUrl.substring(0, requestUrl.length() - apiDocsUrl.length() - prefix.length());
158157
}
159158

160159
/**
@@ -166,8 +165,8 @@ protected String getServerUrl(HttpServletRequest request, String apiDocsUrl) {
166165
*/
167166
public static String findPathPrefix(OpenAPIService openAPIService, SpringDocConfigProperties springDocConfigProperties) {
168167
ApplicationContext applicationContext = openAPIService.getContext();
169-
ObjectProvider<RequestMappingHandlerMapping> requestMappingHandlerMappingObjectProvider = applicationContext.getBeanProvider(RequestMappingHandlerMapping.class);
170-
for (RequestMappingHandlerMapping requestMappingHandlerMapping : requestMappingHandlerMappingObjectProvider) {
168+
Map<String, RequestMappingHandlerMapping> beansOfTypeRequestMappingHandlerMapping = applicationContext.getBeansOfType(RequestMappingHandlerMapping.class);
169+
for (RequestMappingHandlerMapping requestMappingHandlerMapping : beansOfTypeRequestMappingHandlerMapping.values()) {
171170
Map<RequestMappingInfo, HandlerMethod> map = requestMappingHandlerMapping.getHandlerMethods();
172171
List<Entry<RequestMappingInfo, HandlerMethod>> entries = new ArrayList<>(map.entrySet());
173172
for (Map.Entry<RequestMappingInfo, HandlerMethod> entry : entries) {

0 commit comments

Comments
 (0)