git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270150 13f79535-47bb-0310-9956-ffa450edef68master
@@ -58,6 +58,8 @@ import java.io.PrintStream; | |||
import java.io.PrintWriter; | |||
import java.io.StringWriter; | |||
import org.apache.tools.ant.util.StringUtils; | |||
/** | |||
* Writes build event to a PrintStream. Currently, it | |||
* only writes which targets are being executed, and | |||
@@ -71,8 +73,6 @@ public class DefaultLogger implements BuildLogger { | |||
protected int msgOutputLevel = Project.MSG_ERR; | |||
private long startTime = System.currentTimeMillis(); | |||
protected static String lSep = System.getProperty("line.separator"); | |||
protected boolean emacsMode = false; | |||
/** | |||
@@ -134,29 +134,29 @@ public class DefaultLogger implements BuildLogger { | |||
StringBuffer message = new StringBuffer(); | |||
if (error == null) { | |||
message.append(lSep + "BUILD SUCCESSFUL"); | |||
message.append(StringUtils.LINE_SEP); | |||
message.append("BUILD SUCCESSFUL"); | |||
} | |||
else { | |||
message.append(lSep + "BUILD FAILED" + lSep); | |||
message.append(StringUtils.LINE_SEP); | |||
message.append("BUILD FAILED"); | |||
message.append(StringUtils.LINE_SEP); | |||
if (Project.MSG_VERBOSE <= msgOutputLevel || | |||
!(error instanceof BuildException)) { | |||
StringWriter sw = new StringWriter(); | |||
PrintWriter pw = new PrintWriter(sw); | |||
error.printStackTrace(pw); | |||
message.append(sw.toString()); | |||
message.append(StringUtils.getStackTrace(error)); | |||
} | |||
else { | |||
if (error instanceof BuildException) { | |||
message.append(error.toString() + lSep); | |||
message.append(error.toString()).append(StringUtils.LINE_SEP); | |||
} | |||
else { | |||
message.append(error.getMessage() + lSep); | |||
message.append(error.getMessage()).append(StringUtils.LINE_SEP); | |||
} | |||
} | |||
} | |||
message.append(lSep + "Total time: " | |||
message.append(StringUtils.LINE_SEP); | |||
message.append("Total time: " | |||
+ formatTime(System.currentTimeMillis() - startTime)); | |||
String msg = message.toString(); | |||
@@ -170,7 +170,7 @@ public class DefaultLogger implements BuildLogger { | |||
public void targetStarted(BuildEvent event) { | |||
if (Project.MSG_INFO <= msgOutputLevel) { | |||
String msg = lSep + event.getTarget().getName() + ":"; | |||
String msg = StringUtils.LINE_SEP + event.getTarget().getName() + ":"; | |||
out.println(msg); | |||
log(msg); | |||
} | |||
@@ -68,6 +68,7 @@ import org.w3c.dom.Document; | |||
import org.w3c.dom.Element; | |||
import org.w3c.dom.Text; | |||
import org.apache.tools.ant.util.DOMElementWriter; | |||
import org.apache.tools.ant.util.StringUtils; | |||
/** | |||
* Generates a "log.xml" file in the current directory with | |||
@@ -133,13 +134,8 @@ public class XmlLogger implements BuildListener { | |||
buildElement.element.setAttribute(ERROR_ATTR, event.getException().toString()); | |||
// print the stacktrace in the build file it is always useful... | |||
// better have too much info than not enough. | |||
ByteArrayOutputStream baos = new ByteArrayOutputStream(); | |||
PrintStream ps = new PrintStream(baos,true); | |||
Throwable t = event.getException(); | |||
t.printStackTrace(ps); | |||
ps.flush(); | |||
ps.close(); | |||
Text errText = doc.createCDATASection(baos.toString()); | |||
Text errText = doc.createCDATASection(StringUtils.getStackTrace(t)); | |||
Element stacktrace = doc.createElement(STACKTRACE_TAG); | |||
stacktrace.appendChild(errText); | |||
buildElement.element.appendChild(stacktrace); | |||
@@ -57,6 +57,8 @@ package org.apache.tools.ant.taskdefs; | |||
import org.apache.tools.ant.BuildLogger; | |||
import org.apache.tools.ant.Project; | |||
import org.apache.tools.ant.BuildEvent; | |||
import org.apache.tools.ant.util.StringUtils; | |||
import java.io.PrintStream; | |||
@@ -92,10 +94,6 @@ public class RecorderEntry implements BuildLogger { | |||
* The start time of the last know target. | |||
*/ | |||
private long targetStartTime = 0l; | |||
/** | |||
* Line separator. | |||
*/ | |||
private static String lSep = System.getProperty("line.separator"); | |||
////////////////////////////////////////////////////////////////////// | |||
// CONSTRUCTORS / INITIALIZERS | |||
@@ -136,9 +134,9 @@ public class RecorderEntry implements BuildLogger { | |||
Throwable error = event.getException(); | |||
if (error == null) { | |||
out.println(lSep + "BUILD SUCCESSFUL"); | |||
out.println(StringUtils.LINE_SEP + "BUILD SUCCESSFUL"); | |||
} else { | |||
out.println(lSep + "BUILD FAILED" + lSep); | |||
out.println(StringUtils.LINE_SEP + "BUILD FAILED" + StringUtils.LINE_SEP); | |||
error.printStackTrace(out); | |||
} | |||
out.flush(); | |||
@@ -147,7 +145,7 @@ public class RecorderEntry implements BuildLogger { | |||
public void targetStarted(BuildEvent event) { | |||
log( ">> TARGET STARTED -- " + event.getTarget(), Project.MSG_DEBUG ); | |||
log( lSep + event.getTarget().getName() + ":", Project.MSG_INFO ); | |||
log( StringUtils.LINE_SEP + event.getTarget().getName() + ":", Project.MSG_INFO ); | |||
targetStartTime = System.currentTimeMillis(); | |||
} | |||
@@ -159,7 +157,7 @@ public class RecorderEntry implements BuildLogger { | |||
} | |||
public void taskStarted(BuildEvent event) { | |||
log( ">>> TAST STARTED -- " + event.getTask(), Project.MSG_DEBUG ); | |||
log( ">>> TASK STARTED -- " + event.getTask(), Project.MSG_DEBUG ); | |||
} | |||
public void taskFinished(BuildEvent event) { | |||
@@ -93,6 +93,7 @@ import org.apache.tools.ant.BuildException; | |||
import org.apache.tools.ant.BuildListener; | |||
import org.apache.tools.ant.BuildEvent; | |||
import org.apache.tools.ant.Project; | |||
import org.apache.tools.ant.util.StringUtils; | |||
/** | |||
* This is a simple grafical user interface to provide the information needed | |||
@@ -114,7 +115,7 @@ public class VAJAntToolGUI extends Frame { | |||
* Members | |||
*/ | |||
private VAJBuildLogger logger = new VAJBuildLogger(); | |||
private String lineSeparator = "\r\n"; | |||
private final static String lineSeparator = "\r\n"; | |||
private PrivateEventHandler iEventHandler = new PrivateEventHandler(); | |||
/** | |||
@@ -1287,9 +1288,7 @@ public class VAJAntToolGUI extends Frame { | |||
*/ | |||
private void handleException(Throwable exception) { | |||
// Write exceptions to the log-window | |||
StringWriter sw = new StringWriter(); | |||
exception.printStackTrace(new PrintWriter(sw)); | |||
String trace = new String( sw.getBuffer() ); | |||
String trace = StringUtils.getStackTrace(exception); | |||
getMessageTextArea().append(lineSeparator + lineSeparator + trace); | |||
getMessageFrame().show(); | |||
@@ -66,6 +66,7 @@ import javax.servlet.http.HttpServletResponse; | |||
import javax.servlet.ServletException; | |||
import org.apache.tools.ant.BuildException; | |||
import org.apache.tools.ant.util.StringUtils; | |||
/** | |||
* Abstract base class to provide common services for the | |||
@@ -145,9 +146,7 @@ public abstract class VAJToolsServlet extends HttpServlet { | |||
} catch( Exception e ) { | |||
try { | |||
if ( ! (e instanceof BuildException) ) { | |||
StringWriter sw = new StringWriter(); | |||
e.printStackTrace(new PrintWriter(sw)); | |||
String trace = new String( sw.getBuffer() ); | |||
String trace = StringUtils.getStackTrace(e); | |||
util.log("Program error in " + this.getClass().getName() | |||
+ ":\n" + trace, VAJUtil.MSG_ERR); | |||
} | |||
@@ -57,6 +57,7 @@ package org.apache.tools.ant.taskdefs.optional.junit; | |||
import org.apache.tools.ant.AntClassLoader; | |||
import org.apache.tools.ant.Project; | |||
import org.apache.tools.ant.BuildException; | |||
import org.apache.tools.ant.util.StringUtils; | |||
import junit.framework.TestListener; | |||
import junit.framework.TestResult; | |||
@@ -477,11 +478,7 @@ public class JUnitTestRunner implements TestListener { | |||
* Scott M. Stirling. | |||
*/ | |||
public static String getFilteredTrace(Throwable t) { | |||
StringWriter stringWriter = new StringWriter(); | |||
PrintWriter writer = new PrintWriter(stringWriter); | |||
t.printStackTrace(writer); | |||
StringBuffer buffer = stringWriter.getBuffer(); | |||
String trace = buffer.toString(); | |||
String trace = StringUtils.getStackTrace(t); | |||
return JUnitTestRunner.filterStack(trace); | |||
} | |||
@@ -76,6 +76,7 @@ import org.apache.tools.ant.DirectoryScanner; | |||
import org.apache.tools.ant.BuildException; | |||
import org.apache.tools.ant.types.FileSet; | |||
import org.apache.tools.ant.util.DOMElementWriter; | |||
import org.apache.tools.ant.util.StringUtils; | |||
/** | |||
@@ -269,9 +270,7 @@ public class XMLResultAggregator extends Task implements XMLConstants { | |||
// a testcase might have failed and write a zero-length document, | |||
// It has already failed, but hey.... mm. just put a warning | |||
log("The file " + files[i] + " is not a valid XML document. It is possibly corrupted.", Project.MSG_WARN); | |||
StringWriter sw = new StringWriter(); | |||
e.printStackTrace(new PrintWriter(sw)); | |||
log(sw.toString(), Project.MSG_DEBUG); | |||
log(StringUtils.getStackTrace(e), Project.MSG_DEBUG); | |||
} catch (IOException e){ | |||
log("Error while accessing file " + files[i] + ": " + e.getMessage(), Project.MSG_ERR); | |||
} | |||