SpringdocAutoConfiguration
The springdoc bridge (gap): with springdoc on the classpath, the OpenAPI document of the public routes, the one GET /wow/openapi answers (wowOpenApi), joins springdoc's, so that /v3/api-docs and Swagger UI list the application's own controllers and the Wow routes together.
wowOpenApiCustomizer merges the Wow document into springdoc's default document (SpringdocMerge): a route both define (path and method) or a component name both use for different definitions fails the startup, since wowSpringdocStartupCheck renders the default document once the beans are ready, as springdoc's pre-loading does.
wowGroupedOpenApi is the group
wow.http.openapi.springdoc.group(wow,/v3/api-docs/wow): the Wow routes alone, none of the application's. Swagger UI lists the default document first (wowSwaggerUiDefaultDocument), then the groups.The document's security schemes and global
securityare the WowOpenApiSecurity bean's: the host's from its CallerResolver (CoSec's bearer token), unless the application gives its own.The document has the public port's routes alone: the internal port's call routes, cluster channel and signals are never in it.
/v3/api-docsand Swagger UI are springdoc's, guarded by the application's security configuration;GET /wow/openapiis unchanged.
wow.http.openapi.springdoc.enabled=false turns the bridge off.
Functions
The group of the Wow routes alone: none of the application's controllers or router functions.
Merges the Wow routes into springdoc's default document (/v3/api-docs).
The Wow document, rendered once at startup; each springdoc document reads a copy of it.
Renders springdoc's default document once every bean is ready, so that a conflict with the Wow routes fails the startup rather than the first request; springdoc keeps the document it rendered.