FileDocCategorySizeDatePackage
TaskOutputStream.javaAPI DocApache Ant 1.703085Wed Dec 13 06:16:24 GMT 2006org.apache.tools.ant.taskdefs

TaskOutputStream

public class TaskOutputStream extends OutputStream
Redirects text written to a stream thru the standard ant logging mechanism. This class is useful for integrating with tools that write to System.out and System.err. For example, the following will cause all text written to System.out to be logged with "info" priority:
System.setOut(new PrintStream(new TaskOutputStream(project, Project.MSG_INFO)));

As of Ant 1.2, this class is considered to be dead code by the Ant developers and is unmaintained. Don't use it.

deprecated
since 1.2.x. Use LogOutputStream instead.

Fields Summary
private org.apache.tools.ant.Task
task
private StringBuffer
line
private int
msgOutputLevel
Constructors Summary
TaskOutputStream(org.apache.tools.ant.Task task, int msgOutputLevel)
Constructs a new JavacOutputStream with the given project as the output source for messages.

        System.err.println("As of Ant 1.2 released in October 2000, the "
            + "TaskOutputStream class");
        System.err.println("is considered to be dead code by the Ant "
            + "developers and is unmaintained.");
        System.err.println("Don\'t use it!");

        this.task = task;
        this.msgOutputLevel = msgOutputLevel;

        line = new StringBuffer();
    
Methods Summary
private voidprocessLine()
Processes a line of input and determines if an error occurred.

        String s = line.toString();
        task.log(s, msgOutputLevel);
        line = new StringBuffer();
    
public voidwrite(int c)
Write a character to the output stream. This method looks to make sure that there isn't an error being reported and will flush each line of input out to the project's log stream.

param
c the character to write
throws
IOException on error

        char cc = (char) c;
        if (cc == '\r" || cc == '\n") {
            // line feed
            if (line.length() > 0) {
                processLine();
            }
        } else {
            line.append(cc);
        }