package com.gx.obe.server.config;



import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**  
 * @Title:  SwaggerConfig.java   
 * @Package com.gx.obe.server.config   
 * @Description:    Swagger 配置  
 * @author: XiaoMaPro     
 * @date:   2019年4月22日 下午6:33:32   
 * @version V1.0 
 * @Copyright: 2018 - 2019 www.myspro.com Inc. All rights reserved. 
 *  
 */
@Configuration
@ConditionalOnClass(Docket.class)
@EnableSwagger2
public class SwaggerConfig {
	
    @Bean
    public Docket buildDocket() {
	    return new Docket(DocumentationType.SWAGGER_2)
	    		//调用下面apiInfo()方法
	            .apiInfo(apiInfo())
	            .select()
	            //Controller所在路径
	            .apis(RequestHandlerSelectors.basePackage("com.gx.obe.server"))
	            .paths(PathSelectors.any())
	            .build();
    }

    public ApiInfo apiInfo() {
    	return new ApiInfoBuilder().title("Server API").termsOfServiceUrl("https://www.baidu.com")
    	 	.contact(new Contact("Server API", "http://www.baidu.com", "myzhichao@163.com")).version("1.0.0").build();
    }
}