[Kotlin-spring] add springdoc config (#12377)

* Adding Springdoc config to Kotlin-Spring

* Updating relevant samples

* Updating unrelated samples
This commit is contained in:
Johan Sjöblom
2022-05-26 01:56:46 +00:00
committed by GitHub
parent 2ecbf324ef
commit 770c1cb053
9 changed files with 152 additions and 83 deletions

View File

@@ -4,6 +4,7 @@ pom.xml
settings.gradle
src/main/kotlin/org/openapitools/Application.kt
src/main/kotlin/org/openapitools/HomeController.kt
src/main/kotlin/org/openapitools/SpringDocConfiguration.kt
src/main/kotlin/org/openapitools/api/ApiUtil.kt
src/main/kotlin/org/openapitools/api/Exceptions.kt
src/main/kotlin/org/openapitools/api/PetApi.kt

View File

@@ -0,0 +1,43 @@
package org.openapitools
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import io.swagger.v3.oas.models.OpenAPI
import io.swagger.v3.oas.models.info.Info
import io.swagger.v3.oas.models.info.Contact
import io.swagger.v3.oas.models.info.License
import io.swagger.v3.oas.models.Components
import io.swagger.v3.oas.models.security.SecurityScheme
@jakarta.annotation.Generated(value = ["org.openapitools.codegen.languages.KotlinSpringServerCodegen"])
@Configuration
class SpringDocConfiguration {
@Bean
fun apiInfo(): OpenAPI {
return OpenAPI()
.info(
Info()
.title("OpenAPI Petstore")
.description("This is a sample server Petstore server. For this sample, you can use the api key `special-key` to test the authorization filters.")
.license(
License()
.name("Apache-2.0")
.url("https://www.apache.org/licenses/LICENSE-2.0.html")
)
.version("1.0.0")
)
.components(
Components()
.addSecuritySchemes("api_key", SecurityScheme()
.type(SecurityScheme.Type.APIKEY)
.`in`(SecurityScheme.In.HEADER)
.name("api_key")
)
.addSecuritySchemes("petstore_auth", SecurityScheme()
.type(SecurityScheme.Type.OAUTH2)
)
)
}
}