## org.apache.tools.ant.taskdefs
Class StreamPumper

    java.lang.Object
      org.apache.tools.ant.taskdefs.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.

Since:
  Ant 1.2
Author:
  thomas.haas@softwired-inc.com

Constructor Summary
`StreamPumper(java.io.InputStream is, java.io.OutputStream os)` Create a new stream pumper.

Method Summary
`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.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### StreamPumper

    public StreamPumper(java.io.InputStream is,
                        java.io.OutputStream os)

  Create a new stream pumper.

Parameters:
  `is` - input stream to read data from
  `os` - 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 interface `java.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`
  See Also:
    `isFinished()`

Copyright © 2000-2003 Apache Software Foundation. All Rights Reserved.