Package org.apache.commons.exec
Class StreamPumper
- java.lang.Object
-
- org.apache.commons.exec.StreamPumper
-
- All Implemented Interfaces:
java.lang.Runnable
public class StreamPumper extends java.lang.Object implements java.lang.Runnable
Copies all data from an input stream to an output stream.
-
-
Constructor Summary
Constructors Constructor Description StreamPumper(java.io.InputStream is, java.io.OutputStream os)
Create a new stream pumper.StreamPumper(java.io.InputStream is, java.io.OutputStream os, boolean closeWhenExhausted)
Create a new stream pumper.StreamPumper(java.io.InputStream is, java.io.OutputStream os, boolean closeWhenExhausted, int size)
Create a new stream pumper.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
isFinished()
Tells whether the end of the stream has been reached.void
run()
Copies data from the input stream to the output stream.void
waitFor()
This method blocks until the stream pumper finishes.
-
-
-
Constructor Detail
-
StreamPumper
public StreamPumper(java.io.InputStream is, java.io.OutputStream os, boolean closeWhenExhausted)
Create a new stream pumper.- Parameters:
is
- input stream to read data fromos
- output stream to write data to.closeWhenExhausted
- if true, the output stream will be closed when the input is exhausted.
-
StreamPumper
public StreamPumper(java.io.InputStream is, java.io.OutputStream os, boolean closeWhenExhausted, int size)
Create a new stream pumper.- Parameters:
is
- input stream to read data fromos
- output stream to write data to.closeWhenExhausted
- if true, the output stream will be closed when the input is exhausted.size
- the size of the internal buffer for copying the streams
-
StreamPumper
public StreamPumper(java.io.InputStream is, java.io.OutputStream os)
Create a new stream pumper.- Parameters:
is
- input stream to read data fromos
- output stream to write data to.
-
-
Method Detail
-
run
public void run()
Copies data from the input stream to the output stream. Terminates as soon as the input stream is closed or an error occurs.- Specified by:
run
in interfacejava.lang.Runnable
-
isFinished
public boolean isFinished()
Tells whether the end of the stream has been reached.- Returns:
- true is the stream has been exhausted.
-
waitFor
public void waitFor() throws java.lang.InterruptedException
This method blocks until the stream pumper finishes.- Throws:
java.lang.InterruptedException
- if any thread interrupted the current thread before or while the current thread was waiting for a notification.- See Also:
isFinished()
-
-