aboutsummaryrefslogtreecommitdiffstats
path: root/document/src/main/java/com/yahoo/document/json/JsonWriter.java
diff options
context:
space:
mode:
authorJon Marius Venstad <venstad@gmail.com>2020-10-13 13:50:08 +0200
committerJon Marius Venstad <venstad@gmail.com>2020-10-13 13:50:08 +0200
commitc458fcd2c2a35b129763115439ba3d13502b40e0 (patch)
tree47c2a692f72135d4c7dc710cfd8a27d1366eaf24 /document/src/main/java/com/yahoo/document/json/JsonWriter.java
parentc15afc9eafbddf4cf51e8e3937daf017ade1a6a5 (diff)
Expose "writeFields" from JsonWriter, to write only document fields
Diffstat (limited to 'document/src/main/java/com/yahoo/document/json/JsonWriter.java')
-rw-r--r--document/src/main/java/com/yahoo/document/json/JsonWriter.java19
1 files changed, 12 insertions, 7 deletions
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();
+ }
+
}