001package com.hfg.util.io; 002 003import java.io.FilterOutputStream; 004import java.io.IOException; 005import java.io.OutputStream; 006 007 008//------------------------------------------------------------------------------ 009/** 010 * OutputStream that overrides the close() to do nothing. 011 * 012 * @author J. Alex Taylor, hairyfatguy.com 013 */ 014//------------------------------------------------------------------------------ 015// com.hfg XML/HTML Coding Library 016// 017// This library is free software; you can redistribute it and/or 018// modify it under the terms of the GNU Lesser General Public 019// License as published by the Free Software Foundation; either 020// version 2.1 of the License, or (at your option) any later version. 021// 022// This library is distributed in the hope that it will be useful, 023// but WITHOUT ANY WARRANTY; without even the implied warranty of 024// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 025// Lesser General Public License for more details. 026// 027// You should have received a copy of the GNU Lesser General Public 028// License along with this library; if not, write to the Free Software 029// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 030// 031// J. Alex Taylor, President, Founder, CEO, COO, CFO, OOPS hairyfatguy.com 032// jataylor@hairyfatguy.com 033//------------------------------------------------------------------------------ 034 035public class NoCloseOutputStream extends FilterOutputStream 036{ 037 038 //########################################################################## 039 // CONSTRUCTORS 040 //########################################################################## 041 042 //-------------------------------------------------------------------------- 043 public NoCloseOutputStream(OutputStream inStream) 044 { 045 super(inStream); 046 } 047 048 049 //########################################################################## 050 // PUBLIC METHODS 051 //########################################################################## 052 053 //-------------------------------------------------------------------------- 054 @Override 055 public void close() 056 { 057 // Flush but don't close 058 try 059 { 060 flush(); 061 } 062 catch (IOException e) 063 { 064 throw new RuntimeIOException(e); 065 } 066 } 067}