All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.servlet.ServletRequestWrapper Maven / Gradle / Ivy

/*
 * JBoss, Home of Professional Open Source.
 * Copyright 2007, Red Hat Middleware LLC, and individual contributors
 * as indicated by the @author tags. See the copyright.txt file in the
 * distribution for a full listing of individual contributors.
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
 */
package javax.servlet;

import java.io.BufferedReader;
import java.io.IOException;
import java.util.Enumeration;
import java.util.Locale;
import java.util.Map;

/**
 * Provides a convenient implementation of the ServletRequest interface that can
 * be subclassed by developers wishing to adapt the request to a Servlet. This
 * class implements the Wrapper or Decorator pattern. Methods default to calling
 * through to the wrapped request object.
 * 
 * @since v 2.3
 * @see javax.servlet.ServletRequest
 */

public class ServletRequestWrapper implements ServletRequest
{
   private ServletRequest request;

   /**
    * Creates a ServletRequest adaptor wrapping the given request object.
    * 
    * @throws java.lang.IllegalArgumentException
    *            if the request is null
    */

   public ServletRequestWrapper(ServletRequest request)
   {
      if (request == null)
      {
         throw new IllegalArgumentException("Request cannot be null");
      }
      this.request = request;
   }

   /**
    * Return the wrapped request object.
    */
   public ServletRequest getRequest()
   {
      return this.request;
   }

   /**
    * Sets the request object being wrapped.
    * 
    * @throws java.lang.IllegalArgumentException
    *            if the request is null.
    */

   public void setRequest(ServletRequest request)
   {
      if (request == null)
      {
         throw new IllegalArgumentException("Request cannot be null");
      }
      this.request = request;
   }

   /**
    * The default behavior of this method is to call getAttribute(String name)
    * on the wrapped request object.
    */

   public Object getAttribute(String name)
   {
      return this.request.getAttribute(name);
   }

   /**
    * The default behavior of this method is to return getAttributeNames() on
    * the wrapped request object.
    */

   public Enumeration getAttributeNames()
   {
      return this.request.getAttributeNames();
   }

   /**
    * The default behavior of this method is to return getCharacterEncoding() on
    * the wrapped request object.
    */

   public String getCharacterEncoding()
   {
      return this.request.getCharacterEncoding();
   }

   /**
    * The default behavior of this method is to set the character encoding on
    * the wrapped request object.
    */

   public void setCharacterEncoding(String enc) throws java.io.UnsupportedEncodingException
   {
      this.request.setCharacterEncoding(enc);
   }

   /**
    * The default behavior of this method is to return getContentLength() on the
    * wrapped request object.
    */

   public int getContentLength()
   {
      return this.request.getContentLength();
   }

   /**
    * The default behavior of this method is to return getContentType() on the
    * wrapped request object.
    */
   public String getContentType()
   {
      return this.request.getContentType();
   }

   /**
    * The default behavior of this method is to return getInputStream() on the
    * wrapped request object.
    */

   public ServletInputStream getInputStream() throws IOException
   {
      return this.request.getInputStream();
   }

   /**
    * The default behavior of this method is to return getParameter(String name)
    * on the wrapped request object.
    */

   public String getParameter(String name)
   {
      return this.request.getParameter(name);
   }

   /**
    * The default behavior of this method is to return getParameterMap() on the
    * wrapped request object.
    */
   public Map getParameterMap()
   {
      return this.request.getParameterMap();
   }

   /**
    * The default behavior of this method is to return getParameterNames() on
    * the wrapped request object.
    */

   public Enumeration getParameterNames()
   {
      return this.request.getParameterNames();
   }

   /**
    * The default behavior of this method is to return getParameterValues(String
    * name) on the wrapped request object.
    */
   public String[] getParameterValues(String name)
   {
      return this.request.getParameterValues(name);
   }

   /**
    * The default behavior of this method is to return getProtocol() on the
    * wrapped request object.
    */

   public String getProtocol()
   {
      return this.request.getProtocol();
   }

   /**
    * The default behavior of this method is to return getScheme() on the
    * wrapped request object.
    */

   public String getScheme()
   {
      return this.request.getScheme();
   }

   /**
    * The default behavior of this method is to return getServerName() on the
    * wrapped request object.
    */
   public String getServerName()
   {
      return this.request.getServerName();
   }

   /**
    * The default behavior of this method is to return getServerPort() on the
    * wrapped request object.
    */

   public int getServerPort()
   {
      return this.request.getServerPort();
   }

   /**
    * The default behavior of this method is to return getReader() on the
    * wrapped request object.
    */

   public BufferedReader getReader() throws IOException
   {
      return this.request.getReader();
   }

   /**
    * The default behavior of this method is to return getRemoteAddr() on the
    * wrapped request object.
    */

   public String getRemoteAddr()
   {
      return this.request.getRemoteAddr();
   }

   /**
    * The default behavior of this method is to return getRemoteHost() on the
    * wrapped request object.
    */

   public String getRemoteHost()
   {
      return this.request.getRemoteHost();
   }

   /**
    * The default behavior of this method is to return setAttribute(String name,
    * Object o) on the wrapped request object.
    */

   public void setAttribute(String name, Object o)
   {
      this.request.setAttribute(name, o);
   }

   /**
    * The default behavior of this method is to call removeAttribute(String
    * name) on the wrapped request object.
    */
   public void removeAttribute(String name)
   {
      this.request.removeAttribute(name);
   }

   /**
    * The default behavior of this method is to return getLocale() on the
    * wrapped request object.
    */

   public Locale getLocale()
   {
      return this.request.getLocale();
   }

   /**
    * The default behavior of this method is to return getLocales() on the
    * wrapped request object.
    */

   public Enumeration getLocales()
   {
      return this.request.getLocales();
   }

   /**
    * The default behavior of this method is to return isSecure() on the wrapped
    * request object.
    */

   public boolean isSecure()
   {
      return this.request.isSecure();
   }

   /**
    * The default behavior of this method is to return
    * getRequestDispatcher(String path) on the wrapped request object.
    */

   public RequestDispatcher getRequestDispatcher(String path)
   {
      return this.request.getRequestDispatcher(path);
   }

   /**
    * The default behavior of this method is to return getRealPath(String path)
    * on the wrapped request object.
    * 
    * @deprecated As of Version 2.1 of the Java Servlet API, use
    *             {@link ServletContext#getRealPath} instead.
    */
   @Deprecated
   public String getRealPath(String path)
   {
      return this.request.getRealPath(path);
   }

   /**
    * The default behavior of this method is to return getRemotePort() on the
    * wrapped request object.
    * 
    * @since 2.4
    */
   public int getRemotePort()
   {
      return this.request.getRemotePort();
   }

   /**
    * The default behavior of this method is to return getLocalName() on the
    * wrapped request object.
    * 
    * @since 2.4
    */
   public String getLocalName()
   {
      return this.request.getLocalName();
   }

   /**
    * The default behavior of this method is to return getLocalAddr() on the
    * wrapped request object.
    * 
    * @since 2.4
    */
   public String getLocalAddr()
   {
      return this.request.getLocalAddr();
   }

   /**
    * The default behavior of this method is to return getLocalPort() on the
    * wrapped request object.
    * 
    * @since 2.4
    */
   public int getLocalPort()
   {
      return this.request.getLocalPort();
   }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy