diff --git a/application-config/build.gradle b/application-config/build.gradle index a6b89a70..788a7e3f 100644 --- a/application-config/build.gradle +++ b/application-config/build.gradle @@ -11,4 +11,6 @@ repositories { dependencies { api 'org.springframework.boot:spring-boot-starter-web' + // SWAGGER + implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.6.0' } diff --git a/application-config/src/main/java/com/nowait/config/config/SwaggerConfig.java b/application-config/src/main/java/com/nowait/config/config/SwaggerConfig.java new file mode 100644 index 00000000..7c6454c0 --- /dev/null +++ b/application-config/src/main/java/com/nowait/config/config/SwaggerConfig.java @@ -0,0 +1,30 @@ +package com.nowait.config.config; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import io.swagger.v3.oas.models.Components; +import io.swagger.v3.oas.models.OpenAPI; +import io.swagger.v3.oas.models.info.Info; +import io.swagger.v3.oas.models.security.SecurityRequirement; +import io.swagger.v3.oas.models.security.SecurityScheme; + +@Configuration +public class SwaggerConfig { + + @Bean + public OpenAPI openAPI() { + return new OpenAPI() + .addSecurityItem(new SecurityRequirement().addList("JWT")) + .components(new Components() + .addSecuritySchemes("JWT", new SecurityScheme() + .name("Authorization") + .type(SecurityScheme.Type.HTTP) + .scheme("bearer") + .bearerFormat("JWT") + .in(SecurityScheme.In.HEADER))) + .info(new Info().title("NOWAIT API") + .description("NOWAIT API Specification") + .version("v0.0.1")); + } +}