diff options
Diffstat (limited to 'sdnc_report_api_sdnc_253_story/sdnc_reports_service/src/main/java/com/onap/sdnc/reports/config/SwaggerConfig.java')
-rw-r--r-- | sdnc_report_api_sdnc_253_story/sdnc_reports_service/src/main/java/com/onap/sdnc/reports/config/SwaggerConfig.java | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/sdnc_report_api_sdnc_253_story/sdnc_reports_service/src/main/java/com/onap/sdnc/reports/config/SwaggerConfig.java b/sdnc_report_api_sdnc_253_story/sdnc_reports_service/src/main/java/com/onap/sdnc/reports/config/SwaggerConfig.java new file mode 100644 index 0000000..5117102 --- /dev/null +++ b/sdnc_report_api_sdnc_253_story/sdnc_reports_service/src/main/java/com/onap/sdnc/reports/config/SwaggerConfig.java @@ -0,0 +1,61 @@ +package com.onap.sdnc.reports.config; + +import static springfox.documentation.builders.PathSelectors.regex; + +import javax.xml.datatype.XMLGregorianCalendar; + +import org.springframework.boot.autoconfigure.domain.EntityScan; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Profile; +import org.springframework.data.jpa.repository.config.EnableJpaRepositories; + +import com.fasterxml.jackson.annotation.JsonIgnore; + +import springfox.documentation.builders.ApiInfoBuilder; +import springfox.documentation.service.ApiInfo; +import springfox.documentation.spi.DocumentationType; +import springfox.documentation.spring.web.plugins.Docket; +import springfox.documentation.swagger2.annotations.EnableSwagger2; + +@Configuration +@EnableJpaRepositories("com.onap.sdnc.reports.repository") +@EntityScan("com.onap.sdnc.reports.*") +@EnableSwagger2 +//@Profile("!test") +public class SwaggerConfig { + + @Bean + public Docket newsApi() { + return new Docket(DocumentationType.SWAGGER_2) + .groupName("sdncreport") + .apiInfo(apiInfo()) + .select() + .paths(regex("/sdnc/report/.*")) + // .paths(PathSelectors.any()) + .build() + .directModelSubstitute(XMLGregorianCalendar.class, MixIn.class); + } + + public static interface MixIn { + @JsonIgnore + public void setYear(int year); + } + + /** + * + * @return + */ + private ApiInfo apiInfo() { + return new ApiInfoBuilder() + .title("SDNC Report Service REST APIs") + .description("SDNC Report Microservice REST APIs") + .termsOfServiceUrl("http://....") + .contact("TechMahindra") + .license("TechMahindra Licensed") + .licenseUrl("https://techmahindra.com") + .version("2.0") + .build(); + } + +} |