de.pdark.decentxml
Class JoinedInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by de.pdark.decentxml.JoinedInputStream
All Implemented Interfaces:
java.io.Closeable

public class JoinedInputStream
extends java.io.InputStream

This class allows to join several InputStream's into one.

Reading from an instance of JoinedInputStream will read each underlying InputStream until it is depleted and then continue with the next one.

Depleted InputStream's will be closed as soon as possible.

Author:
digulla

Constructor Summary
JoinedInputStream()
           
 
Method Summary
 JoinedInputStream add(java.io.InputStream in)
          Add another InputStream.
 void close()
           
 int read()
           
 int read(byte[] b, int off, int len)
           
 
Methods inherited from class java.io.InputStream
available, mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JoinedInputStream

public JoinedInputStream()
Method Detail

add

public JoinedInputStream add(java.io.InputStream in)
Add another InputStream.

It is allowed to add more InputStream's even after reading has started.

It is illegal to add more streams after the joined stream has been closed.


read

public int read()
         throws java.io.IOException
Specified by:
read in class java.io.InputStream
Throws:
java.io.IOException

read

public int read(byte[] b,
                int off,
                int len)
         throws java.io.IOException
Overrides:
read in class java.io.InputStream
Throws:
java.io.IOException

close

public void close()
           throws java.io.IOException
Specified by:
close in interface java.io.Closeable
Overrides:
close in class java.io.InputStream
Throws:
java.io.IOException


Copyright © 2008-2011. All Rights Reserved.