diff options
author | Lester Solbakken <lesters@oath.com> | 2019-02-06 12:30:22 +0100 |
---|---|---|
committer | Lester Solbakken <lesters@oath.com> | 2019-02-06 12:30:22 +0100 |
commit | c920578953fef858fa0937e86860dc7f49c5dffe (patch) | |
tree | e006d4b682e569caebf6d14dbf1ea46b62785d21 | |
parent | 8c3433291f3a290bf5799fcffe7791b92be96e6a (diff) |
Don't render empty multivalued fields
-rw-r--r-- | document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java | 18 |
1 files changed, 16 insertions, 2 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 55e7dc3c1b3..93d4bd8d81f 100644 --- a/document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java +++ b/document/src/main/java/com/yahoo/document/json/JsonSerializationHelper.java @@ -152,8 +152,11 @@ public class JsonSerializationHelper { } public static <T extends FieldValue> void serializeWeightedSet(JsonGenerator generator, FieldBase field, WeightedSet<T> value) { + // Hide empty fields + if (value.size() == 0) { + return; + } fieldNameIfNotNull(generator, field); - wrapIOException(() -> { generator.writeStartObject(); @@ -168,8 +171,11 @@ public class JsonSerializationHelper { } public static <T extends FieldValue> void serializeCollectionField(FieldWriter fieldWriter, JsonGenerator generator, FieldBase field, CollectionFieldValue<T> value) { + // Hide empty fields + if (value.size() == 0) { + return; + } fieldNameIfNotNull(generator, field); - wrapIOException(() -> { generator.writeStartArray(); Iterator<T> i = value.iterator(); @@ -184,6 +190,10 @@ public class JsonSerializationHelper { public static <K extends FieldValue, V extends FieldValue> void serializeMapField(FieldWriter fieldWriter, JsonGenerator generator, FieldBase field, MapFieldValue<K, V> map) { + // Hide empty fields + if (map.size() == 0) { + return; + } fieldNameIfNotNull(generator, field); wrapIOException(() -> { generator.writeStartObject(); @@ -203,6 +213,10 @@ public class JsonSerializationHelper { } public static <T extends FieldValue> void serializeArrayField(FieldWriter fieldWriter, JsonGenerator generator, FieldBase field, Array<T> value) { + // Hide empty fields + if (value.size() == 0) { + return; + } wrapIOException(() -> { fieldNameIfNotNull(generator, field); generator.writeStartArray(); |