Wrap FileWriter with BufferedWriter for better performance when the write() method is invoked in a loop
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index e83a656..452a898 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -453,6 +453,7 @@
Wolfgang Werner
Xavier Hanin
Xavier Witdouck
+Xia Li
Yohann Roussel
Yuji Yamano
Yves Martin
diff --git a/contributors.xml b/contributors.xml
index 3f567e6..febe63c 100644
--- a/contributors.xml
+++ b/contributors.xml
@@ -1864,6 +1864,10 @@
<last>Witdouck</last>
</name>
<name>
+ <first>Xia</first>
+ <last>Li</last>
+ </name>
+ <name>
<first>Yohann</first>
<last>Roussel</last>
</name>
diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/SSHExec.java b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/SSHExec.java
index fd26bf4..e3c22a5 100644
--- a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/SSHExec.java
+++ b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/SSHExec.java
@@ -18,6 +18,7 @@
package org.apache.tools.ant.taskdefs.optional.ssh;
+import java.io.BufferedWriter;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
@@ -481,7 +482,7 @@
*/
private void writeToFile(final String from, final boolean append, final File to)
throws IOException {
- try (FileWriter out = new FileWriter(to.getAbsolutePath(), append)) {
+ try (BufferedWriter out = new BufferedWriter(new FileWriter(to.getAbsolutePath(), append))) {
final StringReader in = new StringReader(from);
final char[] buffer = new char[BUFFER_SIZE];
while (true) {