/* * Copyright 2003-2006 Rick Knowles <winstone-devel at lists sourceforge net> * Distributed under the terms of either: * - the common development and distribution license (CDDL), v1.0; or * - the GNU Lesser General Public License, v2.1 or later */ package javax.servlet.http; import java.io.IOException; /** * Wraps HttpServletResponse objects in a decorator pattern * * @author <a href="mailto:rick_knowles@hotmail.com">Rick Knowles</a> */ public class HttpServletResponseWrapper extends javax.servlet.ServletResponseWrapper implements HttpServletResponse { private HttpServletResponse httpResponse; public HttpServletResponseWrapper(HttpServletResponse response) { super(response); this.httpResponse = response; } public void setResponse(javax.servlet.ServletResponse response) { if (response instanceof HttpServletResponse) { super.setResponse(response); this.httpResponse = (HttpServletResponse) response; } else throw new IllegalArgumentException("Not an HttpServletResponse"); } public void addCookie(Cookie cookie) { this.httpResponse.addCookie(cookie); } public void addDateHeader(String name, long date) { this.httpResponse.addDateHeader(name, date); } public void addHeader(String name, String value) { this.httpResponse.addHeader(name, value); } public void addIntHeader(String name, int value) { this.httpResponse.addIntHeader(name, value); } public boolean containsHeader(String name) { return this.httpResponse.containsHeader(name); } public String encodeRedirectURL(String url) { return this.httpResponse.encodeRedirectURL(url); } public String encodeURL(String url) { return this.httpResponse.encodeURL(url); } public void sendError(int sc) throws IOException { this.httpResponse.sendError(sc); } public void sendError(int sc, String msg) throws IOException { this.httpResponse.sendError(sc, msg); } public void sendRedirect(String location) throws IOException { this.httpResponse.sendRedirect(location); } public void setDateHeader(String name, long date) { this.httpResponse.setDateHeader(name, date); } public void setHeader(String name, String value) { this.httpResponse.setHeader(name, value); } public void setIntHeader(String name, int value) { this.httpResponse.setIntHeader(name, value); } public void setStatus(int sc) { this.httpResponse.setStatus(sc); } /** * @deprecated */ public String encodeRedirectUrl(String url) { return this.httpResponse.encodeRedirectUrl(url); } /** * @deprecated */ public String encodeUrl(String url) { return this.httpResponse.encodeUrl(url); } /** * @deprecated */ public void setStatus(int sc, String sm) { this.httpResponse.setStatus(sc, sm); } }