Changeset: 755c05380872 for monetdb-java
URL: https://dev.monetdb.org/hg/monetdb-java/rev/755c05380872
Modified Files:
src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
Branch: default
Log Message:
Optimise waitForPrompt() by delaying the creation of a new StringBuilder object
till it is really needed.
diffs (29 lines):
diff --git a/src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
b/src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
--- a/src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
+++ b/src/main/java/org/monetdb/mcl/io/BufferedMCLReader.java
@@ -131,16 +131,21 @@ public final class BufferedMCLReader ext
* TODO(Wouter): should probably not have to be synchronized.
*/
final public synchronized String waitForPrompt() throws IOException {
- final StringBuilder ret = new StringBuilder(128);
+ StringBuilder errmsgs = null;
String tmp;
while (lineType != LineType.PROMPT) {
tmp = readLine();
if (tmp == null)
throw new IOException("Connection to server
lost!");
- if (lineType == LineType.ERROR)
- ret.append('\n').append(tmp.substring(1));
+ if (lineType == LineType.ERROR) {
+ if (errmsgs == null)
+ errmsgs = new StringBuilder(128);
+
errmsgs.append('\n').append(tmp.substring(1).trim());
+ }
}
- return ret.length() == 0 ? null : ret.toString().trim();
+ if (errmsgs == null)
+ return null;
+ return errmsgs.toString();
}
}
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]