Package org.springdoc.webflux.api
Class OpenApiWebfluxResource
java.lang.Object
io.swagger.v3.core.filter.SpecFilter
org.springdoc.api.AbstractOpenApiResource
org.springdoc.webflux.api.OpenApiResource
org.springdoc.webflux.api.OpenApiWebfluxResource
The type Open api resource.
- Author:
- bnasslahsen
-
Field Summary
Fields inherited from class org.springdoc.api.AbstractOpenApiResource
groupName, openAPIService, springDocConfigProperties, springDocProviders
-
Constructor Summary
ConstructorsConstructorDescriptionOpenApiWebfluxResource
(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 webflux resource.OpenApiWebfluxResource
(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 webflux resource. -
Method Summary
Modifier and TypeMethodDescriptionprotected String
getServerUrl
(org.springframework.http.server.reactive.ServerHttpRequest serverHttpRequest, String apiDocsUrl) Gets server url.reactor.core.publisher.Mono<String>
openapiJson
(org.springframework.http.server.reactive.ServerHttpRequest serverHttpRequest, String apiDocsUrl, Locale locale) Openapi json mono.reactor.core.publisher.Mono<String>
openapiYaml
(org.springframework.http.server.reactive.ServerHttpRequest serverHttpRequest, String apiDocsUrl, Locale locale) Openapi yaml mono.Methods inherited from class org.springdoc.webflux.api.OpenApiResource
calculatePath, calculateServerUrl, getPaths, getWebFluxRouterFunctionPaths
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
Methods inherited from class io.swagger.v3.core.filter.SpecFilter
filter, filterComponentsSchema, filterOpenAPI, filterOperation, filterParameter, filterPathItem, filterRequestBody, filterResponse, locateReferencedDefinitions, removeBrokenReferenceDefinitions, resolveAllNestedRefs
-
Constructor Details
-
OpenApiWebfluxResource
public OpenApiWebfluxResource(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 webflux 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
-
OpenApiWebfluxResource
@Autowired public OpenApiWebfluxResource(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 webflux 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 Details
-
openapiJson
@GetMapping(value="${springdoc.api-docs.path:#{T(org.springdoc.core.Constants).DEFAULT_API_DOCS_URL}}", produces="application/json") public reactor.core.publisher.Mono<String> openapiJson(org.springframework.http.server.reactive.ServerHttpRequest serverHttpRequest, @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 mono.- Overrides:
openapiJson
in classOpenApiResource
- Parameters:
serverHttpRequest
- the server http requestapiDocsUrl
- the api docs urllocale
- the locale- Returns:
- the mono
- 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 reactor.core.publisher.Mono<String> openapiYaml(org.springframework.http.server.reactive.ServerHttpRequest serverHttpRequest, @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 mono.- Overrides:
openapiYaml
in classOpenApiResource
- Parameters:
serverHttpRequest
- the server http requestapiDocsUrl
- the api docs urllocale
- the locale- Returns:
- the mono
- Throws:
com.fasterxml.jackson.core.JsonProcessingException
- the json processing exception
-
getServerUrl
protected String getServerUrl(org.springframework.http.server.reactive.ServerHttpRequest serverHttpRequest, String apiDocsUrl) Gets server url.- Specified by:
getServerUrl
in classOpenApiResource
- Parameters:
serverHttpRequest
- the server http requestapiDocsUrl
- the api docs url- Returns:
- the server url
-