From 5d8c2cf898bc36cce44c382f4e502c67ac930200 Mon Sep 17 00:00:00 2001 From: spencergibb Date: Wed, 15 Mar 2023 16:20:45 -0400 Subject: [PATCH] Polish "Add ServerWebExchange a new attribute for PathContainer to avoid repeating parsePath in PathRoutePredicateFactory." See gh-2884 --- spring-cloud-gateway-server/pom.xml | 3 ++- .../handler/predicate/PathRoutePredicateFactory.java | 9 +++------ ...athRoutePredicatePathContainerAttrBenchMarkTests.java | 4 ++++ 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/spring-cloud-gateway-server/pom.xml b/spring-cloud-gateway-server/pom.xml index ac540872..089ebed4 100644 --- a/spring-cloud-gateway-server/pom.xml +++ b/spring-cloud-gateway-server/pom.xml @@ -174,12 +174,13 @@ org.openjdk.jmh jmh-core 1.20 + test org.openjdk.jmh jmh-generator-annprocess 1.20 - provided + test diff --git a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicateFactory.java b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicateFactory.java index 32ea2ce8..f4a1d7c7 100644 --- a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicateFactory.java +++ b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicateFactory.java @@ -90,12 +90,9 @@ public class PathRoutePredicateFactory extends AbstractRoutePredicateFactory parsePath(exchange.getRequest().getURI().getRawPath())); PathPattern match = null; for (int i = 0; i < pathPatterns.size(); i++) { diff --git a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicatePathContainerAttrBenchMarkTests.java b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicatePathContainerAttrBenchMarkTests.java index db853f32..92032d0e 100644 --- a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicatePathContainerAttrBenchMarkTests.java +++ b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/handler/predicate/PathRoutePredicatePathContainerAttrBenchMarkTests.java @@ -75,4 +75,8 @@ public class PathRoutePredicatePathContainerAttrBenchMarkTests { } } + public static void main(String[] args) throws Exception { + org.openjdk.jmh.Main.main(args); + } + }