OpenAPIAutoConfiguration

@AutoConfiguration
@ConditionalOnClass(name = ["me.ahoo.wow.openapi.RouterSpecs"])
@EnableConfigurationProperties(value = [OpenAPIProperties::class])
class OpenAPIAutoConfiguration

Constructors

Link copied to clipboard
constructor()

Types

Link copied to clipboard
@Configuration(proxyBeanMethods = false)
@ConditionalOnClass(name = ["org.springdoc.core.customizers.OpenApiCustomizer"])
class SpringdocConfiguration

Functions

Link copied to clipboard
@Bean
@ConditionalOnMissingBean(value = [OpenAPIComponentContext::class])
fun openAPIComponentContext(@Qualifier(value = "wow.CurrentBoundedContext") currentContext: NamedBoundedContext): OpenAPIComponentContext
Link copied to clipboard
@Bean
fun routerSpecs(@Qualifier(value = "wow.CurrentBoundedContext") boundedContext: NamedBoundedContext, openAPIComponentContext: OpenAPIComponentContext, routeContributors: ObjectProvider<RouteContributor>, eventCompensateSupporter: ObjectProvider<EventCompensateSupporter>, openAPIProperties: OpenAPIProperties): RouterSpecs

The route catalog: the default routes plus every RouteContributor bean (the BI script route, for one, comes from the BI auto-configuration when wow-bi is on the classpath). The event compensate route needs an EventCompensateSupporter (registered by the compensation auto-configuration); without one its contract is left out, so neither the router nor the OpenAPI document offers a route that has no handler. The aggregated query request bodies list the fields the QuerySchemaSource beans declare, under the QuerySensitivityPolicy, as the query schema Catalog merges them.