@Override public Object getNativeRequest() { return getRequest(); }
@Override public boolean isUserInRole(String role) { return getRequest().isUserInRole(role); }
@Override public Locale getLocale() { return getRequest().getLocale(); }
@Override public boolean isSecure() { return getRequest().isSecure(); }
@Override public Map<String, String[]> getParameterMap() { return getRequest().getParameterMap(); }
@Override public String getContextPath() { return getRequest().getContextPath(); }
@Override @Nullable public String getHeader(String headerName) { return getRequest().getHeader(headerName); }
@Override @Nullable public String getParameter(String paramName) { return getRequest().getParameter(paramName); }
@Override @Nullable public String[] getParameterValues(String paramName) { return getRequest().getParameterValues(paramName); }
@Override @Nullable public String getRemoteUser() { return getRequest().getRemoteUser(); }
@Override @Nullable public Principal getUserPrincipal() { return getRequest().getUserPrincipal(); }
@Override @Nullable public String[] getHeaderValues(String headerName) { String[] headerValues = StringUtils.toStringArray(getRequest().getHeaders(headerName)); return (!ObjectUtils.isEmpty(headerValues) ? headerValues : null); }
/** * Return the HTTP method of the request. * @since 4.0.2 */ @Nullable public HttpMethod getHttpMethod() { return HttpMethod.resolve(getRequest().getMethod()); }
@Override public <T> T getNativeRequest(@Nullable Class<T> requiredType) { return WebUtils.getNativeRequest(getRequest(), requiredType); }
@Override public Iterator<String> getHeaderNames() { return CollectionUtils.toIterator(getRequest().getHeaderNames()); }
@Override public Iterator<String> getParameterNames() { return CollectionUtils.toIterator(getRequest().getParameterNames()); }
private long parseDateHeader(String headerName) { long dateValue = -1; try { dateValue = getRequest().getDateHeader(headerName); } catch (IllegalArgumentException ex) { String headerValue = getHeader(headerName); // Possibly an IE 10 style value: "Wed, 09 Apr 2014 09:57:42 GMT; length=13774" if (headerValue != null) { int separatorIndex = headerValue.indexOf(';'); if (separatorIndex != -1) { String datePart = headerValue.substring(0, separatorIndex); dateValue = parseDateValue(datePart); } } } return dateValue; }
@Test public void reader() throws Exception { MethodParameter readerParameter = new MethodParameter(method, 6); assertTrue("Reader not supported", resolver.supportsParameter(readerParameter)); Object result = resolver.resolveArgument(readerParameter, null, webRequest, null); assertSame("Invalid result", webRequest.getRequest().getReader(), result); }
@Test public void inputStream() throws Exception { MethodParameter inputStreamParameter = new MethodParameter(method, 5); assertTrue("InputStream not supported", resolver.supportsParameter(inputStreamParameter)); Object result = resolver.resolveArgument(inputStreamParameter, null, webRequest, null); assertSame("Invalid result", webRequest.getRequest().getInputStream(), result); }
@Test public void httpMethod() throws Exception { MethodParameter httpMethodParameter = new MethodParameter(method, 10); assertTrue("HttpMethod not supported", resolver.supportsParameter(httpMethodParameter)); Object result = resolver.resolveArgument(httpMethodParameter, null, webRequest, null); assertSame("Invalid result", HttpMethod.valueOf(webRequest.getRequest().getMethod()), result); }