Merge branch '4.1.x'

Closes gh-51898
This commit is contained in:
Phillip Webb
2026-09-28 14:20:27 -07:00
5 changed files with 16 additions and 14 deletions
@@ -56,8 +56,9 @@ public class DispatcherFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
if (request instanceof HttpServletRequest && response instanceof HttpServletResponse) {
doFilter((HttpServletRequest) request, (HttpServletResponse) response, chain);
if (request instanceof HttpServletRequest httpServletRequest
&& response instanceof HttpServletResponse httpServletResponse) {
doFilter(httpServletRequest, httpServletResponse, chain);
}
else {
chain.doFilter(request, response);
@@ -357,11 +357,11 @@ public class Restarter {
Field field = type.getDeclaredField(fieldName);
field.setAccessible(true);
Object instance = field.get(null);
if (instance instanceof Set) {
((Set<?>) instance).clear();
if (instance instanceof Set<?> set) {
set.clear();
}
if (instance instanceof Map) {
((Map<?, ?>) instance).keySet().removeIf(this::isFromRestartClassLoader);
if (instance instanceof Map<?, ?> map) {
map.keySet().removeIf(this::isFromRestartClassLoader);
}
}
catch (Exception ex) {
@@ -371,8 +371,9 @@ public class Restarter {
}
}
private boolean isFromRestartClassLoader(Object object) {
return (object instanceof Class && ((Class<?>) object).getClassLoader() instanceof RestartClassLoader);
private boolean isFromRestartClassLoader(Object candidate) {
return (candidate instanceof Class<?> candidateClass
&& candidateClass.getClassLoader() instanceof RestartClassLoader);
}
/**