diff --git a/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvideConfig.java b/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvideConfig.java index 1fac274..1e2c27d 100644 --- a/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvideConfig.java +++ b/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvideConfig.java @@ -18,7 +18,7 @@ import java.util.Map; /** * - * @description swagger聚合配置 + * @description swagger聚合 * @author Enzo * @date 2020-08-16 13:09 */ diff --git a/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvider.java b/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvider.java deleted file mode 100644 index eafbf21..0000000 --- a/cdp-iaas/gateway-server/src/main/java/com/baiye/config/SwaggerProvider.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.baiye.config; - -import lombok.AllArgsConstructor; -import org.springframework.cloud.gateway.config.GatewayProperties; -import org.springframework.cloud.gateway.route.RouteLocator; -import org.springframework.cloud.gateway.support.NameUtils; -import org.springframework.context.annotation.Primary; -import org.springframework.stereotype.Component; -import springfox.documentation.swagger.web.SwaggerResource; -import springfox.documentation.swagger.web.SwaggerResourcesProvider; - -import java.util.ArrayList; -import java.util.List; - - -@Primary -@Component -@AllArgsConstructor -public class SwaggerProvider implements SwaggerResourcesProvider { - - public static final String API_URI = "/v2/api-docs"; - private final RouteLocator routeLocator; - private final GatewayProperties gatewayProperties; - - @Override - public List get() { - List resources = new ArrayList<>(); - List routes = new ArrayList<>(); - routeLocator.getRoutes().subscribe(route -> routes.add(route.getId())); - gatewayProperties.getRoutes().stream() - .filter(routeDefinition -> routes.contains(routeDefinition.getId())) - .forEach(routeDefinition -> routeDefinition.getPredicates().stream() - .filter(predicateDefinition -> ("Path").equalsIgnoreCase(predicateDefinition.getName())) - .forEach(predicateDefinition -> resources - .add(swaggerResource(routeDefinition.getId(), predicateDefinition.getArgs() - .get(NameUtils.GENERATED_NAME_PREFIX + "0").replace("/**", API_URI))))); - return resources; - } - - private SwaggerResource swaggerResource(String name, String url) { - SwaggerResource swaggerResource = new SwaggerResource(); - swaggerResource.setName(name); - swaggerResource.setUrl(url); - swaggerResource.setSwaggerVersion("2.0"); - return swaggerResource; - } -} - - -