| /******************************************************************************* |
| * Copyright (c) 2014 Raymond Augé and others. |
| * |
| * This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License 2.0 |
| * which accompanies this distribution, and is available at |
| * https://www.eclipse.org/legal/epl-2.0/ |
| * |
| * SPDX-License-Identifier: EPL-2.0 |
| * |
| * Contributors: |
| * Raymond Augé <raymond.auge@liferay.com> - Bug 436698 |
| ******************************************************************************/ |
| |
| package org.eclipse.equinox.http.servlet.tests.util; |
| |
| import java.io.CharArrayWriter; |
| import java.io.PrintWriter; |
| |
| import javax.servlet.ServletOutputStream; |
| import javax.servlet.WriteListener; |
| import javax.servlet.http.HttpServletResponse; |
| import javax.servlet.http.HttpServletResponseWrapper; |
| |
| /** |
| * @author Raymond Augé |
| */ |
| public class CharResponseWrapper extends HttpServletResponseWrapper { |
| private CharArrayWriter output; |
| |
| public CharResponseWrapper(HttpServletResponse response){ |
| super(response); |
| output = new CharArrayWriter(); |
| } |
| |
| @Override |
| public ServletOutputStream getOutputStream() { |
| return new ServletOutputStream() { |
| |
| @Override |
| public void write(int b) { |
| output.write(b); |
| } |
| |
| @Override |
| public boolean isReady() { |
| return true; |
| } |
| |
| @Override |
| public void setWriteListener(WriteListener writeListener) { |
| throw new UnsupportedOperationException(); |
| } |
| |
| }; |
| } |
| |
| @Override |
| public PrintWriter getWriter(){ |
| return new PrintWriter(output); |
| } |
| |
| @Override |
| public String toString() { |
| return output.toString(); |
| } |
| |
| } |