Package org.apache.commons.io.output
Class QueueOutputStream
- java.lang.Object
 - 
- java.io.OutputStream
 - 
- org.apache.commons.io.output.QueueOutputStream
 
 
 
- 
- All Implemented Interfaces:
 java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
public class QueueOutputStream extends java.io.OutputStreamSimple alternative to JDKPipedOutputStream; queue input stream provides what's written in queue output stream.Example usage:
QueueOutputStream outputStream = new QueueOutputStream(); QueueInputStream inputStream = outputStream.newPipeInputStream(); outputStream.write("hello world".getBytes(UTF_8)); inputStream.read();Unlike JDKPipedInputStreamandPipedOutputStream, queue input/output streams may be used safely in a single thread or multiple threads. Also, unlike JDK classes, no special meaning is attached to initial or current thread. Instances can be used longer after initial threads exited.Closing a
QueueOutputStreamhas no effect. The methods in this class can be called after the stream has been closed without generating anIOException.- Since:
 - 2.9.0
 - See Also:
 QueueInputStream
 
- 
- 
Constructor Summary
Constructors Constructor Description QueueOutputStream()Constructs a new instance with no limit to internal buffer size.QueueOutputStream(java.util.concurrent.BlockingQueue<java.lang.Integer> blockingQueue)Constructs a new instance with given buffer. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description QueueInputStreamnewQueueInputStream()Constructs a new QueueInputStream instance connected to this.voidwrite(int b)Writes a single byte. 
 - 
 
- 
- 
Constructor Detail
- 
QueueOutputStream
public QueueOutputStream()
Constructs a new instance with no limit to internal buffer size. 
- 
QueueOutputStream
public QueueOutputStream(java.util.concurrent.BlockingQueue<java.lang.Integer> blockingQueue)
Constructs a new instance with given buffer.- Parameters:
 blockingQueue- backing queue for the stream
 
 - 
 
- 
Method Detail
- 
newQueueInputStream
public QueueInputStream newQueueInputStream()
Constructs a new QueueInputStream instance connected to this. Writes to this output stream will be visible to the input stream.- Returns:
 - QueueInputStream connected to this stream
 
 
- 
write
public void write(int b) throws java.io.InterruptedIOExceptionWrites a single byte.- Specified by:
 writein classjava.io.OutputStream- Throws:
 java.io.InterruptedIOException- if the thread is interrupted while writing to the queue.
 
 - 
 
 -