private static Object getNativeRequest(ServletRequest request) { while (request instanceof ServletRequestWrapper) { request = ((ServletRequestWrapper) request).getRequest(); } return request; }
public boolean isWrapperFor(ServletRequest instance) { if (instance == this.request) { return true; } if (this.request instanceof ServletRequestWrapper) { return ((ServletRequestWrapper)this.request).isWrapperFor(instance); } return false; }
@Override public void setRequest(ServletRequest request) { synchronized(lock) { super.setRequest(request); } }
/** * Sets the request object for the wrapper. * * @param request the wrapped request */ public void setRequest(ServletRequest request) { super.setRequest(request); this.request = (HttpServletRequest) request; } /**
private HttpServletRequest _getHttpServletRequest() { return (HttpServletRequest) super.getRequest(); }
/** * Checks (recursively) if this ServletRequestWrapper wraps the given * {@link ServletRequest} instance. * * @param wrapped the ServletRequest instance to search for * * @return true if this ServletRequestWrapper wraps the * given ServletRequest instance, false otherwise * * @since Servlet 3.0 */ public boolean isWrapperFor(ServletRequest wrapped) { if (request == wrapped) { return true; } else if (request instanceof ServletRequestWrapper) { return ((ServletRequestWrapper) request).isWrapperFor(wrapped); } else { return false; } }
public ServletRequestWrapper(ServletRequest request) { setRequest(request); }
public Jetty9Request(javax.servlet.ServletRequest request) { while (request instanceof ServletRequestWrapper) { request = ((ServletRequestWrapper) request).getRequest(); } this.request = (Request) request; }
public boolean isWrapperFor(Class wrappedType) { if (this.request.getClass().isAssignableFrom(wrappedType)) { return true; } if (this.request instanceof ServletRequestWrapper) { return ((ServletRequestWrapper)this.request).isWrapperFor(wrappedType); } return false; }
public void setRequest(javax.servlet.ServletRequest request) { if (request instanceof HttpServletRequest) { super.setRequest(request); this.httpRequest = (HttpServletRequest) request; } else throw new IllegalArgumentException("Not an HttpServletRequest"); }
private ServletRequest unwrap(ServletRequest servletRequest) { if (servletRequest instanceof ServletRequestWrapper) { return ((ServletRequestWrapper) servletRequest).getRequest(); } return null; }
/** * Checks (recursively) if this ServletRequestWrapper wraps a * {@link ServletRequest} of the given class type. * * @param wrappedType the ServletRequest class type to * search for * * @return true if this ServletRequestWrapper wraps a * ServletRequest of the given class type, false otherwise * * @throws IllegalArgumentException if the given class does not * implement {@link ServletRequest} * * @since Servlet 3.0 */ public boolean isWrapperFor(Class wrappedType) { if (!ServletRequest.class.isAssignableFrom(wrappedType)) { throw new IllegalArgumentException("Given class " + wrappedType.getName() + " not a subinterface of " + ServletRequest.class.getName()); } if (wrappedType.isAssignableFrom(request.getClass())) { return true; } else if (request instanceof ServletRequestWrapper) { return ((ServletRequestWrapper) request).isWrapperFor(wrappedType); } else { return false; } }
/** * Set the request that we are wrapping. * * @param request The new wrapped request */ public void setRequest(ServletRequest request) { super.setRequest(request); // Initialize the attributes for this request synchronized (attributes) { attributes.clear(); Enumeration names = request.getAttributeNames(); while (names.hasMoreElements()) { String name = (String) names.nextElement(); Object value = request.getAttribute(name); attributes.put(name, value); } } }
/** * Return an appropriate request object of the specified type, if available, * unwrapping the given request as far as necessary. * @param request the servlet request to introspect * @param requiredType the desired type of request object * @return the matching request object, or {@code null} if none * of that type is available */ @SuppressWarnings("unchecked") @Nullable public static <T> T getNativeRequest(ServletRequest request, @Nullable Class<T> requiredType) { if (requiredType != null) { if (requiredType.isInstance(request)) { return (T) request; } else if (request instanceof ServletRequestWrapper) { return getNativeRequest(((ServletRequestWrapper) request).getRequest(), requiredType); } } return null; }
public boolean isWrapperFor(ServletRequest instance) { if (instance == this.request) { return true; } if (this.request instanceof ServletRequestWrapper) { return ((ServletRequestWrapper)this.request).isWrapperFor(instance); } return false; }
/** * Set the request that we are wrapping. * * @param request The new wrapped request */ @Override public void setRequest(ServletRequest request) { super.setRequest(request); // Initialize the attributes for this request synchronized (attributes) { attributes.clear(); Enumeration<String> names = request.getAttributeNames(); while (names.hasMoreElements()) { String name = names.nextElement(); Object value = request.getAttribute(name); attributes.put(name, value); } } }
/** * Return an appropriate request object of the specified type, if available, * unwrapping the given request as far as necessary. * @param request the servlet request to introspect * @param requiredType the desired type of request object * @return the matching request object, or {@code null} if none * of that type is available */ @SuppressWarnings("unchecked") @Nullable public static <T> T getNativeRequest(ServletRequest request, @Nullable Class<T> requiredType) { if (requiredType != null) { if (requiredType.isInstance(request)) { return (T) request; } else if (request instanceof ServletRequestWrapper) { return getNativeRequest(((ServletRequestWrapper) request).getRequest(), requiredType); } } return null; }
@Override public boolean isWrapperFor(ServletRequest wrapped) { synchronized(lock) { return super.isWrapperFor(wrapped); } }
/** * Set the request that we are wrapping. * * @param request The new wrapped request */ public void setRequest(ServletRequest request) { super.setRequest(request); // Initialize the attributes for this request synchronized (attributes) { attributes.clear(); Enumeration names = request.getAttributeNames(); while (names.hasMoreElements()) { String name = (String) names.nextElement(); Object value = request.getAttribute(name); attributes.put(name, value); } } }
/** * Test if a request has been wrapped with RequestWrapper somewhere in the chain of wrapped * requests. */ private boolean alreadyWrapped(final ServletRequest request) { if (request instanceof RequestWrapper) { return true; } if (!(request instanceof ServletRequestWrapper)) { return false; } final ServletRequest nestedRequest = ((ServletRequestWrapper) request).getRequest(); if (nestedRequest == request) { return false; } return alreadyWrapped(nestedRequest); }