|
40 | 40 | import org.springdoc.core.SpringDocConfigProperties;
|
41 | 41 | import org.springdoc.core.fn.RouterOperation;
|
42 | 42 | import org.springdoc.data.rest.DataRestHalProvider;
|
43 |
| -import org.springdoc.webmvc.api.OpenApiResource; |
44 | 43 |
|
45 | 44 | import org.springframework.data.rest.core.Path;
|
46 | 45 | import org.springframework.data.rest.core.config.RepositoryRestConfiguration;
|
|
53 | 52 | import org.springframework.util.CollectionUtils;
|
54 | 53 | import org.springframework.web.bind.annotation.RequestMethod;
|
55 | 54 | import org.springframework.web.method.HandlerMethod;
|
| 55 | +import org.springframework.web.servlet.mvc.condition.PathPatternsRequestCondition; |
| 56 | +import org.springframework.web.servlet.mvc.condition.PatternsRequestCondition; |
56 | 57 | import org.springframework.web.servlet.mvc.method.RequestMappingInfo;
|
57 | 58 |
|
58 |
| -import static org.springdoc.webmvc.api.OpenApiResource.getActivePatterns; |
59 |
| - |
60 | 59 | /**
|
61 | 60 | * The type Data rest router operation builder.
|
62 | 61 | * @author bnasslahsen
|
@@ -219,7 +218,7 @@ private void buildRouterOperation(List<RouterOperation> routerOperationList, Res
|
219 | 218 | if (!CollectionUtils.isEmpty(requestMethodsCollection))
|
220 | 219 | for (RequestMethod requestMethod : requestMethodsCollection) {
|
221 | 220 | if (!UNDOCUMENTED_REQUEST_METHODS.contains(requestMethod)) {
|
222 |
| - Set<String> patterns = OpenApiResource.getActivePatterns(requestMappingInfo); |
| 221 | + Set<String> patterns = getActivePatterns(requestMappingInfo); |
223 | 222 | if (!CollectionUtils.isEmpty(patterns)) {
|
224 | 223 | Map<String, String> regexMap = new LinkedHashMap<>();
|
225 | 224 | String relationName = dataRestRepository.getRelationName();
|
@@ -344,6 +343,24 @@ private boolean isSearchControllerPresent(RequestMappingInfo requestMappingInfo,
|
344 | 343 | return false;
|
345 | 344 | }
|
346 | 345 |
|
| 346 | + /** |
| 347 | + * Gets active patterns. |
| 348 | + * |
| 349 | + * @param requestMappingInfo the request mapping info |
| 350 | + * @return the active patterns |
| 351 | + */ |
| 352 | + private Set<String> getActivePatterns(RequestMappingInfo requestMappingInfo) { |
| 353 | + Set<String> patterns = null; |
| 354 | + PatternsRequestCondition patternsRequestCondition = requestMappingInfo.getPatternsCondition(); |
| 355 | + if (patternsRequestCondition != null) |
| 356 | + patterns = patternsRequestCondition.getPatterns(); |
| 357 | + else { |
| 358 | + PathPatternsRequestCondition pathPatternsRequestCondition = requestMappingInfo.getPathPatternsCondition(); |
| 359 | + if (pathPatternsRequestCondition != null) |
| 360 | + patterns = pathPatternsRequestCondition.getPatternValues(); |
| 361 | + } |
| 362 | + return patterns; |
| 363 | + } |
347 | 364 | /**
|
348 | 365 | * Is condition one and condition two boolean.
|
349 | 366 | *
|
|
0 commit comments