| | |
| | | package com.panzhihua.zuul.config; |
| | | |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.cloud.netflix.zuul.filters.Route; |
| | | import java.text.MessageFormat; |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | import org.springframework.cloud.netflix.zuul.filters.RouteLocator; |
| | | import org.springframework.context.MessageSource; |
| | | import org.springframework.context.annotation.Bean; |
| | | import org.springframework.context.annotation.Configuration; |
| | | import org.springframework.context.annotation.Primary; |
| | | import springfox.documentation.builders.PathSelectors; |
| | | import springfox.documentation.builders.RequestHandlerSelectors; |
| | | import springfox.documentation.spi.DocumentationType; |
| | | import springfox.documentation.spring.web.plugins.Docket; |
| | | |
| | | import springfox.documentation.swagger.web.SwaggerResource; |
| | | import springfox.documentation.swagger.web.SwaggerResourcesProvider; |
| | | import springfox.documentation.swagger2.annotations.EnableSwagger2; |
| | | |
| | | import java.text.MessageFormat; |
| | | import java.util.*; |
| | | |
| | | import static java.util.stream.Collectors.collectingAndThen; |
| | | import static java.util.stream.Collectors.toCollection; |
| | | |
| | | /** |
| | | * @program: springcloud_k8s_panzhihuazhihuishequ |
| | |
| | | @Primary |
| | | public class SwaggerConfig implements SwaggerResourcesProvider { |
| | | |
| | | //RouteLocator可以根据zuul配置的路由列表获取服务 |
| | | // RouteLocator可以根据zuul配置的路由列表获取服务 |
| | | private final RouteLocator routeLocator; |
| | | |
| | | private String[]ids=new String[]{"appletsbackstage","applets","communitybackstage", "shopbackstage","gridbackstage", "gridapp"}; |
| | | private String[] ids = |
| | | new String[] {"appletsbackstage", "applets", "communitybackstage", "shopbackstage", "gridbackstage", "gridapp"}; |
| | | |
| | | public SwaggerConfig(RouteLocator routeLocator) { |
| | | this.routeLocator = routeLocator; |
| | | } |
| | | |
| | | /** |
| | | * Gets a result. |
| | | * |
| | |
| | | @Override |
| | | public List<SwaggerResource> get() { |
| | | List resources = new ArrayList(); |
| | | Arrays.asList(ids).forEach(id->{ |
| | | Arrays.asList(ids).forEach(id -> { |
| | | resources.add(swaggerResource(id, MessageFormat.format("/api/{0}/v2/api-docs", id), "1.0")); |
| | | }); |
| | | return resources; |
| | |
| | | swaggerResource.setSwaggerVersion(version); |
| | | return swaggerResource; |
| | | } |
| | | |
| | | |
| | | } |