Class OpenApiExtension

java.lang.Object
dev.relism.flash.ext.openapi.OpenApiExtension
All Implemented Interfaces:
FlashExtension

public class OpenApiExtension extends Object implements FlashExtension
Generates and serves an OpenAPI 3.0 spec and Swagger UI under a configurable base path.

Given basePath = "/openapi" (the default), three routes are registered:

  • GET /openapi.json — OpenAPI 3.0 spec as JSON
  • GET /openapi.yaml — OpenAPI 3.0 spec as YAML
  • GET /openapi/swagger — Swagger UI pointing at /openapi.json

If flash-ext-jackson is installed, this extension reuses its ObjectMapper. Otherwise it uses a local default mapper.

Operations are collected at boot from handlers annotated with ApiOperation that also have route metadata (Route or shorthand verb annotations).


 FlashApp.create(8080)
     .install(new JacksonExtension())
     .install(new OpenApiExtension("/openapi", "My API", "2.0.0"))
     .start();