Class StreamPumper

java.lang.Object
org.apache.commons.exec.StreamPumper
All Implemented Interfaces:
Runnable

public class StreamPumper extends Object implements Runnable
Copies all data from an input stream to an output stream.
  • Constructor Details

    • StreamPumper

      Constructs a new stream pumper.
      Parameters:
      is - input stream to read data from.
      os - output stream to write data to.
    • StreamPumper

      public StreamPumper(InputStream is, OutputStream os, boolean closeWhenExhausted)
      Constructs a new stream pumper.
      Parameters:
      is - input stream to read data from.
      os - output stream to write data to.
      closeWhenExhausted - if true, the output stream will be closed when the input is exhausted.
    • StreamPumper

      public StreamPumper(InputStream is, OutputStream os, boolean closeWhenExhausted, int size)
      Constructs a new stream pumper.
      Parameters:
      is - input stream to read data from.
      os - 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.
  • Method Details

    • isFinished

      public boolean isFinished()
      Tests whether the end of the stream has been reached.
      Returns:
      true is the stream has been exhausted.
    • 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 interface Runnable
    • waitFor

      public void waitFor() throws InterruptedException
      This method blocks until the stream pumper finishes.
      Throws:
      InterruptedException - if any thread interrupted the current thread before or while the current thread was waiting for a notification.
      See Also: