org.codehaus.plexus.util.cli
Class StreamFeeder

java.lang.Object
  extended by java.lang.Thread
      extended by org.codehaus.plexus.util.cli.StreamFeeder
All Implemented Interfaces:
java.lang.Runnable

public class StreamFeeder
extends java.lang.Thread

Read from an InputStream and write the output to an OutputStream.

Version:
$Id: StreamFeeder.java 3144 2006-04-19 11:06:46Z evenisse $
Author:
Trygve Laugstøl

Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
private  boolean done
           
private  java.io.InputStream input
           
private  java.io.OutputStream output
           
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
StreamFeeder(java.io.InputStream input, java.io.OutputStream output)
          Create a new StreamFeeder
 
Method Summary
 void close()
           
private  void feed()
           
 boolean isDone()
           
 void run()
           
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

input

private java.io.InputStream input

output

private java.io.OutputStream output

done

private boolean done
Constructor Detail

StreamFeeder

public StreamFeeder(java.io.InputStream input,
                    java.io.OutputStream output)
Create a new StreamFeeder

Parameters:
input - Stream to read from
output - Stream to write to
Method Detail

run

public void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread

close

public void close()

isDone

public boolean isDone()

feed

private void feed()
           throws java.io.IOException
Throws:
java.io.IOException