public class StreamPumper
extends java.lang.Object
implements java.lang.Runnable
Modifier and Type | Field and Description |
---|---|
private boolean |
closeWhenExhausted
close the output stream when exhausted
|
private static int |
DEFAULT_SIZE
the default size of the internal buffer for copying the streams
|
private boolean |
finished
was the end of the stream reached
|
private java.io.InputStream |
is
the input stream to pump from
|
private java.io.OutputStream |
os
the output stream to pmp into
|
private int |
size
the size of the internal buffer for copying the streams
|
Constructor and 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.
|
Modifier and Type | Method and 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.
|
private static final int DEFAULT_SIZE
private final java.io.InputStream is
private final java.io.OutputStream os
private final int size
private boolean finished
private final boolean closeWhenExhausted
public StreamPumper(java.io.InputStream is, java.io.OutputStream os, boolean closeWhenExhausted)
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.public StreamPumper(java.io.InputStream is, java.io.OutputStream os, boolean closeWhenExhausted, int size)
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 streamspublic StreamPumper(java.io.InputStream is, java.io.OutputStream os)
is
- input stream to read data fromos
- output stream to write data to.public void run()
run
in interface java.lang.Runnable
public boolean isFinished()
public void waitFor() throws java.lang.InterruptedException
java.lang.InterruptedException
- if any thread interrupted the current thread before or while the current thread was waiting for a
notification.isFinished()