From a97ca9f9f139e05cd965069d33db8ae05ff6e588 Mon Sep 17 00:00:00 2001 From: Spencer Gibb Date: Wed, 15 Mar 2017 10:48:53 -0600 Subject: [PATCH] Rename RouteFilter to WebFilterFactory --- .../main/asciidoc/spring-cloud-gateway.adoc | 66 ++++++------- .../gateway/actuate/GatewayEndpoint.java | 10 +- .../config/GatewayAutoConfiguration.java | 94 +++++++++---------- .../gateway/config/GatewayProperties.java | 4 +- .../DiscoveryClientRouteLocator.java | 4 +- ... => AddRequestHeaderWebFilterFactory.java} | 2 +- ... AddRequestParameterWebFilterFactory.java} | 2 +- ...=> AddResponseHeaderWebFilterFactory.java} | 2 +- ...lter.java => HystrixWebFilterFactory.java} | 2 +- ...r.java => PrefixPathWebFilterFactory.java} | 2 +- ...r.java => RedirectToWebFilterFactory.java} | 2 +- ...emoveNonProxyHeadersWebFilterFactory.java} | 2 +- ... RemoveRequestHeaderWebFilterFactory.java} | 2 +- ...RemoveResponseHeaderWebFilterFactory.java} | 2 +- ....java => RewritePathWebFilterFactory.java} | 2 +- ...ava => SecureHeadersWebFilterFactory.java} | 4 +- ...lter.java => SetPathWebFilterFactory.java} | 2 +- ...=> SetResponseHeaderWebFilterFactory.java} | 2 +- ...er.java => SetStatusWebFilterFactory.java} | 2 +- ...RouteFilter.java => WebFilterFactory.java} | 5 +- .../gateway/handler/FilteringWebHandler.java | 24 ++--- .../predicate/RequestPredicateFactory.java | 1 + .../cloud/gateway/support/NameUtils.java | 6 +- ...ddRequestHeaderWebFilterFactoryTests.java} | 2 +- ...equestParameterWebFilterFactoryTests.java} | 2 +- ...java => HystrixWebFilterFactoryTests.java} | 2 +- ...a => RedirectToWebFilterFactoryTests.java} | 2 +- ...NonProxyHeadersWebFilterFactoryTests.java} | 4 +- ...veRequestHeaderWebFilterFactoryTests.java} | 2 +- ...eResponseHeaderWebFilterFactoryTests.java} | 2 +- ...PathWebFilterFactoryIntegrationTests.java} | 2 +- ... => RewritePathWebFilterFactoryTests.java} | 4 +- ...> SecureHeadersWebFilterFactoryTests.java} | 18 ++-- ...PathWebFilterFactoryIntegrationTests.java} | 2 +- ...java => SetPathWebFilterFactoryTests.java} | 4 +- ... => SetResponseWebFilterFactoryTests.java} | 2 +- ...va => SetStatusWebFilterFactoryTests.java} | 2 +- .../cloud/gateway/test/AdhocTestSuite.java | 54 +++++------ 38 files changed, 176 insertions(+), 172 deletions(-) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{AddRequestHeaderRouteFilter.java => AddRequestHeaderWebFilterFactory.java} (93%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{AddRequestParameterRouteFilter.java => AddRequestParameterWebFilterFactory.java} (98%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{AddResponseHeaderRouteFilter.java => AddResponseHeaderWebFilterFactory.java} (93%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{HystrixRouteFilter.java => HystrixWebFilterFactory.java} (97%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{PrefixPathRouteFilter.java => PrefixPathWebFilterFactory.java} (94%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{RedirectToRouteFilter.java => RedirectToWebFilterFactory.java} (96%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{RemoveNonProxyHeadersRouteFilter.java => RemoveNonProxyHeadersWebFilterFactory.java} (96%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{RemoveRequestHeaderRouteFilter.java => RemoveRequestHeaderWebFilterFactory.java} (94%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{RemoveResponseHeaderRouteFilter.java => RemoveResponseHeaderWebFilterFactory.java} (92%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{RewritePathRouteFilter.java => RewritePathWebFilterFactory.java} (94%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{SecureHeadersRouteFilter.java => SecureHeadersWebFilterFactory.java} (94%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{SetPathRouteFilter.java => SetPathWebFilterFactory.java} (96%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{SetResponseHeaderRouteFilter.java => SetResponseHeaderWebFilterFactory.java} (93%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{SetStatusRouteFilter.java => SetStatusWebFilterFactory.java} (96%) rename spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/{RouteFilter.java => WebFilterFactory.java} (90%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{AddRequestHeaderRouteFilterIntegrationTests.java => AddRequestHeaderWebFilterFactoryTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{AddRequestParameterRouteFilterIntegrationTests.java => AddRequestParameterWebFilterFactoryTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{HystrixRouteFilterIntegrationTests.java => HystrixWebFilterFactoryTests.java} (97%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{RedirectToRouteFilterIntegrationTests.java => RedirectToWebFilterFactoryTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{RemoveNonProxyHeadersRouteFilterIntegrationTests.java => RemoveNonProxyHeadersWebFilterFactoryTests.java} (94%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{RemoveRequestHeaderRouteFilterIntegrationTests.java => RemoveRequestHeaderWebFilterFactoryTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{RemoveResponseHeaderRouteFilterIntegrationTests.java => RemoveResponseHeaderWebFilterFactoryTests.java} (95%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{RewritePathRouteFilterIntegrationTests.java => RewritePathWebFilterFactoryIntegrationTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{RewritePathRouteFilterTests.java => RewritePathWebFilterFactoryTests.java} (94%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{SecureHeadersRouteFilterIntegrationTests.java => SecureHeadersWebFilterFactoryTests.java} (87%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{SetPathRouteFilterIntegrationTests.java => SetPathWebFilterFactoryIntegrationTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{SetPathRouteFilterTests.java => SetPathWebFilterFactoryTests.java} (95%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{SetResponseRouteFilterIntegrationTests.java => SetResponseWebFilterFactoryTests.java} (96%) rename spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/{SetStatusRouteFilterIntegrationTests.java => SetStatusWebFilterFactoryTests.java} (96%) diff --git a/docs/src/main/asciidoc/spring-cloud-gateway.adoc b/docs/src/main/asciidoc/spring-cloud-gateway.adoc index 27c22401..48e6d5a9 100644 --- a/docs/src/main/asciidoc/spring-cloud-gateway.adoc +++ b/docs/src/main/asciidoc/spring-cloud-gateway.adoc @@ -139,7 +139,7 @@ spring: This route would match if the request path was, for example: `/foo/1` or `/foo/bar`. -This predicate extracts the URI template variables (like `segment` defined in the example above) as a map of names and values and places it in the `ServerWebExchange.getAttributes()` with a key defined in `PathRoutePredicate.URL_PREDICATE_VARS_ATTR`. Those values are then available for use by <> +This predicate extracts the URI template variables (like `segment` defined in the example above) as a map of names and values and places it in the `ServerWebExchange.getAttributes()` with a key defined in `PathRoutePredicate.URL_PREDICATE_VARS_ATTR`. Those values are then available for use by <> === Query Request Predicate Factory TODO: document Query Request Predicate Factory @@ -148,51 +148,51 @@ TODO: document Query Request Predicate Factory TODO: document RemoteAddr Request Predicate Factory [[gateway-route-filters]] -== Route Filters +== WebFilter Factorys -Route filters allow the modification of the incoming HTTP request or outgoing HTTP response in some manner. Route filters are scoped to a particular route. Spring Cloud Gateway includes many built-in Route Filters. +Route filters allow the modification of the incoming HTTP request or outgoing HTTP response in some manner. Route filters are scoped to a particular route. Spring Cloud Gateway includes many built-in WebFilter Factories. -=== AddRequestHeader Route Filter -TODO: document AddRequestHeader Route Filter +=== AddRequestHeader WebFilter Factory +TODO: document AddRequestHeader WebFilter Factory -=== AddRequestParameter Route Filter -TODO: document AddRequestParameter Route Filter +=== AddRequestParameter WebFilter Factory +TODO: document AddRequestParameter WebFilter Factory -=== AddResponseHeader Route Filter -TODO: document AddResponseHeader Route Filter +=== AddResponseHeader WebFilter Factory +TODO: document AddResponseHeader WebFilter Factory -=== Hystrix Route Filter -TODO: document Hystrix Route Filter +=== Hystrix WebFilter Factory +TODO: document Hystrix WebFilter Factory -=== PrefixPath Route Filter -TODO: document PrefixPath Route Filter +=== PrefixPath WebFilter Factory +TODO: document PrefixPath WebFilter Factory -=== RedirectTo Route Filter -TODO: document RedirectTo Route Filter +=== RedirectTo WebFilter Factory +TODO: document RedirectTo WebFilter Factory -=== RemoveNonProxyHeaders Route Filter -TODO: document RemoveNonProxyHeaders Route Filter +=== RemoveNonProxyHeaders WebFilter Factory +TODO: document RemoveNonProxyHeaders WebFilter Factory -=== RemoveRequestHeader Route Filter -TODO: document RemoveRequestHeader Route Filter +=== RemoveRequestHeader WebFilter Factory +TODO: document RemoveRequestHeader WebFilter Factory -=== RemoveResponseHeader Route Filter -TODO: document RemoveResponseHeader Route Filter +=== RemoveResponseHeader WebFilter Factory +TODO: document RemoveResponseHeader WebFilter Factory -=== RewritePath Route Filter -TODO: document RewritePath Route Filter +=== RewritePath WebFilter Factory +TODO: document RewritePath WebFilter Factory -=== SecureHeaders Route Filter -TODO: document SecureHeaders Route Filter +=== SecureHeaders WebFilter Factory +TODO: document SecureHeaders WebFilter Factory -=== SetPath Route Filter -TODO: document SetPath Route Filter +=== SetPath WebFilter Factory +TODO: document SetPath WebFilter Factory -=== SetResponseHeader Route Filter -TODO: document SetResponseHeader Route Filter +=== SetResponseHeader WebFilter Factory +TODO: document SetResponseHeader WebFilter Factory -=== SetStatus Route Filter -TODO: document SetStatus Route Filter +=== SetStatus WebFilter Factory +TODO: document SetStatus WebFilter Factory == Global Filters @@ -214,9 +214,9 @@ TODO: overview of writing custom integrations TODO: document writing Custom Request Predicate Factorys -=== Writing Custom Route Filters +=== Writing Custom WebFilter Factorys -TODO: document writing Custom Route Filters +TODO: document writing Custom WebFilter Factorys === Writing Custom Global Filters diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/actuate/GatewayEndpoint.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/actuate/GatewayEndpoint.java index b672924f..a93f9c2f 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/actuate/GatewayEndpoint.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/actuate/GatewayEndpoint.java @@ -29,7 +29,7 @@ import org.springframework.cloud.gateway.model.Route; import org.springframework.cloud.gateway.api.RouteLocator; import org.springframework.cloud.gateway.api.RouteWriter; import org.springframework.cloud.gateway.filter.GlobalFilter; -import org.springframework.cloud.gateway.filter.route.RouteFilter; +import org.springframework.cloud.gateway.filter.route.WebFilterFactory; import org.springframework.cloud.gateway.handler.FilteringWebHandler; import org.springframework.cloud.gateway.support.NotFoundException; import org.springframework.cloud.gateway.support.RefreshRoutesEvent; @@ -60,18 +60,18 @@ public class GatewayEndpoint implements ApplicationEventPublisherAware {/*extend private RouteLocator routeLocator; private List globalFilters; - private List routeFilters; + private List webFilterFactories; private FilteringWebHandler filteringWebHandler; private RouteWriter routeWriter; private ApplicationEventPublisher publisher; public GatewayEndpoint(RouteLocator routeLocator, List globalFilters, - List routeFilters, FilteringWebHandler filteringWebHandler, + List webFilterFactories, FilteringWebHandler filteringWebHandler, RouteWriter routeWriter) { //super("gateway"); this.routeLocator = routeLocator; this.globalFilters = globalFilters; - this.routeFilters = routeFilters; + this.webFilterFactories = webFilterFactories; this.filteringWebHandler = filteringWebHandler; this.routeWriter = routeWriter; } @@ -99,7 +99,7 @@ public class GatewayEndpoint implements ApplicationEventPublisherAware {/*extend @GetMapping("/routefilters") public Map routefilers() { - return getNamesToOrders(this.routeFilters); + return getNamesToOrders(this.webFilterFactories); } private Map getNamesToOrders(List list) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java index b1a95ed3..34c321c7 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java @@ -33,22 +33,22 @@ import org.springframework.cloud.gateway.filter.LoadBalancerClientFilter; import org.springframework.cloud.gateway.filter.NettyRoutingFilter; import org.springframework.cloud.gateway.filter.RouteToRequestUrlFilter; import org.springframework.cloud.gateway.filter.WriteResponseFilter; -import org.springframework.cloud.gateway.filter.route.AddRequestHeaderRouteFilter; -import org.springframework.cloud.gateway.filter.route.AddRequestParameterRouteFilter; -import org.springframework.cloud.gateway.filter.route.AddResponseHeaderRouteFilter; -import org.springframework.cloud.gateway.filter.route.HystrixRouteFilter; -import org.springframework.cloud.gateway.filter.route.PrefixPathRouteFilter; -import org.springframework.cloud.gateway.filter.route.RedirectToRouteFilter; -import org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersRouteFilter; -import org.springframework.cloud.gateway.filter.route.RemoveRequestHeaderRouteFilter; -import org.springframework.cloud.gateway.filter.route.RemoveResponseHeaderRouteFilter; -import org.springframework.cloud.gateway.filter.route.RewritePathRouteFilter; -import org.springframework.cloud.gateway.filter.route.RouteFilter; +import org.springframework.cloud.gateway.filter.route.AddRequestHeaderWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.AddRequestParameterWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.AddResponseHeaderWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.HystrixWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.PrefixPathWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.RedirectToWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.RemoveRequestHeaderWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.RemoveResponseHeaderWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.RewritePathWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.SetResponseHeaderWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.WebFilterFactory; import org.springframework.cloud.gateway.filter.route.SecureHeadersProperties; -import org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter; -import org.springframework.cloud.gateway.filter.route.SetPathRouteFilter; -import org.springframework.cloud.gateway.filter.route.SetResponseHeaderRouteFilter; -import org.springframework.cloud.gateway.filter.route.SetStatusRouteFilter; +import org.springframework.cloud.gateway.filter.route.SetPathWebFilterFactory; +import org.springframework.cloud.gateway.filter.route.SetStatusWebFilterFactory; import org.springframework.cloud.gateway.handler.FilteringWebHandler; import org.springframework.cloud.gateway.handler.NettyRoutingWebHandler; import org.springframework.cloud.gateway.handler.RequestPredicateHandlerMapping; @@ -113,8 +113,8 @@ public class GatewayAutoConfiguration { @Bean public FilteringWebHandler filteringWebHandler(GatewayProperties properties, List globalFilters, - List routeFilters) { - return new FilteringWebHandler(properties, globalFilters, routeFilters); + List webFilterFactories) { + return new FilteringWebHandler(properties, globalFilters, webFilterFactories); } @Bean @@ -213,77 +213,77 @@ public class GatewayAutoConfiguration { // Filter Factory beans @Bean - public AddRequestHeaderRouteFilter addRequestHeaderRouteFilter() { - return new AddRequestHeaderRouteFilter(); + public AddRequestHeaderWebFilterFactory addRequestHeaderWebFilterFactory() { + return new AddRequestHeaderWebFilterFactory(); } @Bean - public AddRequestParameterRouteFilter addRequestParameterRouteFilter() { - return new AddRequestParameterRouteFilter(); + public AddRequestParameterWebFilterFactory addRequestParameterWebFilterFactory() { + return new AddRequestParameterWebFilterFactory(); } @Bean - public AddResponseHeaderRouteFilter addResponseHeaderRouteFilter() { - return new AddResponseHeaderRouteFilter(); + public AddResponseHeaderWebFilterFactory addResponseHeaderWebFilterFactory() { + return new AddResponseHeaderWebFilterFactory(); } @Configuration @ConditionalOnClass({HystrixObservableCommand.class, RxReactiveStreams.class}) protected static class HystrixConfiguration { @Bean - public HystrixRouteFilter hystrixRouteFilter() { - return new HystrixRouteFilter(); + public HystrixWebFilterFactory hystrixWebFilterFactory() { + return new HystrixWebFilterFactory(); } } @Bean - public PrefixPathRouteFilter prefixPathRouteFilter() { - return new PrefixPathRouteFilter(); + public PrefixPathWebFilterFactory prefixPathWebFilterFactory() { + return new PrefixPathWebFilterFactory(); } @Bean - public RedirectToRouteFilter redirectToRouteFilter() { - return new RedirectToRouteFilter(); + public RedirectToWebFilterFactory redirectToWebFilterFactory() { + return new RedirectToWebFilterFactory(); } @Bean - public RemoveNonProxyHeadersRouteFilter removeNonProxyHeadersRouteFilter() { - return new RemoveNonProxyHeadersRouteFilter(); + public RemoveNonProxyHeadersWebFilterFactory removeNonProxyHeadersWebFilterFactory() { + return new RemoveNonProxyHeadersWebFilterFactory(); } @Bean - public RemoveRequestHeaderRouteFilter removeRequestHeaderRouteFilter() { - return new RemoveRequestHeaderRouteFilter(); + public RemoveRequestHeaderWebFilterFactory removeRequestHeaderWebFilterFactory() { + return new RemoveRequestHeaderWebFilterFactory(); } @Bean - public RemoveResponseHeaderRouteFilter removeResponseHeaderRouteFilter() { - return new RemoveResponseHeaderRouteFilter(); + public RemoveResponseHeaderWebFilterFactory removeResponseHeaderWebFilterFactory() { + return new RemoveResponseHeaderWebFilterFactory(); } @Bean - public RewritePathRouteFilter rewritePathRouteFilter() { - return new RewritePathRouteFilter(); + public RewritePathWebFilterFactory rewritePathWebFilterFactory() { + return new RewritePathWebFilterFactory(); } @Bean - public SetPathRouteFilter setPathRouteFilter() { - return new SetPathRouteFilter(); + public SetPathWebFilterFactory setPathWebFilterFactory() { + return new SetPathWebFilterFactory(); } @Bean - public SecureHeadersRouteFilter secureHeadersRouteFilter(SecureHeadersProperties properties) { - return new SecureHeadersRouteFilter(properties); + public SecureHeadersWebFilterFactory secureHeadersWebFilterFactory(SecureHeadersProperties properties) { + return new SecureHeadersWebFilterFactory(properties); } @Bean - public SetResponseHeaderRouteFilter setResponseHeaderRouteFilter() { - return new SetResponseHeaderRouteFilter(); + public SetResponseHeaderWebFilterFactory setResponseHeaderWebFilterFactory() { + return new SetResponseHeaderWebFilterFactory(); } @Bean - public SetStatusRouteFilter setStatusRouteFilter() { - return new SetStatusRouteFilter(); + public SetStatusWebFilterFactory setStatusWebFilterFactory() { + return new SetStatusWebFilterFactory(); } //TODO: control creation @@ -298,9 +298,9 @@ public class GatewayAutoConfiguration { @Bean public GatewayEndpoint gatewayEndpoint(RouteLocator routeLocator, List globalFilters, - List routeFilters, FilteringWebHandler filteringWebHandler, + List webFilterFactories, FilteringWebHandler filteringWebHandler, RouteWriter routeWriter) { - return new GatewayEndpoint(routeLocator, globalFilters, routeFilters, filteringWebHandler, routeWriter); + return new GatewayEndpoint(routeLocator, globalFilters, webFilterFactories, filteringWebHandler, routeWriter); } } diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayProperties.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayProperties.java index 951edbc6..6120b40b 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayProperties.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/config/GatewayProperties.java @@ -26,7 +26,7 @@ import javax.validation.constraints.NotNull; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.cloud.gateway.model.FilterDefinition; import org.springframework.cloud.gateway.model.Route; -import org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersRouteFilter; +import org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersWebFilterFactory; import static org.springframework.cloud.gateway.support.NameUtils.normalizeFilterName; @@ -51,7 +51,7 @@ public class GatewayProperties { private ArrayList loadDefaults() { ArrayList defaults = new ArrayList<>(); FilterDefinition definition = new FilterDefinition(); - definition.setName(normalizeFilterName(RemoveNonProxyHeadersRouteFilter.class)); + definition.setName(normalizeFilterName(RemoveNonProxyHeadersWebFilterFactory.class)); defaults.add(definition); return defaults; } diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/discovery/DiscoveryClientRouteLocator.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/discovery/DiscoveryClientRouteLocator.java index 6cd3d168..c768b28b 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/discovery/DiscoveryClientRouteLocator.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/discovery/DiscoveryClientRouteLocator.java @@ -22,7 +22,7 @@ import java.util.Collections; import org.springframework.cloud.client.discovery.DiscoveryClient; import org.springframework.cloud.gateway.api.RouteLocator; -import org.springframework.cloud.gateway.filter.route.RewritePathRouteFilter; +import org.springframework.cloud.gateway.filter.route.RewritePathWebFilterFactory; import org.springframework.cloud.gateway.handler.predicate.PathRequestPredicateFactory; import org.springframework.cloud.gateway.model.FilterDefinition; import org.springframework.cloud.gateway.model.PredicateDefinition; @@ -66,7 +66,7 @@ public class DiscoveryClientRouteLocator implements RouteLocator { // add a filter that removes /serviceId by default FilterDefinition filter = new FilterDefinition(); - filter.setName(normalizeFilterName(RewritePathRouteFilter.class)); + filter.setName(normalizeFilterName(RewritePathWebFilterFactory.class)); String regex = "/" + serviceId + "/(?.*)"; String replacement = "/${remaining}"; filter.setArgs(regex, replacement); diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderWebFilterFactory.java similarity index 93% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderWebFilterFactory.java index 205b7d36..65393a58 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderWebFilterFactory.java @@ -23,7 +23,7 @@ import org.springframework.http.server.reactive.ServerHttpRequest; /** * @author Spencer Gibb */ -public class AddRequestHeaderRouteFilter implements RouteFilter { +public class AddRequestHeaderWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterWebFilterFactory.java similarity index 98% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterWebFilterFactory.java index a03f5ea0..68b4624b 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterWebFilterFactory.java @@ -31,7 +31,7 @@ import org.springframework.web.server.WebFilter; /** * @author Spencer Gibb */ -public class AddRequestParameterRouteFilter implements RouteFilter { +public class AddRequestParameterWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddResponseHeaderRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddResponseHeaderWebFilterFactory.java similarity index 93% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddResponseHeaderRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddResponseHeaderWebFilterFactory.java index 99ea9a4a..47c2d781 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddResponseHeaderRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/AddResponseHeaderWebFilterFactory.java @@ -22,7 +22,7 @@ import org.springframework.web.server.WebFilter; /** * @author Spencer Gibb */ -public class AddResponseHeaderRouteFilter implements RouteFilter { +public class AddResponseHeaderWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/HystrixRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/HystrixWebFilterFactory.java similarity index 97% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/HystrixRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/HystrixWebFilterFactory.java index 58fc68da..5b10fbd2 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/HystrixRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/HystrixWebFilterFactory.java @@ -33,7 +33,7 @@ import rx.Subscription; /** * @author Spencer Gibb */ -public class HystrixRouteFilter implements RouteFilter { +public class HystrixWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/PrefixPathRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/PrefixPathWebFilterFactory.java similarity index 94% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/PrefixPathRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/PrefixPathWebFilterFactory.java index 7d33b1d7..4d6fa217 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/PrefixPathRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/PrefixPathWebFilterFactory.java @@ -23,7 +23,7 @@ import org.springframework.web.server.WebFilter; /** * @author Spencer Gibb */ -public class PrefixPathRouteFilter implements RouteFilter { +public class PrefixPathWebFilterFactory implements WebFilterFactory { @Override @SuppressWarnings("unchecked") diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RedirectToRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RedirectToWebFilterFactory.java similarity index 96% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RedirectToRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RedirectToWebFilterFactory.java index 80a08f5e..c697fd65 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RedirectToRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RedirectToWebFilterFactory.java @@ -34,7 +34,7 @@ import reactor.core.publisher.Mono; /** * @author Spencer Gibb */ -public class RedirectToRouteFilter implements RouteFilter { +public class RedirectToWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { validate(2, args); diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersWebFilterFactory.java similarity index 96% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersWebFilterFactory.java index 9e5bfd60..26853a0e 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersWebFilterFactory.java @@ -44,7 +44,7 @@ import java.util.List; * @author Spencer Gibb */ @ConfigurationProperties("spring.cloud.gateway.filter.removeNonProxyHeaders") -public class RemoveNonProxyHeadersRouteFilter implements RouteFilter { +public class RemoveNonProxyHeadersWebFilterFactory implements WebFilterFactory { private static final String FAKE_HEADER = "_______force_______"; public static final String[] DEFAULT_HEADERS_TO_REMOVE = new String[] {"Connection", "Keep-Alive", diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderWebFilterFactory.java similarity index 94% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderWebFilterFactory.java index d3187af5..97e86b0d 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderWebFilterFactory.java @@ -23,7 +23,7 @@ import org.springframework.http.server.reactive.ServerHttpRequest; /** * @author Spencer Gibb */ -public class RemoveRequestHeaderRouteFilter implements RouteFilter { +public class RemoveRequestHeaderWebFilterFactory implements WebFilterFactory { private static final String FAKE_HEADER = "_______force_______"; diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderWebFilterFactory.java similarity index 92% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderWebFilterFactory.java index 63738410..487e3ddc 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderWebFilterFactory.java @@ -22,7 +22,7 @@ import org.springframework.web.server.WebFilter; /** * @author Spencer Gibb */ -public class RemoveResponseHeaderRouteFilter implements RouteFilter { +public class RemoveResponseHeaderWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactory.java similarity index 94% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactory.java index 668cda7c..ec0009ff 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactory.java @@ -23,7 +23,7 @@ import org.springframework.http.server.reactive.ServerHttpRequest; /** * @author Spencer Gibb */ -public class RewritePathRouteFilter implements RouteFilter { +public class RewritePathWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SecureHeadersRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SecureHeadersWebFilterFactory.java similarity index 94% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SecureHeadersRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SecureHeadersWebFilterFactory.java index 27b82614..6fb550b2 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SecureHeadersRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SecureHeadersWebFilterFactory.java @@ -24,7 +24,7 @@ import org.springframework.web.server.WebFilter; * https://blog.appcanary.com/2017/http-security-headers.html * @author Spencer Gibb */ -public class SecureHeadersRouteFilter implements RouteFilter { +public class SecureHeadersWebFilterFactory implements WebFilterFactory { public static final String X_XSS_PROTECTION_HEADER = "X-Xss-Protection"; public static final String STRICT_TRANSPORT_SECURITY_HEADER = "Strict-Transport-Security"; @@ -37,7 +37,7 @@ public class SecureHeadersRouteFilter implements RouteFilter { private final SecureHeadersProperties properties; - public SecureHeadersRouteFilter(SecureHeadersProperties properties) { + public SecureHeadersWebFilterFactory(SecureHeadersProperties properties) { this.properties = properties; } diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactory.java similarity index 96% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactory.java index 928f6979..ce0f4e45 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactory.java @@ -30,7 +30,7 @@ import static org.springframework.web.reactive.function.server.RouterFunctions.U /** * @author Spencer Gibb */ -public class SetPathRouteFilter implements RouteFilter { +public class SetPathWebFilterFactory implements WebFilterFactory { @Override @SuppressWarnings("unchecked") diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetResponseHeaderRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetResponseHeaderWebFilterFactory.java similarity index 93% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetResponseHeaderRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetResponseHeaderWebFilterFactory.java index 91398fdb..33cc2010 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetResponseHeaderRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetResponseHeaderWebFilterFactory.java @@ -22,7 +22,7 @@ import org.springframework.web.server.WebFilter; /** * @author Spencer Gibb */ -public class SetResponseHeaderRouteFilter implements RouteFilter { +public class SetResponseHeaderWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetStatusRouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetStatusWebFilterFactory.java similarity index 96% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetStatusRouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetStatusWebFilterFactory.java index 4d62d66c..f8c4a49b 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetStatusRouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/SetStatusWebFilterFactory.java @@ -28,7 +28,7 @@ import reactor.core.publisher.Mono; /** * @author Spencer Gibb */ -public class SetStatusRouteFilter implements RouteFilter { +public class SetStatusWebFilterFactory implements WebFilterFactory { @Override public WebFilter apply(String... args) { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RouteFilter.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/WebFilterFactory.java similarity index 90% rename from spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RouteFilter.java rename to spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/WebFilterFactory.java index ffa9eec1..64a4e359 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/RouteFilter.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/filter/route/WebFilterFactory.java @@ -15,6 +15,7 @@ * */ +//TODO: move to package factory package org.springframework.cloud.gateway.filter.route; import org.springframework.cloud.gateway.support.NameUtils; @@ -24,8 +25,10 @@ import org.springframework.web.server.WebFilter; /** * @author Spencer Gibb */ -public interface RouteFilter { +@FunctionalInterface +public interface WebFilterFactory { + //TODO: move from String... to Tuple WebFilter apply(String... args); default String name() { diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/FilteringWebHandler.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/FilteringWebHandler.java index 05b12a02..8be03423 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/FilteringWebHandler.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/FilteringWebHandler.java @@ -31,11 +31,11 @@ import java.util.stream.Collectors; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.springframework.cloud.gateway.filter.route.WebFilterFactory; import org.springframework.cloud.gateway.model.FilterDefinition; import org.springframework.cloud.gateway.model.Route; import org.springframework.cloud.gateway.config.GatewayProperties; import org.springframework.cloud.gateway.filter.GlobalFilter; -import org.springframework.cloud.gateway.filter.route.RouteFilter; import org.springframework.cloud.gateway.support.RefreshRoutesEvent; import org.springframework.context.event.EventListener; import org.springframework.core.Ordered; @@ -53,7 +53,7 @@ import reactor.core.publisher.Mono; /** * WebHandler that delegates to a chain of {@link GlobalFilter} instances and - * {@link RouteFilter} instances then to the target {@link WebHandler}. + * {@link WebFilterFactory} instances then to the target {@link WebHandler}. * * @author Rossen Stoyanchev * @author Spencer Gibb @@ -64,21 +64,21 @@ public class FilteringWebHandler extends WebHandlerDecorator { private final GatewayProperties gatewayProperties; private final List globalFilters; - private final Map routeFilters = new HashMap<>(); + private final Map webFilterFactories = new HashMap<>(); private final ConcurrentMap> combinedFiltersForRoute = new ConcurrentHashMap<>(); public FilteringWebHandler(GatewayProperties gatewayProperties, List globalFilters, - List routeFilters) { - this(new EmptyWebHandler(), gatewayProperties, globalFilters, routeFilters); + List webFilterFactories) { + this(new EmptyWebHandler(), gatewayProperties, globalFilters, webFilterFactories); } public FilteringWebHandler(WebHandler targetHandler, GatewayProperties gatewayProperties, List globalFilters, - List routeFilters) { + List webFilterFactories) { super(targetHandler); this.gatewayProperties = gatewayProperties; this.globalFilters = initList(globalFilters); - routeFilters.forEach(routeFilter -> this.routeFilters.put(routeFilter.name(), routeFilter)); + webFilterFactories.forEach(factory -> this.webFilterFactories.put(factory.name(), factory)); } private static List initList(List list) { @@ -101,11 +101,11 @@ public class FilteringWebHandler extends WebHandlerDecorator { @Override public Mono handle(ServerWebExchange exchange) { Optional route = exchange.getAttribute(GATEWAY_ROUTE_ATTR); - List routeFilters = combineFiltersForRoute(route); + List webFilters = combineFiltersForRoute(route); - logger.debug("Sorted routeFilters: "+ routeFilters); + logger.debug("Sorted webFilterFactories: "+ webFilters); - return new DefaultWebFilterChain(routeFilters, getDelegate()).filter(exchange); + return new DefaultWebFilterChain(webFilters, getDelegate()).filter(exchange); } public List combineFiltersForRoute(Optional route) { @@ -149,9 +149,9 @@ public class FilteringWebHandler extends WebHandlerDecorator { private List loadWebFilters(String id, List filterDefinitions) { List filters = filterDefinitions.stream() .map(definition -> { - RouteFilter filter = this.routeFilters.get(definition.getName()); + WebFilterFactory filter = this.webFilterFactories.get(definition.getName()); if (filter == null) { - throw new IllegalArgumentException("Unable to find RouteFilter with name " + definition.getName()); + throw new IllegalArgumentException("Unable to find WebFilterFactory with name " + definition.getName()); } if (logger.isDebugEnabled()) { List args; diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/predicate/RequestPredicateFactory.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/predicate/RequestPredicateFactory.java index d0625b8d..4740ccc4 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/predicate/RequestPredicateFactory.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/handler/predicate/RequestPredicateFactory.java @@ -28,6 +28,7 @@ import org.springframework.web.reactive.function.server.RequestPredicate; /** * @author Spencer Gibb */ +@FunctionalInterface public interface RequestPredicateFactory { RequestPredicate apply(Tuple args); diff --git a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/NameUtils.java b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/NameUtils.java index a941da81..a0418543 100644 --- a/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/NameUtils.java +++ b/spring-cloud-gateway-core/src/main/java/org/springframework/cloud/gateway/support/NameUtils.java @@ -17,7 +17,7 @@ package org.springframework.cloud.gateway.support; -import org.springframework.cloud.gateway.filter.route.RouteFilter; +import org.springframework.cloud.gateway.filter.route.WebFilterFactory; import org.springframework.cloud.gateway.handler.predicate.RequestPredicateFactory; /** @@ -34,7 +34,7 @@ public class NameUtils { return clazz.getSimpleName().replace(RequestPredicateFactory.class.getSimpleName(), ""); } - public static String normalizeFilterName(Class clazz) { - return clazz.getSimpleName().replace(RouteFilter.class.getSimpleName(), ""); + public static String normalizeFilterName(Class clazz) { + return clazz.getSimpleName().replace(WebFilterFactory.class.getSimpleName(), ""); } } diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderWebFilterFactoryTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderWebFilterFactoryTests.java index 9478a923..78d02c7c 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestHeaderWebFilterFactoryTests.java @@ -40,7 +40,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class AddRequestHeaderRouteFilterIntegrationTests extends BaseWebClientTests { +public class AddRequestHeaderWebFilterFactoryTests extends BaseWebClientTests { @Test public void addRequestHeaderFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterWebFilterFactoryTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterWebFilterFactoryTests.java index fa2c5f94..3061bd00 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/AddRequestParameterWebFilterFactoryTests.java @@ -40,7 +40,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class AddRequestParameterRouteFilterIntegrationTests extends BaseWebClientTests { +public class AddRequestParameterWebFilterFactoryTests extends BaseWebClientTests { @Test public void addRequestParameterFilterWorksBlankQuery() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/HystrixRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/HystrixWebFilterFactoryTests.java similarity index 97% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/HystrixRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/HystrixWebFilterFactoryTests.java index fa9e512e..cba6ccd6 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/HystrixRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/HystrixWebFilterFactoryTests.java @@ -40,7 +40,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class HystrixRouteFilterIntegrationTests extends BaseWebClientTests { +public class HystrixWebFilterFactoryTests extends BaseWebClientTests { @Test public void hystrixFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RedirectToRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RedirectToWebFilterFactoryTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RedirectToRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RedirectToWebFilterFactoryTests.java index 2f2e9330..d2071a96 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RedirectToRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RedirectToWebFilterFactoryTests.java @@ -40,7 +40,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class RedirectToRouteFilterIntegrationTests extends BaseWebClientTests { +public class RedirectToWebFilterFactoryTests extends BaseWebClientTests { @Test public void redirectToFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersWebFilterFactoryTests.java similarity index 94% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersWebFilterFactoryTests.java index d7b816c5..aacd673c 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveNonProxyHeadersWebFilterFactoryTests.java @@ -32,7 +32,7 @@ import org.springframework.test.context.junit4.SpringRunner; import static org.assertj.core.api.Assertions.assertThat; import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT; -import static org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersRouteFilter.DEFAULT_HEADERS_TO_REMOVE; +import static org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersWebFilterFactory.DEFAULT_HEADERS_TO_REMOVE; import static org.springframework.cloud.gateway.test.TestUtils.getMap; import static org.springframework.web.reactive.function.BodyExtractors.toMono; @@ -44,7 +44,7 @@ import reactor.test.StepVerifier; //TODO: why does this break other tests if not in a profile? @ActiveProfiles("removenonproxyheaders") @DirtiesContext -public class RemoveNonProxyHeadersRouteFilterIntegrationTests extends BaseWebClientTests { +public class RemoveNonProxyHeadersWebFilterFactoryTests extends BaseWebClientTests { @Test public void removeNonProxyHeadersFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderWebFilterFactoryTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderWebFilterFactoryTests.java index a6e2513a..49ced45b 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveRequestHeaderWebFilterFactoryTests.java @@ -40,7 +40,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class RemoveRequestHeaderRouteFilterIntegrationTests extends BaseWebClientTests { +public class RemoveRequestHeaderWebFilterFactoryTests extends BaseWebClientTests { @Test public void removeRequestHeaderFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderWebFilterFactoryTests.java similarity index 95% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderWebFilterFactoryTests.java index c4038fc0..afb6ce31 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RemoveResponseHeaderWebFilterFactoryTests.java @@ -37,7 +37,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class RemoveResponseHeaderRouteFilterIntegrationTests extends BaseWebClientTests { +public class RemoveResponseHeaderWebFilterFactoryTests extends BaseWebClientTests { @Test public void removeResponseHeaderFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactoryIntegrationTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactoryIntegrationTests.java index ec7b5e76..2487656a 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactoryIntegrationTests.java @@ -38,7 +38,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class RewritePathRouteFilterIntegrationTests extends BaseWebClientTests { +public class RewritePathWebFilterFactoryIntegrationTests extends BaseWebClientTests { @Test public void rewritePathFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilterTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactoryTests.java similarity index 94% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilterTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactoryTests.java index c1e30a43..950f0aeb 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathRouteFilterTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/RewritePathWebFilterFactoryTests.java @@ -34,7 +34,7 @@ import static org.mockito.Mockito.when; /** * @author Spencer Gibb */ -public class RewritePathRouteFilterTests { +public class RewritePathWebFilterFactoryTests { @Test public void rewritePathFilterWorks() { @@ -47,7 +47,7 @@ public class RewritePathRouteFilterTests { } private void testRewriteFilter(String regex, String replacement, String actualPath, String expectedPath) { - WebFilter filter = new RewritePathRouteFilter().apply(regex, replacement); + WebFilter filter = new RewritePathWebFilterFactory().apply(regex, replacement); MockServerHttpRequest request = MockServerHttpRequest .get("http://localhost"+ actualPath) diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SecureHeadersRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SecureHeadersWebFilterFactoryTests.java similarity index 87% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SecureHeadersRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SecureHeadersWebFilterFactoryTests.java index f6a301c1..0c2bac5b 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SecureHeadersRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SecureHeadersWebFilterFactoryTests.java @@ -32,14 +32,14 @@ import org.springframework.web.reactive.function.client.ClientResponse; import static org.assertj.core.api.Assertions.assertThat; import static org.springframework.boot.test.context.SpringBootTest.WebEnvironment.RANDOM_PORT; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.CONTENT_SECURITY_POLICY_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.REFERRER_POLICY_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.STRICT_TRANSPORT_SECURITY_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.X_CONTENT_TYPE_OPTIONS_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.X_DOWNLOAD_OPTIONS_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.X_FRAME_OPTIONS_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER; -import static org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilter.X_XSS_PROTECTION_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.CONTENT_SECURITY_POLICY_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.REFERRER_POLICY_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.STRICT_TRANSPORT_SECURITY_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.X_CONTENT_TYPE_OPTIONS_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.X_DOWNLOAD_OPTIONS_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.X_FRAME_OPTIONS_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.X_PERMITTED_CROSS_DOMAIN_POLICIES_HEADER; +import static org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactory.X_XSS_PROTECTION_HEADER; import static org.springframework.cloud.gateway.test.TestUtils.assertStatus; import reactor.core.publisher.Mono; @@ -48,7 +48,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class SecureHeadersRouteFilterIntegrationTests extends BaseWebClientTests { +public class SecureHeadersWebFilterFactoryTests extends BaseWebClientTests { @Test public void secureHeadersFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactoryIntegrationTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactoryIntegrationTests.java index a076501d..ba1075fb 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactoryIntegrationTests.java @@ -38,7 +38,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class SetPathRouteFilterIntegrationTests extends BaseWebClientTests { +public class SetPathWebFilterFactoryIntegrationTests extends BaseWebClientTests { @Test public void setPathFilterDefaultValuesWork() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilterTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactoryTests.java similarity index 95% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilterTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactoryTests.java index d6b5443e..db26bf64 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathRouteFilterTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetPathWebFilterFactoryTests.java @@ -38,7 +38,7 @@ import reactor.core.publisher.Mono; /** * @author Spencer Gibb */ -public class SetPathRouteFilterTests { +public class SetPathWebFilterFactoryTests { @Test public void rewritePathFilterWorks() { @@ -54,7 +54,7 @@ public class SetPathRouteFilterTests { } private void testRewriteFilter(String template, String actualPath, String expectedPath, HashMap variables) { - WebFilter filter = new SetPathRouteFilter().apply(new String[]{template}); + WebFilter filter = new SetPathWebFilterFactory().apply(new String[]{template}); MockServerHttpRequest request = MockServerHttpRequest .get("http://localhost"+ actualPath) diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetResponseRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetResponseWebFilterFactoryTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetResponseRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetResponseWebFilterFactoryTests.java index 28890573..c39cd89b 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetResponseRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetResponseWebFilterFactoryTests.java @@ -38,7 +38,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class SetResponseRouteFilterIntegrationTests extends BaseWebClientTests { +public class SetResponseWebFilterFactoryTests extends BaseWebClientTests { @Test public void setResponseHeaderFilterWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetStatusRouteFilterIntegrationTests.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetStatusWebFilterFactoryTests.java similarity index 96% rename from spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetStatusRouteFilterIntegrationTests.java rename to spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetStatusWebFilterFactoryTests.java index daf687c8..532b352b 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetStatusRouteFilterIntegrationTests.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/route/SetStatusWebFilterFactoryTests.java @@ -38,7 +38,7 @@ import reactor.test.StepVerifier; @RunWith(SpringRunner.class) @SpringBootTest(webEnvironment = RANDOM_PORT) @DirtiesContext -public class SetStatusRouteFilterIntegrationTests extends BaseWebClientTests { +public class SetStatusWebFilterFactoryTests extends BaseWebClientTests { @Test public void setStatusIntWorks() { diff --git a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/AdhocTestSuite.java b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/AdhocTestSuite.java index 0fe60d1f..ead6b78d 100644 --- a/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/AdhocTestSuite.java +++ b/spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/test/AdhocTestSuite.java @@ -21,19 +21,19 @@ import org.junit.Ignore; import org.junit.runner.RunWith; import org.junit.runners.Suite; import org.junit.runners.Suite.SuiteClasses; -import org.springframework.cloud.gateway.filter.route.AddRequestHeaderRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.AddRequestParameterRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.HystrixRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.RedirectToRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.RemoveRequestHeaderRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.RewritePathRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.RewritePathRouteFilterTests; -import org.springframework.cloud.gateway.filter.route.SecureHeadersRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.SetPathRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.SetPathRouteFilterTests; -import org.springframework.cloud.gateway.filter.route.SetResponseRouteFilterIntegrationTests; -import org.springframework.cloud.gateway.filter.route.SetStatusRouteFilterIntegrationTests; +import org.springframework.cloud.gateway.filter.route.AddRequestHeaderWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.AddRequestParameterWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.HystrixWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.RedirectToWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.RemoveNonProxyHeadersWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.RemoveRequestHeaderWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.RewritePathWebFilterFactoryIntegrationTests; +import org.springframework.cloud.gateway.filter.route.RewritePathWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.SecureHeadersWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.SetPathWebFilterFactoryIntegrationTests; +import org.springframework.cloud.gateway.filter.route.SetPathWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.SetResponseWebFilterFactoryTests; +import org.springframework.cloud.gateway.filter.route.SetStatusWebFilterFactoryTests; import org.springframework.cloud.gateway.handler.predicate.AfterRequestPredicateFactoryTests; import org.springframework.cloud.gateway.handler.predicate.BeforeRequestPredicateFactoryTests; import org.springframework.cloud.gateway.handler.predicate.BetweenRequestPredicateFactoryTests; @@ -49,20 +49,20 @@ import org.springframework.cloud.gateway.handler.predicate.PathRequestPredicateF @SuiteClasses({GatewayIntegrationTests.class, FormIntegrationTests.class, // route filter tests - AddRequestHeaderRouteFilterIntegrationTests.class, - AddRequestParameterRouteFilterIntegrationTests.class, - HystrixRouteFilterIntegrationTests.class, - RedirectToRouteFilterIntegrationTests.class, - RemoveNonProxyHeadersRouteFilterIntegrationTests.class, - RemoveRequestHeaderRouteFilterIntegrationTests.class, - RewritePathRouteFilterIntegrationTests.class, - SecureHeadersRouteFilterIntegrationTests.class, - SetPathRouteFilterIntegrationTests.class, - SetPathRouteFilterTests.class, - SetResponseRouteFilterIntegrationTests.class, - SetStatusRouteFilterIntegrationTests.class, - RewritePathRouteFilterTests.class, - // route predicate tests + AddRequestHeaderWebFilterFactoryTests.class, + AddRequestParameterWebFilterFactoryTests.class, + HystrixWebFilterFactoryTests.class, + RedirectToWebFilterFactoryTests.class, + RemoveNonProxyHeadersWebFilterFactoryTests.class, + RemoveRequestHeaderWebFilterFactoryTests.class, + RewritePathWebFilterFactoryIntegrationTests.class, + SecureHeadersWebFilterFactoryTests.class, + SetPathWebFilterFactoryIntegrationTests.class, + SetPathWebFilterFactoryTests.class, + SetResponseWebFilterFactoryTests.class, + SetStatusWebFilterFactoryTests.class, + RewritePathWebFilterFactoryTests.class, + // RequestPredicateFactory tests AfterRequestPredicateFactoryTests.class, BeforeRequestPredicateFactoryTests.class, BetweenRequestPredicateFactoryTests.class,