package com.rectang.xsm.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; /** * A cool class that gobbles stream output * * @author Andrew Williams * @version $Id$ * @since 1.0 */ public class StreamGobbler extends Thread { private InputStream in; private boolean complete = false; private StringBuilder content; private String lastLine; public StreamGobbler( InputStream in ) { this.in = in; content = new StringBuilder(); } public void run() { try { BufferedReader reader = new BufferedReader( new InputStreamReader( in ) ); String line; while ( (line = reader.readLine()) != null ) { content.append( line ); content.append( "\n" ); lastLine = line; } } catch ( IOException e ) { e.printStackTrace(); } complete = true; } public boolean isComplete() { return complete; } public StringBuilder getContent() { return content; } public String getLastLine() { return lastLine; } }