DPS v2 Swagger OpenAPI spec generation
The OpenAPI spec is generated using for each setting definition defined as a bean.
The Swagger OpenAPI spec is automatically adapted to use generated payload based on payload class from setting definitions.
Implementation is available in dynamic-processing-settings-open-api-spec module.
How to use it?
Add dependency following dependency into your project
<dependency>
<groupId>com.iconsolutions.ipf.core.dynamicsettings.v2</groupId>
<artifactId>dynamic-processing-settings-open-api-spec</artifactId>
</dependency>
and define new DpsOpenAPISpecConfiguration bean in your configuration.
Features
-
Complex payload classes: Handling complex payload classes from setting definition payload class (e.g. GenericProcessingSettings from csm-reachability). Generating payload in Swagger for all subtypes of payload class loaded into JVM.
-
ConfigurableEnum: support which generate possible values in Swagger OpenAPI from configuration.
-
Extensibility: parent project have ability to extend generated OpenAPI by adding custom logic in setting definition settingDefinitionOpenAPISpecCustomizer.
-
Easy to use: Swagger users can effortlessly test REST endpoints using an automatically generated request skeleton that mirrors the structure of the payload class.