git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@793462 13f79535-47bb-0310-9956-ffa450edef68master
@@ -19,14 +19,15 @@ | |||||
package org.apache.tools.ant.taskdefs; | package org.apache.tools.ant.taskdefs; | ||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileReader; | import java.io.FileReader; | ||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.PrintWriter; | |||||
import org.apache.tools.ant.BuildException; | import org.apache.tools.ant.BuildException; | ||||
import org.apache.tools.ant.Project; | import org.apache.tools.ant.Project; | ||||
import org.apache.tools.ant.Task; | import org.apache.tools.ant.Task; | ||||
import org.apache.tools.ant.util.FileUtils; | |||||
import org.apache.tools.ant.util.StringUtils; | import org.apache.tools.ant.util.StringUtils; | ||||
/** | /** | ||||
@@ -93,7 +94,7 @@ public class CVSPass extends Task { | |||||
log("passFile: " + passFile, Project.MSG_DEBUG); | log("passFile: " + passFile, Project.MSG_DEBUG); | ||||
BufferedReader reader = null; | BufferedReader reader = null; | ||||
PrintWriter writer = null; | |||||
BufferedWriter writer = null; | |||||
try { | try { | ||||
StringBuffer buf = new StringBuffer(); | StringBuffer buf = new StringBuffer(); | ||||
@@ -114,9 +115,10 @@ public class CVSPass extends Task { | |||||
log("Writing -> " + pwdfile , Project.MSG_DEBUG); | log("Writing -> " + pwdfile , Project.MSG_DEBUG); | ||||
writer = new PrintWriter(new FileWriter(passFile)); | |||||
writer = new BufferedWriter(new FileWriter(passFile)); | |||||
writer.println(pwdfile); | |||||
writer.write(pwdfile); | |||||
writer.newLine(); | |||||
} catch (IOException e) { | } catch (IOException e) { | ||||
throw new BuildException(e); | throw new BuildException(e); | ||||
} finally { | } finally { | ||||
@@ -127,9 +129,7 @@ public class CVSPass extends Task { | |||||
// ignore | // ignore | ||||
} | } | ||||
} | } | ||||
if (writer != null) { | |||||
writer.close(); | |||||
} | |||||
FileUtils.close(writer); | |||||
} | } | ||||
} | } | ||||
@@ -19,12 +19,12 @@ | |||||
package org.apache.tools.ant.taskdefs; | package org.apache.tools.ant.taskdefs; | ||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.BufferedWriter; | |||||
import java.io.ByteArrayOutputStream; | import java.io.ByteArrayOutputStream; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintWriter; | |||||
import java.io.StringReader; | import java.io.StringReader; | ||||
import java.util.HashMap; | import java.util.HashMap; | ||||
import java.util.Iterator; | import java.util.Iterator; | ||||
@@ -1177,9 +1177,9 @@ public class Execute { | |||||
private File createCommandFile(String[] cmd, String[] env) | private File createCommandFile(String[] cmd, String[] env) | ||||
throws IOException { | throws IOException { | ||||
File script = FILE_UTILS.createTempFile("ANT", ".COM", null, true, true); | File script = FILE_UTILS.createTempFile("ANT", ".COM", null, true, true); | ||||
PrintWriter out = null; | |||||
BufferedWriter out = null; | |||||
try { | try { | ||||
out = new PrintWriter(new FileWriter(script)); | |||||
out = new BufferedWriter(new FileWriter(script)); | |||||
// add the environment as logicals to the DCL script | // add the environment as logicals to the DCL script | ||||
if (env != null) { | if (env != null) { | ||||
@@ -1187,18 +1187,20 @@ public class Execute { | |||||
for (int i = 0; i < env.length; i++) { | for (int i = 0; i < env.length; i++) { | ||||
eqIndex = env[i].indexOf('='); | eqIndex = env[i].indexOf('='); | ||||
if (eqIndex != -1) { | if (eqIndex != -1) { | ||||
out.print("$ DEFINE/NOLOG "); | |||||
out.print(env[i].substring(0, eqIndex)); | |||||
out.print(" \""); | |||||
out.print(env[i].substring(eqIndex + 1)); | |||||
out.println('\"'); | |||||
out.write("$ DEFINE/NOLOG "); | |||||
out.write(env[i].substring(0, eqIndex)); | |||||
out.write(" \""); | |||||
out.write(env[i].substring(eqIndex + 1)); | |||||
out.write('\"'); | |||||
out.newLine(); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
out.print("$ " + cmd[0]); | |||||
out.write("$ " + cmd[0]); | |||||
for (int i = 1; i < cmd.length; i++) { | for (int i = 1; i < cmd.length; i++) { | ||||
out.println(" -"); | |||||
out.print(cmd[i]); | |||||
out.write(" -"); | |||||
out.newLine(); | |||||
out.write(cmd[i]); | |||||
} | } | ||||
} finally { | } finally { | ||||
if (out != null) { | if (out != null) { | ||||
@@ -21,7 +21,7 @@ import java.io.File; | |||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.FilenameFilter; | import java.io.FilenameFilter; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.PrintWriter; | |||||
import java.io.BufferedWriter; | |||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.FileReader; | import java.io.FileReader; | ||||
import java.net.MalformedURLException; | import java.net.MalformedURLException; | ||||
@@ -1706,7 +1706,7 @@ public class Javadoc extends Task { | |||||
} | } | ||||
File tmpList = null; | File tmpList = null; | ||||
PrintWriter srcListWriter = null; | |||||
BufferedWriter srcListWriter = null; | |||||
try { | try { | ||||
/** | /** | ||||
@@ -1717,7 +1717,7 @@ public class Javadoc extends Task { | |||||
tmpList = FILE_UTILS.createTempFile("javadoc", "", null, true, true); | tmpList = FILE_UTILS.createTempFile("javadoc", "", null, true, true); | ||||
toExecute.createArgument() | toExecute.createArgument() | ||||
.setValue("@" + tmpList.getAbsolutePath()); | .setValue("@" + tmpList.getAbsolutePath()); | ||||
srcListWriter = new PrintWriter( | |||||
srcListWriter = new BufferedWriter( | |||||
new FileWriter(tmpList.getAbsolutePath(), | new FileWriter(tmpList.getAbsolutePath(), | ||||
true)); | true)); | ||||
} | } | ||||
@@ -1730,9 +1730,7 @@ public class Javadoc extends Task { | |||||
throw new BuildException("Error creating temporary file", | throw new BuildException("Error creating temporary file", | ||||
e, getLocation()); | e, getLocation()); | ||||
} finally { | } finally { | ||||
if (srcListWriter != null) { | |||||
srcListWriter.close(); | |||||
} | |||||
FileUtils.close(srcListWriter); | |||||
} | } | ||||
if (packageList != null) { | if (packageList != null) { | ||||
@@ -1898,7 +1896,7 @@ public class Javadoc extends Task { | |||||
private void writeExternalArgs(Commandline toExecute) { | private void writeExternalArgs(Commandline toExecute) { | ||||
// If using an external file, write the command line options to it | // If using an external file, write the command line options to it | ||||
File optionsTmpFile = null; | File optionsTmpFile = null; | ||||
PrintWriter optionsListWriter = null; | |||||
BufferedWriter optionsListWriter = null; | |||||
try { | try { | ||||
optionsTmpFile = FILE_UTILS.createTempFile( | optionsTmpFile = FILE_UTILS.createTempFile( | ||||
"javadocOptions", "", null, true, true); | "javadocOptions", "", null, true, true); | ||||
@@ -1906,7 +1904,7 @@ public class Javadoc extends Task { | |||||
toExecute.clearArgs(); | toExecute.clearArgs(); | ||||
toExecute.createArgument().setValue( | toExecute.createArgument().setValue( | ||||
"@" + optionsTmpFile.getAbsolutePath()); | "@" + optionsTmpFile.getAbsolutePath()); | ||||
optionsListWriter = new PrintWriter( | |||||
optionsListWriter = new BufferedWriter( | |||||
new FileWriter(optionsTmpFile.getAbsolutePath(), true)); | new FileWriter(optionsTmpFile.getAbsolutePath(), true)); | ||||
for (int i = 0; i < listOpt.length; i++) { | for (int i = 0; i < listOpt.length; i++) { | ||||
String string = listOpt[i]; | String string = listOpt[i]; | ||||
@@ -1914,10 +1912,11 @@ public class Javadoc extends Task { | |||||
toExecute.createArgument().setValue(string); | toExecute.createArgument().setValue(string); | ||||
} else { | } else { | ||||
if (string.startsWith("-")) { | if (string.startsWith("-")) { | ||||
optionsListWriter.print(string); | |||||
optionsListWriter.print(" "); | |||||
optionsListWriter.write(string); | |||||
optionsListWriter.write(" "); | |||||
} else { | } else { | ||||
optionsListWriter.println(quoteString(string)); | |||||
optionsListWriter.write(quoteString(string)); | |||||
optionsListWriter.newLine(); | |||||
} | } | ||||
} | } | ||||
} | } | ||||
@@ -2170,13 +2169,14 @@ public class Javadoc extends Task { | |||||
Vector sourceFilesToDoc, | Vector sourceFilesToDoc, | ||||
boolean useExternalFile, | boolean useExternalFile, | ||||
File tmpList, | File tmpList, | ||||
PrintWriter srcListWriter) | |||||
BufferedWriter srcListWriter) | |||||
throws IOException { | throws IOException { | ||||
Enumeration e = packagesToDoc.elements(); | Enumeration e = packagesToDoc.elements(); | ||||
while (e.hasMoreElements()) { | while (e.hasMoreElements()) { | ||||
String packageName = (String) e.nextElement(); | String packageName = (String) e.nextElement(); | ||||
if (useExternalFile) { | if (useExternalFile) { | ||||
srcListWriter.println(packageName); | |||||
srcListWriter.write(packageName); | |||||
srcListWriter.newLine(); | |||||
} else { | } else { | ||||
toExecute.createArgument().setValue(packageName); | toExecute.createArgument().setValue(packageName); | ||||
} | } | ||||
@@ -2194,10 +2194,11 @@ public class Javadoc extends Task { | |||||
if (File.separatorChar == '\\') { | if (File.separatorChar == '\\') { | ||||
name = sourceFileName.replace(File.separatorChar, '/'); | name = sourceFileName.replace(File.separatorChar, '/'); | ||||
} | } | ||||
srcListWriter.println("\"" + name + "\""); | |||||
srcListWriter.write("\"" + name + "\""); | |||||
} else { | } else { | ||||
srcListWriter.println(sourceFileName); | |||||
srcListWriter.write(sourceFileName); | |||||
} | } | ||||
srcListWriter.newLine(); | |||||
} else { | } else { | ||||
toExecute.createArgument().setValue(sourceFileName); | toExecute.createArgument().setValue(sourceFileName); | ||||
} | } | ||||
@@ -17,10 +17,10 @@ | |||||
*/ | */ | ||||
package org.apache.tools.ant.taskdefs; | package org.apache.tools.ant.taskdefs; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.PrintWriter; | |||||
import org.apache.tools.ant.BuildException; | import org.apache.tools.ant.BuildException; | ||||
import org.apache.tools.ant.Project; | import org.apache.tools.ant.Project; | ||||
@@ -83,13 +83,14 @@ public class Jikes { | |||||
if (myos.toLowerCase().indexOf("windows") >= 0 | if (myos.toLowerCase().indexOf("windows") >= 0 | ||||
&& args.length > MAX_FILES_ON_COMMAND_LINE) { | && args.length > MAX_FILES_ON_COMMAND_LINE) { | ||||
PrintWriter out = null; | |||||
BufferedWriter out = null; | |||||
try { | try { | ||||
tmpFile = FileUtils.getFileUtils().createTempFile("jikes", | tmpFile = FileUtils.getFileUtils().createTempFile("jikes", | ||||
"tmp", null, false, true); | "tmp", null, false, true); | ||||
out = new PrintWriter(new FileWriter(tmpFile)); | |||||
out = new BufferedWriter(new FileWriter(tmpFile)); | |||||
for (int i = 0; i < args.length; i++) { | for (int i = 0; i < args.length; i++) { | ||||
out.println(args[i]); | |||||
out.write(args[i]); | |||||
out.newLine(); | |||||
} | } | ||||
out.flush(); | out.flush(); | ||||
commandArray = new String[] {command, | commandArray = new String[] {command, | ||||
@@ -21,10 +21,10 @@ package org.apache.tools.ant.taskdefs.compilers; | |||||
//Java5 style | //Java5 style | ||||
//import static org.apache.tools.ant.util.StringUtils.LINE_SEP; | //import static org.apache.tools.ant.util.StringUtils.LINE_SEP; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.PrintWriter; | |||||
import org.apache.tools.ant.BuildException; | import org.apache.tools.ant.BuildException; | ||||
import org.apache.tools.ant.Location; | import org.apache.tools.ant.Location; | ||||
import org.apache.tools.ant.Project; | import org.apache.tools.ant.Project; | ||||
@@ -467,18 +467,19 @@ public abstract class DefaultCompilerAdapter implements CompilerAdapter { | |||||
*/ | */ | ||||
if (Commandline.toString(args).length() > COMMAND_LINE_LIMIT | if (Commandline.toString(args).length() > COMMAND_LINE_LIMIT | ||||
&& firstFileName >= 0) { | && firstFileName >= 0) { | ||||
PrintWriter out = null; | |||||
BufferedWriter out = null; | |||||
try { | try { | ||||
tmpFile = FILE_UTILS.createTempFile( | tmpFile = FILE_UTILS.createTempFile( | ||||
"files", "", getJavac().getTempdir(), true, true); | "files", "", getJavac().getTempdir(), true, true); | ||||
out = new PrintWriter(new FileWriter(tmpFile)); | |||||
out = new BufferedWriter(new FileWriter(tmpFile)); | |||||
for (int i = firstFileName; i < args.length; i++) { | for (int i = firstFileName; i < args.length; i++) { | ||||
if (quoteFiles && args[i].indexOf(" ") > -1) { | if (quoteFiles && args[i].indexOf(" ") > -1) { | ||||
args[i] = args[i].replace(File.separatorChar, '/'); | args[i] = args[i].replace(File.separatorChar, '/'); | ||||
out.println("\"" + args[i] + "\""); | |||||
out.write("\"" + args[i] + "\""); | |||||
} else { | } else { | ||||
out.println(args[i]); | |||||
out.write(args[i]); | |||||
} | } | ||||
out.newLine(); | |||||
} | } | ||||
out.flush(); | out.flush(); | ||||
commandArray = new String[firstFileName + 1]; | commandArray = new String[firstFileName + 1]; | ||||
@@ -18,12 +18,12 @@ | |||||
package org.apache.tools.ant.taskdefs.email; | package org.apache.tools.ant.taskdefs.email; | ||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileReader; | import java.io.FileReader; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStreamWriter; | import java.io.OutputStreamWriter; | ||||
import java.io.PrintStream; | import java.io.PrintStream; | ||||
import java.io.PrintWriter; | |||||
import org.apache.tools.ant.ProjectComponent; | import org.apache.tools.ant.ProjectComponent; | ||||
@@ -114,10 +114,10 @@ public class Message extends ProjectComponent { | |||||
public void print(PrintStream ps) | public void print(PrintStream ps) | ||||
throws IOException { | throws IOException { | ||||
// We need character encoding aware printing here. | // We need character encoding aware printing here. | ||||
// So, using PrintWriter over OutputStreamWriter instead of PrintStream | |||||
PrintWriter out | |||||
= charset != null ? new PrintWriter(new OutputStreamWriter(ps, charset)) | |||||
: new PrintWriter(ps); | |||||
// So, using BufferedWriter over OutputStreamWriter instead of PrintStream | |||||
BufferedWriter out | |||||
= charset != null ? new BufferedWriter(new OutputStreamWriter(ps, charset)) | |||||
: new BufferedWriter(new OutputStreamWriter(ps)); | |||||
if (messageSource != null) { | if (messageSource != null) { | ||||
// Read message from a file | // Read message from a file | ||||
FileReader freader = new FileReader(messageSource); | FileReader freader = new FileReader(messageSource); | ||||
@@ -126,13 +126,15 @@ public class Message extends ProjectComponent { | |||||
BufferedReader in = new BufferedReader(freader); | BufferedReader in = new BufferedReader(freader); | ||||
String line = null; | String line = null; | ||||
while ((line = in.readLine()) != null) { | while ((line = in.readLine()) != null) { | ||||
out.println(getProject().replaceProperties(line)); | |||||
out.write(getProject().replaceProperties(line)); | |||||
out.newLine(); | |||||
} | } | ||||
} finally { | } finally { | ||||
freader.close(); | freader.close(); | ||||
} | } | ||||
} else { | } else { | ||||
out.println(getProject().replaceProperties(buffer.substring(0))); | |||||
out.write(getProject().replaceProperties(buffer.substring(0))); | |||||
out.newLine(); | |||||
} | } | ||||
out.flush(); | out.flush(); | ||||
} | } | ||||
@@ -18,11 +18,11 @@ | |||||
package org.apache.tools.ant.taskdefs.optional; | package org.apache.tools.ant.taskdefs.optional; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileOutputStream; | |||||
import java.io.FileWriter; | |||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintWriter; | |||||
import java.util.Enumeration; | import java.util.Enumeration; | ||||
import java.util.Vector; | import java.util.Vector; | ||||
import org.apache.tools.ant.BuildException; | import org.apache.tools.ant.BuildException; | ||||
@@ -179,11 +179,12 @@ public class Cab extends MatchingTask { | |||||
throws IOException { | throws IOException { | ||||
File listFile = FILE_UTILS.createTempFile("ant", "", null, true, true); | File listFile = FILE_UTILS.createTempFile("ant", "", null, true, true); | ||||
PrintWriter writer = new PrintWriter(new FileOutputStream(listFile)); | |||||
BufferedWriter writer = new BufferedWriter(new FileWriter(listFile)); | |||||
int size = files.size(); | int size = files.size(); | ||||
for (int i = 0; i < size; i++) { | for (int i = 0; i < size; i++) { | ||||
writer.println('\"' + files.elementAt(i).toString() + '\"'); | |||||
writer.write('\"' + files.elementAt(i).toString() + '\"'); | |||||
writer.newLine(); | |||||
} | } | ||||
writer.close(); | writer.close(); | ||||
@@ -27,7 +27,6 @@ import java.io.FileWriter; | |||||
import java.io.InputStreamReader; | import java.io.InputStreamReader; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStreamWriter; | import java.io.OutputStreamWriter; | ||||
import java.io.PrintWriter; | |||||
import java.io.Reader; | import java.io.Reader; | ||||
import java.io.Writer; | import java.io.Writer; | ||||
import java.util.Iterator; | import java.util.Iterator; | ||||
@@ -368,7 +367,6 @@ public class ReplaceRegExp extends Task { | |||||
BufferedReader br = new BufferedReader(r); | BufferedReader br = new BufferedReader(r); | ||||
BufferedWriter bw = new BufferedWriter(w); | BufferedWriter bw = new BufferedWriter(w); | ||||
PrintWriter pw = new PrintWriter(bw); | |||||
boolean changes = false; | boolean changes = false; | ||||
@@ -398,8 +396,8 @@ public class ReplaceRegExp extends Task { | |||||
changes = true; | changes = true; | ||||
} | } | ||||
pw.print(res); | |||||
pw.print('\r'); | |||||
bw.write(res); | |||||
bw.write('\r'); | |||||
linebuf = new StringBuffer(); | linebuf = new StringBuffer(); | ||||
// hasCR is still true (for the second one) | // hasCR is still true (for the second one) | ||||
@@ -416,12 +414,12 @@ public class ReplaceRegExp extends Task { | |||||
changes = true; | changes = true; | ||||
} | } | ||||
pw.print(res); | |||||
bw.write(res); | |||||
if (hasCR) { | if (hasCR) { | ||||
pw.print('\r'); | |||||
bw.write('\r'); | |||||
hasCR = false; | hasCR = false; | ||||
} | } | ||||
pw.print('\n'); | |||||
bw.write('\n'); | |||||
linebuf = new StringBuffer(); | linebuf = new StringBuffer(); | ||||
} else { // any other char | } else { // any other char | ||||
@@ -434,9 +432,9 @@ public class ReplaceRegExp extends Task { | |||||
changes = true; | changes = true; | ||||
} | } | ||||
pw.print(res); | |||||
bw.write(res); | |||||
if (hasCR) { | if (hasCR) { | ||||
pw.print('\r'); | |||||
bw.write('\r'); | |||||
hasCR = false; | hasCR = false; | ||||
} | } | ||||
@@ -449,7 +447,7 @@ public class ReplaceRegExp extends Task { | |||||
} | } | ||||
} while (c >= 0); | } while (c >= 0); | ||||
pw.flush(); | |||||
bw.flush(); | |||||
} else { | } else { | ||||
String buf = FileUtils.safeReadFully(br); | String buf = FileUtils.safeReadFully(br); | ||||
@@ -459,8 +457,8 @@ public class ReplaceRegExp extends Task { | |||||
changes = true; | changes = true; | ||||
} | } | ||||
pw.print(res); | |||||
pw.flush(); | |||||
bw.write(res); | |||||
bw.flush(); | |||||
} | } | ||||
r.close(); | r.close(); | ||||
@@ -18,11 +18,11 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.depend; | package org.apache.tools.ant.taskdefs.optional.depend; | ||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileReader; | import java.io.FileReader; | ||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.PrintWriter; | |||||
import java.net.URL; | import java.net.URL; | ||||
import java.util.Enumeration; | import java.util.Enumeration; | ||||
import java.util.Hashtable; | import java.util.Hashtable; | ||||
@@ -216,23 +216,25 @@ public class Depend extends MatchingTask { | |||||
private void writeCachedDependencies(Hashtable dependencyMap) | private void writeCachedDependencies(Hashtable dependencyMap) | ||||
throws IOException { | throws IOException { | ||||
if (cache != null) { | if (cache != null) { | ||||
PrintWriter pw = null; | |||||
BufferedWriter pw = null; | |||||
try { | try { | ||||
cache.mkdirs(); | cache.mkdirs(); | ||||
File depFile = new File(cache, CACHE_FILE_NAME); | File depFile = new File(cache, CACHE_FILE_NAME); | ||||
pw = new PrintWriter(new FileWriter(depFile)); | |||||
pw = new BufferedWriter(new FileWriter(depFile)); | |||||
Enumeration e = dependencyMap.keys(); | Enumeration e = dependencyMap.keys(); | ||||
while (e.hasMoreElements()) { | while (e.hasMoreElements()) { | ||||
String className = (String) e.nextElement(); | String className = (String) e.nextElement(); | ||||
pw.println(CLASSNAME_PREPEND + className); | |||||
pw.write(CLASSNAME_PREPEND + className); | |||||
pw.newLine(); | |||||
Vector dependencyList | Vector dependencyList | ||||
= (Vector) dependencyMap.get(className); | = (Vector) dependencyMap.get(className); | ||||
int size = dependencyList.size(); | int size = dependencyList.size(); | ||||
for (int x = 0; x < size; x++) { | for (int x = 0; x < size; x++) { | ||||
pw.println(dependencyList.elementAt(x)); | |||||
pw.write(String.valueOf(dependencyList.elementAt(x))); | |||||
pw.newLine(); | |||||
} | } | ||||
} | } | ||||
} finally { | } finally { | ||||
@@ -18,14 +18,16 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.junit; | package org.apache.tools.ant.taskdefs.optional.junit; | ||||
import java.io.BufferedWriter; | |||||
import java.io.IOException; | |||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintWriter; | |||||
import java.io.StringWriter; | import java.io.StringWriter; | ||||
import java.text.NumberFormat; | import java.text.NumberFormat; | ||||
import junit.framework.AssertionFailedError; | import junit.framework.AssertionFailedError; | ||||
import junit.framework.Test; | import junit.framework.Test; | ||||
import org.apache.tools.ant.BuildException; | |||||
import org.apache.tools.ant.util.FileUtils; | import org.apache.tools.ant.util.FileUtils; | ||||
import org.apache.tools.ant.util.StringUtils; | import org.apache.tools.ant.util.StringUtils; | ||||
@@ -48,7 +50,7 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
/** | /** | ||||
* Used for writing the results. | * Used for writing the results. | ||||
*/ | */ | ||||
private PrintWriter output; | |||||
private BufferedWriter output; | |||||
/** | /** | ||||
* Used as part of formatting the results. | * Used as part of formatting the results. | ||||
@@ -58,7 +60,7 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
/** | /** | ||||
* Used for writing formatted results to. | * Used for writing formatted results to. | ||||
*/ | */ | ||||
private PrintWriter resultWriter; | |||||
private BufferedWriter resultWriter; | |||||
/** | /** | ||||
* Formatter for timings. | * Formatter for timings. | ||||
@@ -80,7 +82,7 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
*/ | */ | ||||
public BriefJUnitResultFormatter() { | public BriefJUnitResultFormatter() { | ||||
results = new StringWriter(); | results = new StringWriter(); | ||||
resultWriter = new PrintWriter(results); | |||||
resultWriter = new BufferedWriter(results); | |||||
} | } | ||||
/** | /** | ||||
@@ -89,7 +91,7 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
*/ | */ | ||||
public void setOutput(OutputStream out) { | public void setOutput(OutputStream out) { | ||||
this.out = out; | this.out = out; | ||||
output = new PrintWriter(out); | |||||
output = new BufferedWriter(new java.io.OutputStreamWriter(out)); | |||||
} | } | ||||
/** | /** | ||||
@@ -120,8 +122,12 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
StringBuffer sb = new StringBuffer("Testsuite: "); | StringBuffer sb = new StringBuffer("Testsuite: "); | ||||
sb.append(suite.getName()); | sb.append(suite.getName()); | ||||
sb.append(StringUtils.LINE_SEP); | sb.append(StringUtils.LINE_SEP); | ||||
output.write(sb.toString()); | |||||
output.flush(); | |||||
try { | |||||
output.write(sb.toString()); | |||||
output.flush(); | |||||
} catch (IOException ex) { | |||||
throw new BuildException(ex); | |||||
} | |||||
} | } | ||||
/** | /** | ||||
@@ -164,6 +170,8 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
resultWriter.close(); | resultWriter.close(); | ||||
output.write(results.toString()); | output.write(results.toString()); | ||||
output.flush(); | output.flush(); | ||||
} catch (IOException ex) { | |||||
throw new BuildException(ex); | |||||
} finally { | } finally { | ||||
if (out != System.out && out != System.err) { | if (out != System.out && out != System.err) { | ||||
FileUtils.close(out); | FileUtils.close(out); | ||||
@@ -242,10 +250,17 @@ public class BriefJUnitResultFormatter implements JUnitResultFormatter { | |||||
endTest(test); | endTest(test); | ||||
} | } | ||||
resultWriter.println(formatTest(test) + type); | |||||
resultWriter.println(error.getMessage()); | |||||
String strace = JUnitTestRunner.getFilteredTrace(error); | |||||
resultWriter.println(strace); | |||||
resultWriter.println(); | |||||
try { | |||||
resultWriter.write(formatTest(test) + type); | |||||
resultWriter.newLine(); | |||||
resultWriter.write(error.getMessage()); | |||||
resultWriter.newLine(); | |||||
String strace = JUnitTestRunner.getFilteredTrace(error); | |||||
resultWriter.write(strace); | |||||
resultWriter.newLine(); | |||||
resultWriter.newLine(); | |||||
} catch (IOException ex) { | |||||
throw new BuildException(ex); | |||||
} | |||||
} | } | ||||
} | } |
@@ -17,11 +17,11 @@ | |||||
*/ | */ | ||||
package org.apache.tools.ant.taskdefs.optional.junit; | package org.apache.tools.ant.taskdefs.optional.junit; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileNotFoundException; | |||||
import java.io.FileOutputStream; | |||||
import java.io.FileWriter; | |||||
import java.io.IOException; | |||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintWriter; | |||||
import java.text.SimpleDateFormat; | import java.text.SimpleDateFormat; | ||||
import java.util.Date; | import java.util.Date; | ||||
import java.util.Iterator; | import java.util.Iterator; | ||||
@@ -90,7 +90,7 @@ public class FailureRecorder extends ProjectComponent implements JUnitResultForm | |||||
private static SortedSet/*<TestInfos>*/ failedTests = new TreeSet(); | private static SortedSet/*<TestInfos>*/ failedTests = new TreeSet(); | ||||
/** A writer for writing the generated source to. */ | /** A writer for writing the generated source to. */ | ||||
private PrintWriter writer; | |||||
private BufferedWriter writer; | |||||
/** | /** | ||||
* Location and name of the generated JUnit class. | * Location and name of the generated JUnit class. | ||||
@@ -249,54 +249,66 @@ public class FailureRecorder extends ProjectComponent implements JUnitResultForm | |||||
verbose("Write collector class to '" + sourceFile.getAbsolutePath() + "'"); | verbose("Write collector class to '" + sourceFile.getAbsolutePath() + "'"); | ||||
sourceFile.delete(); | sourceFile.delete(); | ||||
writer = new PrintWriter(new FileOutputStream(sourceFile)); | |||||
writer = new BufferedWriter(new FileWriter(sourceFile)); | |||||
createClassHeader(); | createClassHeader(); | ||||
createSuiteMethod(); | createSuiteMethod(); | ||||
createClassFooter(); | createClassFooter(); | ||||
FileUtils.close(writer); | FileUtils.close(writer); | ||||
} catch (FileNotFoundException e) { | |||||
} catch (IOException e) { | |||||
e.printStackTrace(); | e.printStackTrace(); | ||||
} | } | ||||
} | } | ||||
private void createClassHeader() { | |||||
private void createClassHeader() throws IOException { | |||||
String className = getLocationName().replace('\\', '/'); | String className = getLocationName().replace('\\', '/'); | ||||
if (className.indexOf('/') > -1) { | if (className.indexOf('/') > -1) { | ||||
className = className.substring(className.lastIndexOf('/') + 1); | className = className.substring(className.lastIndexOf('/') + 1); | ||||
} | } | ||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss,SSS"); | SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd HH:mm:ss,SSS"); | ||||
writer.print("// generated on: "); | |||||
writer.println(sdf.format(new Date())); | |||||
writer.println("import junit.framework.*;"); | |||||
writer.print("public class "); | |||||
writer.print(className); | |||||
writer.write("// generated on: "); | |||||
writer.write(sdf.format(new Date())); | |||||
writer.newLine(); | |||||
writer.write("import junit.framework.*;"); | |||||
writer.newLine(); | |||||
writer.write("public class "); | |||||
writer.write(className); | |||||
// If this class does not extend TC, Ant doesnt run these | // If this class does not extend TC, Ant doesnt run these | ||||
writer.println(" extends TestCase {"); | |||||
writer.write(" extends TestCase {"); | |||||
writer.newLine(); | |||||
// standard String-constructor | // standard String-constructor | ||||
writer.print(" public "); | |||||
writer.print(className); | |||||
writer.println("(String testname) {"); | |||||
writer.println(" super(testname);"); | |||||
writer.println(" }"); | |||||
writer.write(" public "); | |||||
writer.write(className); | |||||
writer.write("(String testname) {"); | |||||
writer.newLine(); | |||||
writer.write(" super(testname);"); | |||||
writer.newLine(); | |||||
writer.write(" }"); | |||||
writer.newLine(); | |||||
} | } | ||||
private void createSuiteMethod() { | |||||
writer.println(" public static Test suite() {"); | |||||
writer.println(" TestSuite suite = new TestSuite();"); | |||||
private void createSuiteMethod() throws IOException { | |||||
writer.write(" public static Test suite() {"); | |||||
writer.newLine(); | |||||
writer.write(" TestSuite suite = new TestSuite();"); | |||||
writer.newLine(); | |||||
for (Iterator iter = failedTests.iterator(); iter.hasNext();) { | for (Iterator iter = failedTests.iterator(); iter.hasNext();) { | ||||
TestInfos testInfos = (TestInfos) iter.next(); | TestInfos testInfos = (TestInfos) iter.next(); | ||||
writer.print(" suite.addTest("); | |||||
writer.print(testInfos); | |||||
writer.println(");"); | |||||
writer.write(" suite.addTest("); | |||||
writer.write(String.valueOf(testInfos)); | |||||
writer.write(");"); | |||||
writer.newLine(); | |||||
} | } | ||||
writer.println(" return suite;"); | |||||
writer.println(" }"); | |||||
writer.write(" return suite;"); | |||||
writer.newLine(); | |||||
writer.write(" }"); | |||||
writer.newLine(); | |||||
} | } | ||||
private void createClassFooter() { | |||||
writer.println("}"); | |||||
private void createClassFooter() throws IOException { | |||||
writer.write("}"); | |||||
writer.newLine(); | |||||
} | } | ||||
// ===== Helper classes and methods ===== | // ===== Helper classes and methods ===== | ||||
@@ -27,7 +27,6 @@ import java.io.FileWriter; | |||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintStream; | import java.io.PrintStream; | ||||
import java.io.PrintWriter; | |||||
import java.lang.reflect.Constructor; | import java.lang.reflect.Constructor; | ||||
import java.net.URL; | import java.net.URL; | ||||
import java.util.ArrayList; | import java.util.ArrayList; | ||||
@@ -849,10 +848,10 @@ public class JUnitTask extends Task { | |||||
// Create a temporary file to pass the test cases to run to | // Create a temporary file to pass the test cases to run to | ||||
// the runner (one test case per line) | // the runner (one test case per line) | ||||
File casesFile = createTempPropertiesFile("junittestcases"); | File casesFile = createTempPropertiesFile("junittestcases"); | ||||
PrintWriter writer = null; | |||||
BufferedWriter writer = null; | |||||
try { | try { | ||||
writer = | writer = | ||||
new PrintWriter(new BufferedWriter(new FileWriter(casesFile))); | |||||
new BufferedWriter(new BufferedWriter(new FileWriter(casesFile))); | |||||
log("Creating casesfile '" + casesFile.getAbsolutePath() | log("Creating casesfile '" + casesFile.getAbsolutePath() | ||||
+ "' with content: ", Project.MSG_VERBOSE); | + "' with content: ", Project.MSG_VERBOSE); | ||||
@@ -1969,15 +1968,16 @@ public class JUnitTask extends Task { | |||||
return t; | return t; | ||||
} | } | ||||
private static void printDual(PrintWriter w, PrintStream s, String text) | |||||
private static void printDual(BufferedWriter w, PrintStream s, String text) | |||||
throws IOException { | throws IOException { | ||||
w.print(text); | |||||
w.write(text); | |||||
s.print(text); | s.print(text); | ||||
} | } | ||||
private static void printlnDual(PrintWriter w, PrintStream s, String text) | |||||
private static void printlnDual(BufferedWriter w, PrintStream s, String text) | |||||
throws IOException { | throws IOException { | ||||
w.println(text); | |||||
w.write(text); | |||||
w.newLine(); | |||||
s.println(text); | s.println(text); | ||||
} | } | ||||
} | } |
@@ -19,6 +19,7 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.junit; | package org.apache.tools.ant.taskdefs.optional.junit; | ||||
import java.io.BufferedReader; | import java.io.BufferedReader; | ||||
import java.io.BufferedWriter; | |||||
import java.io.ByteArrayOutputStream; | import java.io.ByteArrayOutputStream; | ||||
import java.io.File; | import java.io.File; | ||||
import java.io.FileInputStream; | import java.io.FileInputStream; | ||||
@@ -26,7 +27,6 @@ import java.io.FileWriter; | |||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintStream; | import java.io.PrintStream; | ||||
import java.io.PrintWriter; | |||||
import java.io.StringReader; | import java.io.StringReader; | ||||
import java.io.StringWriter; | import java.io.StringWriter; | ||||
import java.lang.reflect.Method; | import java.lang.reflect.Method; | ||||
@@ -878,7 +878,7 @@ public class JUnitTestRunner implements TestListener, JUnitTaskMirror.JUnitTestR | |||||
return stack; | return stack; | ||||
} | } | ||||
StringWriter sw = new StringWriter(); | StringWriter sw = new StringWriter(); | ||||
PrintWriter pw = new PrintWriter(sw); | |||||
BufferedWriter pw = new BufferedWriter(sw); | |||||
StringReader sr = new StringReader(stack); | StringReader sr = new StringReader(stack); | ||||
BufferedReader br = new BufferedReader(sr); | BufferedReader br = new BufferedReader(sr); | ||||
@@ -886,7 +886,8 @@ public class JUnitTestRunner implements TestListener, JUnitTaskMirror.JUnitTestR | |||||
try { | try { | ||||
while ((line = br.readLine()) != null) { | while ((line = br.readLine()) != null) { | ||||
if (!filterLine(line)) { | if (!filterLine(line)) { | ||||
pw.println(line); | |||||
pw.write(line); | |||||
pw.newLine(); | |||||
} | } | ||||
} | } | ||||
} catch (Exception e) { | } catch (Exception e) { | ||||
@@ -18,9 +18,9 @@ | |||||
package org.apache.tools.ant.taskdefs.optional.junit; | package org.apache.tools.ant.taskdefs.optional.junit; | ||||
import java.io.BufferedWriter; | |||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.OutputStream; | import java.io.OutputStream; | ||||
import java.io.PrintWriter; | |||||
import java.io.StringWriter; | import java.io.StringWriter; | ||||
import java.text.NumberFormat; | import java.text.NumberFormat; | ||||
import java.util.Hashtable; | import java.util.Hashtable; | ||||
@@ -61,7 +61,7 @@ public class PlainJUnitResultFormatter implements JUnitResultFormatter { | |||||
/** | /** | ||||
* Convenience layer on top of {@link #inner inner}. | * Convenience layer on top of {@link #inner inner}. | ||||
*/ | */ | ||||
private PrintWriter wri; | |||||
private BufferedWriter wri; | |||||
/** | /** | ||||
* Suppress endTest if testcase failed. | * Suppress endTest if testcase failed. | ||||
*/ | */ | ||||
@@ -73,7 +73,7 @@ public class PlainJUnitResultFormatter implements JUnitResultFormatter { | |||||
/** No arg constructor */ | /** No arg constructor */ | ||||
public PlainJUnitResultFormatter() { | public PlainJUnitResultFormatter() { | ||||
inner = new StringWriter(); | inner = new StringWriter(); | ||||
wri = new PrintWriter(inner); | |||||
wri = new BufferedWriter(inner); | |||||
} | } | ||||
/** {@inheritDoc}. */ | /** {@inheritDoc}. */ | ||||
@@ -185,7 +185,8 @@ public class PlainJUnitResultFormatter implements JUnitResultFormatter { | |||||
return; | return; | ||||
} | } | ||||
synchronized (wri) { | synchronized (wri) { | ||||
wri.print("Testcase: " | |||||
try { | |||||
wri.write("Testcase: " | |||||
+ JUnitVersionHelper.getTestCaseName(test)); | + JUnitVersionHelper.getTestCaseName(test)); | ||||
Long l = (Long) testStarts.get(test); | Long l = (Long) testStarts.get(test); | ||||
double seconds = 0; | double seconds = 0; | ||||
@@ -195,7 +196,11 @@ public class PlainJUnitResultFormatter implements JUnitResultFormatter { | |||||
(System.currentTimeMillis() - l.longValue()) / ONE_SECOND; | (System.currentTimeMillis() - l.longValue()) / ONE_SECOND; | ||||
} | } | ||||
wri.println(" took " + nf.format(seconds) + " sec"); | |||||
wri.write(" took " + nf.format(seconds) + " sec"); | |||||
wri.newLine(); | |||||
} catch (IOException ex) { | |||||
throw new BuildException(ex); | |||||
} | |||||
} | } | ||||
} | } | ||||
@@ -239,11 +244,17 @@ public class PlainJUnitResultFormatter implements JUnitResultFormatter { | |||||
failed.put(test, Boolean.TRUE); | failed.put(test, Boolean.TRUE); | ||||
} | } | ||||
wri.println(type); | |||||
wri.println(t.getMessage()); | |||||
try { | |||||
wri.write(type); | |||||
wri.newLine(); | |||||
wri.write(t.getMessage()); | |||||
wri.newLine(); | |||||
String strace = JUnitTestRunner.getFilteredTrace(t); | String strace = JUnitTestRunner.getFilteredTrace(t); | ||||
wri.print(strace); | |||||
wri.println(""); | |||||
wri.write(strace); | |||||
wri.newLine(); | |||||
} catch (IOException ex) { | |||||
throw new BuildException(ex); | |||||
} | |||||
} | } | ||||
} | } | ||||
@@ -17,9 +17,9 @@ | |||||
*/ | */ | ||||
package org.apache.tools.ant.util; | package org.apache.tools.ant.util; | ||||
import java.io.BufferedWriter; | |||||
import java.io.File; | import java.io.File; | ||||
import java.io.IOException; | import java.io.IOException; | ||||
import java.io.PrintWriter; | |||||
import java.io.FileWriter; | import java.io.FileWriter; | ||||
import java.io.BufferedWriter; | import java.io.BufferedWriter; | ||||
import java.util.Vector; | import java.util.Vector; | ||||
@@ -441,11 +441,12 @@ public final class JavaEnvUtils { | |||||
public static File createVmsJavaOptionFile(String[] cmd) | public static File createVmsJavaOptionFile(String[] cmd) | ||||
throws IOException { | throws IOException { | ||||
File script = FILE_UTILS.createTempFile("ANT", ".JAVA_OPTS", null, false, true); | File script = FILE_UTILS.createTempFile("ANT", ".JAVA_OPTS", null, false, true); | ||||
PrintWriter out = null; | |||||
BufferedWriter out = null; | |||||
try { | try { | ||||
out = new PrintWriter(new BufferedWriter(new FileWriter(script))); | |||||
out = new BufferedWriter(new FileWriter(script)); | |||||
for (int i = 0; i < cmd.length; i++) { | for (int i = 0; i < cmd.length; i++) { | ||||
out.println(cmd[i]); | |||||
out.write(cmd[i]); | |||||
out.newLine(); | |||||
} | } | ||||
} finally { | } finally { | ||||
FileUtils.close(out); | FileUtils.close(out); | ||||