AbstractElasticIndex: Open XContentBuilder in try-with-resource
Change-Id: I6f1de6573bf0c1e8932f96c4c4c1a819a955fbb1
diff --git a/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/AbstractElasticIndex.java b/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/AbstractElasticIndex.java
index a60c552..adb1687 100644
--- a/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/AbstractElasticIndex.java
+++ b/gerrit-elasticsearch/src/main/java/com/google/gerrit/elasticsearch/AbstractElasticIndex.java
@@ -161,20 +161,23 @@
}
private String toDoc(V v) throws IOException {
- XContentBuilder builder = jsonBuilder().startObject();
- for (Values<V> values : schema.buildFields(v, fillArgs)) {
- String name = values.getField().getName();
- if (values.getField().isRepeatable()) {
- builder.field(
- name,
- Streams.stream(values.getValues()).filter(e -> shouldAddElement(e)).collect(toList()));
- } else {
- Object element = Iterables.getOnlyElement(values.getValues(), "");
- if (shouldAddElement(element)) {
- builder.field(name, element);
+ try (XContentBuilder builder = jsonBuilder().startObject()) {
+ for (Values<V> values : schema.buildFields(v, fillArgs)) {
+ String name = values.getField().getName();
+ if (values.getField().isRepeatable()) {
+ builder.field(
+ name,
+ Streams.stream(values.getValues())
+ .filter(e -> shouldAddElement(e))
+ .collect(toList()));
+ } else {
+ Object element = Iterables.getOnlyElement(values.getValues(), "");
+ if (shouldAddElement(element)) {
+ builder.field(name, element);
+ }
}
}
+ return builder.endObject().string();
}
- return builder.endObject().string();
}
}