summaryrefslogtreecommitdiffstats
path: root/document
diff options
context:
space:
mode:
Diffstat (limited to 'document')
-rw-r--r--document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java2
-rw-r--r--document/src/main/java/com/yahoo/document/json/JsonWriter.java19
2 files changed, 13 insertions, 8 deletions
diff --git a/document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java b/document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java
index eafc6d214d3..7ae09f604b7 100644
--- a/document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java
+++ b/document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java
@@ -58,7 +58,7 @@ public class JsonSerializationHelper {
}
@FunctionalInterface
- static interface SubroutineThrowingIOException {
+ interface SubroutineThrowingIOException {
void invoke() throws IOException;
}
diff --git a/document/src/main/java/com/yahoo/document/json/JsonWriter.java b/document/src/main/java/com/yahoo/document/json/JsonWriter.java
index 2e4097e1d6a..73b563a30ab 100644
--- a/document/src/main/java/com/yahoo/document/json/JsonWriter.java
+++ b/document/src/main/java/com/yahoo/document/json/JsonWriter.java
@@ -134,16 +134,10 @@ public class JsonWriter implements DocumentWriter {
// this makes it impossible to refeed directly, not sure what's correct
// perhaps just change to "put"?
generator.writeStringField("id", value.getId().toString());
- generator.writeObjectFieldStart(FIELDS);
- Iterator<Map.Entry<Field, FieldValue>> i = value.iterator();
- while (i.hasNext()) {
- Map.Entry<Field, FieldValue> entry = i.next();
- entry.getValue().serialize(entry.getKey(), this);
- }
+ writeFields(value);
generator.writeEndObject();
- generator.writeEndObject();
generator.flush();
} catch (IOException e) {
throw new RuntimeException(e);
@@ -347,4 +341,15 @@ public class JsonWriter implements DocumentWriter {
serializeString(generator, field, value);
return this;
}
+
+ public void writeFields(Document value) throws IOException {
+ generator.writeObjectFieldStart(FIELDS);
+ Iterator<Map.Entry<Field, FieldValue>> i = value.iterator();
+ while (i.hasNext()) {
+ Map.Entry<Field, FieldValue> entry = i.next();
+ entry.getValue().serialize(entry.getKey(), this);
+ }
+ generator.writeEndObject();
+ }
+
}