Commit cdb5d76c authored by Madhura Bhave's avatar Madhura Bhave

Merge branch '2.0.x'

parents e02954a2 469372c5
......@@ -198,7 +198,7 @@ public final class EndpointRequest {
if (this.includeLinks
&& StringUtils.hasText(pathMappedEndpoints.getBasePath())) {
delegateMatchers.add(new AntPathRequestMatcher(
servletPath + pathMappedEndpoints.getBasePath()));
computePath(servletPath, pathMappedEndpoints.getBasePath())));
}
return new OrRequestMatcher(delegateMatchers);
}
......@@ -229,10 +229,17 @@ public final class EndpointRequest {
private List<RequestMatcher> getDelegateMatchers(String servletPath,
Set<String> paths) {
return paths.stream()
.map((path) -> new AntPathRequestMatcher(servletPath + path + "/**"))
.map((path) -> new AntPathRequestMatcher(computePath(servletPath, path) + "/**"))
.collect(Collectors.toList());
}
private String computePath(String servletPath, String path) {
if (servletPath.equals("/")) {
return path;
}
return servletPath + path;
}
@Override
protected boolean matches(HttpServletRequest request,
Supplier<WebApplicationContext> context) {
......@@ -272,11 +279,18 @@ public final class EndpointRequest {
private RequestMatcher createDelegate(String path,
WebEndpointProperties properties) {
if (StringUtils.hasText(properties.getBasePath())) {
return new AntPathRequestMatcher(path + properties.getBasePath());
return new AntPathRequestMatcher(computePath(path, properties.getBasePath()));
}
return EMPTY_MATCHER;
}
private String computePath(String servletPath, String path) {
if (servletPath.equals("/")) {
return path;
}
return servletPath + path;
}
@Override
protected boolean matches(HttpServletRequest request,
Supplier<WebApplicationContext> context) {
......
......@@ -52,9 +52,9 @@ public class EndpointRequestTests {
@Test
public void toAnyEndpointShouldMatchEndpointPath() {
RequestMatcher matcher = EndpointRequest.toAnyEndpoint();
assertMatcher(matcher).matches("/actuator/foo");
assertMatcher(matcher).matches("/actuator/bar");
assertMatcher(matcher).matches("/actuator");
assertMatcher(matcher, "/actuator", "/").matches("/actuator/foo");
assertMatcher(matcher, "/actuator", "/").matches("/actuator/bar");
assertMatcher(matcher, "/actuator", "/").matches("/actuator");
}
@Test
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment