|
|
@@ -0,0 +1,49 @@
|
|
|
+package com.poteviohealth.cgp.integration.config;
|
|
|
+
|
|
|
+import org.springframework.context.annotation.Bean;
|
|
|
+import org.springframework.context.annotation.Configuration;
|
|
|
+import springfox.documentation.builders.ApiInfoBuilder;
|
|
|
+import springfox.documentation.builders.ParameterBuilder;
|
|
|
+import springfox.documentation.builders.RequestHandlerSelectors;
|
|
|
+import springfox.documentation.schema.ModelRef;
|
|
|
+import springfox.documentation.service.ApiInfo;
|
|
|
+import springfox.documentation.service.Contact;
|
|
|
+import springfox.documentation.service.Parameter;
|
|
|
+import springfox.documentation.spi.DocumentationType;
|
|
|
+import springfox.documentation.spring.web.plugins.Docket;
|
|
|
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author Qin
|
|
|
+ */
|
|
|
+@Configuration
|
|
|
+@EnableSwagger2
|
|
|
+public class SwaggerConfig {
|
|
|
+ @Bean
|
|
|
+ public Docket productApi() {
|
|
|
+ return new Docket(DocumentationType.SWAGGER_2)
|
|
|
+ .select()
|
|
|
+ .apis(RequestHandlerSelectors.basePackage("com.poteviohealth.cgp.partner"))
|
|
|
+// .paths(regex("/product.*"))
|
|
|
+ .build()
|
|
|
+ .globalOperationParameters(setHeaderToken())
|
|
|
+ .apiInfo(metaData());
|
|
|
+ }
|
|
|
+ private List<Parameter> setHeaderToken() {
|
|
|
+ ParameterBuilder tokenPar = new ParameterBuilder();
|
|
|
+ List<Parameter> pars = new ArrayList<>();
|
|
|
+ tokenPar.name("x-token").description("token").modelRef(new ModelRef("string")).parameterType("header").required(false).build();
|
|
|
+ pars.add(tokenPar.build());
|
|
|
+ return pars;
|
|
|
+ }
|
|
|
+ private ApiInfo metaData() {
|
|
|
+ return new ApiInfoBuilder()
|
|
|
+ .title("基础服务")
|
|
|
+ .version("1.1.0")
|
|
|
+ .contact(new Contact("秦阳、路广", "http://www.poteviohealth.com/", "nobody@poteviohealth.com"))
|
|
|
+ .build();
|
|
|
+ }
|
|
|
+}
|