package ru.mcs.metadatabook.config;
import io.swagger.v3.oas.models.OpenAPI;
import io.swagger.v3.oas.models.info.Contact;
import io.swagger.v3.oas.models.info.Info;
import io.swagger.v3.oas.models.info.License;
import io.swagger.v3.oas.models.servers.Server;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.List;
@Configuration
public class OpenApiConfig {
@Bean
public OpenAPI openAPI() {
return new OpenAPI()
.info(new Info()
.title("Book Metadata Service API")
.description("Сервис агрегации и раздачи метаданных книг (ISBN, автор, обложка и т.д.) " +
"с гибким выбором полей через ?fields=, автоматическим обогащением из открытых " +
"источников (Open Library, Google Books, FantLab, опционально LibGen) и очередью " +
"unresolved_lookup для книг, не найденных ни в одном источнике.")
.version("1.0.0")
.contact(new Contact()
.name("Simple Complex")
.email("malexple@gmail.ru"))
.license(new License()
.name("Apache 2.0")
.url("https://www.apache.org/licenses/LICENSE-2.0")))
.servers(List.of(
new Server().url("http://localhost:8080").description("Local Dev")
));
}
}