Avoid defensive checks against java.time API
Issue: SPR-13188
This commit is contained in:
@@ -70,7 +70,7 @@ public class ServletRequestMethodArgumentResolver implements HandlerMethodArgume
|
||||
Principal.class.isAssignableFrom(paramType) ||
|
||||
Locale.class == paramType ||
|
||||
TimeZone.class == paramType ||
|
||||
"java.time.ZoneId".equals(paramType.getName()) ||
|
||||
ZoneId.class == paramType ||
|
||||
InputStream.class.isAssignableFrom(paramType) ||
|
||||
Reader.class.isAssignableFrom(paramType) ||
|
||||
HttpMethod.class == paramType);
|
||||
@@ -110,8 +110,9 @@ public class ServletRequestMethodArgumentResolver implements HandlerMethodArgume
|
||||
TimeZone timeZone = RequestContextUtils.getTimeZone(request);
|
||||
return (timeZone != null ? timeZone : TimeZone.getDefault());
|
||||
}
|
||||
else if ("java.time.ZoneId".equals(paramType.getName())) {
|
||||
return ZoneIdResolver.resolveZoneId(request);
|
||||
else if (ZoneId.class == paramType) {
|
||||
TimeZone timeZone = RequestContextUtils.getTimeZone(request);
|
||||
return (timeZone != null ? timeZone.toZoneId() : ZoneId.systemDefault());
|
||||
}
|
||||
else if (InputStream.class.isAssignableFrom(paramType)) {
|
||||
return request.getInputStream();
|
||||
@@ -126,16 +127,4 @@ public class ServletRequestMethodArgumentResolver implements HandlerMethodArgume
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Inner class to avoid a hard-coded dependency on Java 8's {@link java.time.ZoneId}.
|
||||
*/
|
||||
private static class ZoneIdResolver {
|
||||
|
||||
public static Object resolveZoneId(HttpServletRequest request) {
|
||||
TimeZone timeZone = RequestContextUtils.getTimeZone(request);
|
||||
return (timeZone != null ? timeZone.toZoneId() : ZoneId.systemDefault());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user