SwaggerConfig.java 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package com.its.cctv.config;
  2. import org.springframework.context.annotation.Bean;
  3. import org.springframework.context.annotation.Configuration;
  4. import org.springframework.http.HttpHeaders;
  5. import springfox.documentation.builders.ApiInfoBuilder;
  6. import springfox.documentation.builders.ParameterBuilder;
  7. import springfox.documentation.builders.PathSelectors;
  8. import springfox.documentation.builders.RequestHandlerSelectors;
  9. import springfox.documentation.schema.ModelRef;
  10. import springfox.documentation.service.ApiInfo;
  11. import springfox.documentation.service.Parameter;
  12. import springfox.documentation.spi.DocumentationType;
  13. import springfox.documentation.spring.web.plugins.Docket;
  14. import springfox.documentation.swagger2.annotations.EnableSwagger2;
  15. import java.util.ArrayList;
  16. import java.util.List;
  17. @Configuration
  18. @EnableSwagger2
  19. public class SwaggerConfig {
  20. @Bean
  21. public Docket commonApi() {
  22. Parameter parameterBuilder = new ParameterBuilder()
  23. .name(HttpHeaders.AUTHORIZATION)
  24. .description("Access Token")
  25. .modelRef(new ModelRef("string"))
  26. .parameterType("header")
  27. .required(false)
  28. .build();
  29. List<Parameter> globalParameters = new ArrayList<>();
  30. globalParameters.add(parameterBuilder);
  31. return new Docket(DocumentationType.SWAGGER_2)
  32. .globalOperationParameters(globalParameters)
  33. .groupName("cctv-api")
  34. .apiInfo(this.apiInfo())
  35. .select()
  36. .apis(RequestHandlerSelectors.basePackage("com.its.cctv.api.controller"))
  37. .paths(PathSelectors.any())
  38. //.paths(PathSelectors.ant("/api/**"))
  39. .build();
  40. }
  41. private ApiInfo apiInfo() {
  42. return new ApiInfoBuilder()
  43. .title("CCTV Control API")
  44. .description("CCTV Communication Server API")
  45. .version("0.0.1")
  46. .build();
  47. }
  48. }