Package org.springdoc.webmvc.api
Class OpenApiWebMvcResource
- java.lang.Object
-
- io.swagger.v3.core.filter.SpecFilter
-
- org.springdoc.api.AbstractOpenApiResource
-
- org.springdoc.webmvc.api.OpenApiResource
-
- org.springdoc.webmvc.api.OpenApiWebMvcResource
-
@RestController public class OpenApiWebMvcResource extends OpenApiResource
The type Open api resource.- Author:
- bnasslahsen
-
-
Field Summary
-
Fields inherited from class org.springdoc.api.AbstractOpenApiResource
groupName, openAPIService, springDocConfigProperties, springDocProviders
-
-
Constructor Summary
Constructors Constructor Description OpenApiWebMvcResource(String groupName, org.springframework.beans.factory.ObjectFactory<OpenAPIService> openAPIBuilderObjectFactory, AbstractRequestService requestBuilder, GenericResponseService responseBuilder, OperationService operationParser, Optional<List<OperationCustomizer>> operationCustomizers, Optional<List<OpenApiCustomiser>> openApiCustomisers, Optional<List<RouterOperationCustomizer>> routerOperationCustomizers, Optional<List<OpenApiMethodFilter>> methodFilters, SpringDocConfigProperties springDocConfigProperties, SpringDocProviders springDocProviders)
Instantiates a new Open api web mvc resource.OpenApiWebMvcResource(org.springframework.beans.factory.ObjectFactory<OpenAPIService> openAPIBuilderObjectFactory, AbstractRequestService requestBuilder, GenericResponseService responseBuilder, OperationService operationParser, Optional<List<OperationCustomizer>> operationCustomizers, Optional<List<OpenApiCustomiser>> openApiCustomisers, Optional<List<RouterOperationCustomizer>> routerOperationCustomizers, Optional<List<OpenApiMethodFilter>> methodFilters, SpringDocConfigProperties springDocConfigProperties, SpringDocProviders springDocProviders)
Instantiates a new Open api web mvc resource.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
getServerUrl(javax.servlet.http.HttpServletRequest request, String apiDocsUrl)
Gets server url.String
openapiJson(javax.servlet.http.HttpServletRequest request, String apiDocsUrl, Locale locale)
Openapi json string.String
openapiYaml(javax.servlet.http.HttpServletRequest request, String apiDocsUrl, Locale locale)
Openapi yaml string.-
Methods inherited from class org.springdoc.webmvc.api.OpenApiResource
calculatePath, calculateServerUrl, getPaths
-
Methods inherited from class org.springdoc.api.AbstractOpenApiResource
addHiddenRestControllers, addHiddenRestControllers, addRestControllers, calculatePath, calculatePath, calculatePath, calculatePath, containsResponseBody, customizeOperation, customizeRouterOperation, decode, getActuatorURI, getDefaultAllowedHttpMethods, getOpenApi, getRouterFunctionPaths, initOpenAPIBuilder, isActuatorRestController, isAdditionalRestController, isConditionToMatch, isFilterCondition, isHiddenRestControllers, isMethodToFilter, isPackageToScan, isPathToMatch, isRestController, mergeRouters, setModelAndViewClass, writeJsonValue, writeYamlValue
-
-
-
-
Constructor Detail
-
OpenApiWebMvcResource
public OpenApiWebMvcResource(String groupName, org.springframework.beans.factory.ObjectFactory<OpenAPIService> openAPIBuilderObjectFactory, AbstractRequestService requestBuilder, GenericResponseService responseBuilder, OperationService operationParser, Optional<List<OperationCustomizer>> operationCustomizers, Optional<List<OpenApiCustomiser>> openApiCustomisers, Optional<List<RouterOperationCustomizer>> routerOperationCustomizers, Optional<List<OpenApiMethodFilter>> methodFilters, SpringDocConfigProperties springDocConfigProperties, SpringDocProviders springDocProviders)
Instantiates a new Open api web mvc resource.- Parameters:
groupName
- the group nameopenAPIBuilderObjectFactory
- the open api builder object factoryrequestBuilder
- the request builderresponseBuilder
- the response builderoperationParser
- the operation parseroperationCustomizers
- the operation customizersopenApiCustomisers
- the open api customisersrouterOperationCustomizers
- the router operation customizersmethodFilters
- the method filtersspringDocConfigProperties
- the spring doc config propertiesspringDocProviders
- the spring doc providers
-
OpenApiWebMvcResource
@Autowired public OpenApiWebMvcResource(org.springframework.beans.factory.ObjectFactory<OpenAPIService> openAPIBuilderObjectFactory, AbstractRequestService requestBuilder, GenericResponseService responseBuilder, OperationService operationParser, Optional<List<OperationCustomizer>> operationCustomizers, Optional<List<OpenApiCustomiser>> openApiCustomisers, Optional<List<RouterOperationCustomizer>> routerOperationCustomizers, Optional<List<OpenApiMethodFilter>> methodFilters, SpringDocConfigProperties springDocConfigProperties, SpringDocProviders springDocProviders)
Instantiates a new Open api web mvc resource.- Parameters:
openAPIBuilderObjectFactory
- the open api builder object factoryrequestBuilder
- the request builderresponseBuilder
- the response builderoperationParser
- the operation parseroperationCustomizers
- the operation customizersopenApiCustomisers
- the open api customisersrouterOperationCustomizers
- the router operation customizersmethodFilters
- the method filtersspringDocConfigProperties
- the spring doc config propertiesspringDocProviders
- the spring doc providers
-
-
Method Detail
-
openapiJson
@GetMapping(value="${springdoc.api-docs.path:#{T(org.springdoc.core.Constants).DEFAULT_API_DOCS_URL}}", produces="application/json") public String openapiJson(javax.servlet.http.HttpServletRequest request, @Value("${springdoc.api-docs.path:#{T(org.springdoc.core.Constants).DEFAULT_API_DOCS_URL}}") String apiDocsUrl, Locale locale) throws com.fasterxml.jackson.core.JsonProcessingException
Openapi json string.- Overrides:
openapiJson
in classOpenApiResource
- Parameters:
request
- the requestapiDocsUrl
- the api docs urllocale
- the locale- Returns:
- the string
- Throws:
com.fasterxml.jackson.core.JsonProcessingException
- the json processing exception
-
openapiYaml
@GetMapping(value="${springdoc.api-docs.path:#{T(org.springdoc.core.Constants).DEFAULT_API_DOCS_URL}}.yaml", produces="application/vnd.oai.openapi") public String openapiYaml(javax.servlet.http.HttpServletRequest request, @Value("${springdoc.api-docs.path:#{T(org.springdoc.core.Constants).DEFAULT_API_DOCS_URL}}.yaml") String apiDocsUrl, Locale locale) throws com.fasterxml.jackson.core.JsonProcessingException
Openapi yaml string.- Overrides:
openapiYaml
in classOpenApiResource
- Parameters:
request
- the requestapiDocsUrl
- the api docs urllocale
- the locale- Returns:
- the string
- Throws:
com.fasterxml.jackson.core.JsonProcessingException
- the json processing exception
-
getServerUrl
protected String getServerUrl(javax.servlet.http.HttpServletRequest request, String apiDocsUrl)
Gets server url.- Specified by:
getServerUrl
in classOpenApiResource
- Parameters:
request
- the requestapiDocsUrl
- the api docs url- Returns:
- the server url
-
-