001 package de.kumpe.hadooptimizer.examples;
002
003 import java.io.IOException;
004 import java.io.OutputStream;
005
006 public class TeeOutputStream extends OutputStream {
007 private final OutputStream first;
008 private final OutputStream second;
009
010 public TeeOutputStream(final OutputStream first, final OutputStream second) {
011 this.first = first;
012 this.second = second;
013 }
014
015 @Override
016 public void close() throws IOException {
017 first.close();
018 second.close();
019 }
020
021 @Override
022 public void flush() throws IOException {
023 first.flush();
024 second.flush();
025 }
026
027 @Override
028 public void write(final byte[] b) throws IOException {
029 first.write(b);
030 second.write(b);
031 }
032
033 @Override
034 public void write(final byte[] b, final int off, final int len)
035 throws IOException {
036 first.write(b, off, len);
037 second.write(b, off, len);
038 }
039
040 @Override
041 public void write(final int b) throws IOException {
042 first.write(b);
043 second.write(b);
044 }
045 }