From ef60ccb31b93a591eab95cb12408f8f851414a49 Mon Sep 17 00:00:00 2001 From: dchandler Date: Fri, 4 Oct 2002 04:51:28 +0000 Subject: [PATCH] This class allows for writing a message to two streams at once, like the Unix utility 'tee'. --- source/org/thdl/util/TeeStream.java | 44 +++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 source/org/thdl/util/TeeStream.java diff --git a/source/org/thdl/util/TeeStream.java b/source/org/thdl/util/TeeStream.java new file mode 100644 index 0000000..c711ba9 --- /dev/null +++ b/source/org/thdl/util/TeeStream.java @@ -0,0 +1,44 @@ +/* +The contents of this file are subject to the THDL Open Community License +Version 1.0 (the "License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License on the THDL web site +(http://www.thdl.org/). + +Software distributed under the License is distributed on an "AS IS" basis, +WITHOUT WARRANTY OF ANY KIND, either express or implied. See the +License for the specific terms governing rights and limitations under the +License. + +The Initial Developer of this software is the Tibetan and Himalayan Digital +Library (THDL). Portions created by the THDL are Copyright 2001 THDL. +All Rights Reserved. + +Contributor(s): ______________________________________. +*/ + +package org.thdl.util; + +import java.io.PrintStream; + +/** + * All writes to this print stream are copied to two print streams of + * your choice. */ +public class TeeStream extends PrintStream { + private PrintStream out; + public TeeStream(PrintStream out1, PrintStream out2) { + super(out1); + this.out = out2; + } + public void write(byte buf[], int off, int len) { + try { + super.write(buf, off, len); + out.write(buf, off, len); + } catch (Exception e) { + } + } + public void flush() { + super.flush(); + out.flush(); + } +}; +