summaryrefslogtreecommitdiff
path: root/platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java')
-rw-r--r--platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java23
1 files changed, 18 insertions, 5 deletions
diff --git a/platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java b/platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java
index be4cfccad15c..7381eea575f3 100644
--- a/platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java
+++ b/platform/script-debugger/protocol/protocol-reader-runtime/src/org/jetbrains/jsonProtocol/OutMessage.java
@@ -5,13 +5,14 @@ import gnu.trove.TIntArrayList;
import gnu.trove.TIntHashSet;
import gnu.trove.TIntProcedure;
import org.jetbrains.annotations.NotNull;
+import org.jetbrains.io.JsonUtil;
import java.io.IOException;
-import java.io.StringWriter;
import java.util.List;
import java.util.Map;
public abstract class OutMessage {
+ @SuppressWarnings("IOResourceOpenedButNotSafelyClosed")
private final StringWriter stringWriter = new StringWriter();
public final JsonWriter writer = new JsonWriter(stringWriter);
@@ -149,7 +150,7 @@ public abstract class OutMessage {
}
}
- protected final void writeSingletonIntArray(@NotNull String name, @NotNull int value) {
+ protected final void writeSingletonIntArray(@NotNull String name, int value) {
try {
beginArguments();
writer.name(name);
@@ -180,7 +181,7 @@ public abstract class OutMessage {
isNotFirst = true;
}
- StringBuffer buffer = item.stringWriter.getBuffer();
+ StringBuilder buffer = item.stringWriter.getBuffer();
if (!item.finalized) {
item.finalized = true;
try {
@@ -217,7 +218,7 @@ public abstract class OutMessage {
public static void prepareWriteRaw(OutMessage message, String name) throws IOException {
message.writer.name(name).nullValue();
- StringBuffer myBuffer = message.stringWriter.getBuffer();
+ StringBuilder myBuffer = message.stringWriter.getBuffer();
myBuffer.delete(myBuffer.length() - "null".length(), myBuffer.length());
}
@@ -230,7 +231,7 @@ public abstract class OutMessage {
beginArguments();
prepareWriteRaw(this, name);
- StringBuffer buffer = value.stringWriter.getBuffer();
+ StringBuilder buffer = value.stringWriter.getBuffer();
if (!value.finalized) {
value.close();
}
@@ -284,6 +285,18 @@ public abstract class OutMessage {
}
}
+ protected final void writeString(String name, CharSequence value) {
+ if (value != null) {
+ try {
+ prepareWriteRaw(this, name);
+ JsonUtil.escape(value, stringWriter.getBuffer());
+ }
+ catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+ }
+
protected final void writeNullableString(String name, String value) {
try {
beginArguments();