1 /* Open Source Java Caching Service 2 * Copyright (C) 2002 Frank Karlstrøm 3 * This library is free software; you can redistribute it and/or 4 * modify it under the terms of the GNU Lesser General Public 5 * License as published by the Free Software Foundation; either 6 * version 2.1 of the License, or (at your option) any later version. 7 * 8 * This library is distributed in the hope that it will be useful, 9 * but WITHOUT ANY WARRANTY; without even the implied warranty of 10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 11 * Lesser General Public License for more details. 12 * 13 * You should have received a copy of the GNU Lesser General Public 14 * License along with this library; if not, write to the Free Software 15 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 16 * 17 * The author can be contacted by email: fjankk@users.sourceforge.net 18 */ 19 package org.fjank.jcache; 20 21 import java.io.ByteArrayOutputStream; 22 import java.io.IOException; 23 24 /** 25 * Class for handlig writes to a StreamCacheObject 26 * @author Frank Karlstrøm 27 * 28 */ 29 public class CacheOutputStream extends ByteArrayOutputStream { 30 private final StreamCacheObject streamObject; 31 32 public CacheOutputStream(StreamCacheObject strObj) { 33 super(); 34 this.streamObject = strObj; 35 } 36 37 /**writes the internal bytearray down to the StreamCacheObject. 38 */ 39 public void close() throws IOException { 40 super.close(); 41 streamObject.setReferent(this.toByteArray()); 42 } 43 StreamCacheObject getStreamObject() { 44 return streamObject; 45 } 46 47 }