1 /* 2 * $Id: ResponseDelegate.java 1066849 2011-02-03 16:12:39Z apetrelli $ 3 * 4 * Licensed to the Apache Software Foundation (ASF) under one 5 * or more contributor license agreements. See the NOTICE file 6 * distributed with this work for additional information 7 * regarding copyright ownership. The ASF licenses this file 8 * to you under the Apache License, Version 2.0 (the 9 * "License"); you may not use this file except in compliance 10 * with the License. You may obtain a copy of the License at 11 * 12 * http://www.apache.org/licenses/LICENSE-2.0 13 * 14 * Unless required by applicable law or agreed to in writing, 15 * software distributed under the License is distributed on an 16 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 17 * KIND, either express or implied. See the License for the 18 * specific language governing permissions and limitations 19 * under the License. 20 */ 21 package org.apache.tiles.request.portlet.delegate; 22 23 import java.io.IOException; 24 import java.io.OutputStream; 25 import java.io.PrintWriter; 26 import java.io.Writer; 27 28 /** 29 * Exposes features of a response, if they are available. 30 * 31 * @version $Rev: 1066849 $ $Date: 2011-02-04 03:12:39 +1100 (Fri, 04 Feb 2011) $ 32 */ 33 public interface ResponseDelegate { 34 35 /** 36 * Returns the output stream. 37 * 38 * @return The output stream. 39 * @throws IOException If the underlying response causes a problem. 40 */ 41 OutputStream getOutputStream() throws IOException; 42 43 /** 44 * Returns the print writer. 45 * 46 * @return The print writer. 47 * @throws IOException If the underlying response causes a problem. 48 */ 49 PrintWriter getPrintWriter() throws IOException; 50 51 /** 52 * Returns the writer. 53 * 54 * @return The writer. 55 * @throws IOException If the underlying response causes a problem. 56 */ 57 Writer getWriter() throws IOException; 58 59 /** 60 * Sets the content type of the response. 61 * 62 * @param contentType The content type. 63 */ 64 void setContentType(String contentType); 65 66 /** 67 * Checks if the response is committed. 68 * 69 * @return <code>true</code> if the response is committed. 70 */ 71 boolean isResponseCommitted(); 72 }