diff --git a/java-client/src/main/java/co/elastic/clients/elasticsearch/async_search/SubmitRequest.java b/java-client/src/main/java/co/elastic/clients/elasticsearch/async_search/SubmitRequest.java index 9c8b9319e..e90d5fddf 100644 --- a/java-client/src/main/java/co/elastic/clients/elasticsearch/async_search/SubmitRequest.java +++ b/java-client/src/main/java/co/elastic/clients/elasticsearch/async_search/SubmitRequest.java @@ -1074,12 +1074,18 @@ protected void serializeInternal(JsonGenerator generator, JsonpMapper mapper) { } if (ApiTypeHelper.isDefined(this.storedFields)) { generator.writeKey("stored_fields"); - generator.writeStartArray(); - for (String item0 : this.storedFields) { - generator.write(item0); + if (this.storedFields.size() == 1) { + String singleItem = this.storedFields.get(0); + generator.write(singleItem); + + } else { + generator.writeStartArray(); + for (String item0 : this.storedFields) { + generator.write(item0); + } + generator.writeEnd(); } - generator.writeEnd(); } if (this.suggest != null) { diff --git a/java-client/src/main/java/co/elastic/clients/elasticsearch/core/SearchRequest.java b/java-client/src/main/java/co/elastic/clients/elasticsearch/core/SearchRequest.java index c3f6eb61b..bbb2b6de3 100644 --- a/java-client/src/main/java/co/elastic/clients/elasticsearch/core/SearchRequest.java +++ b/java-client/src/main/java/co/elastic/clients/elasticsearch/core/SearchRequest.java @@ -1060,12 +1060,18 @@ protected void serializeInternal(JsonGenerator generator, JsonpMapper mapper) { } if (ApiTypeHelper.isDefined(this.storedFields)) { generator.writeKey("stored_fields"); - generator.writeStartArray(); - for (String item0 : this.storedFields) { - generator.write(item0); + if (this.storedFields.size() == 1) { + String singleItem = this.storedFields.get(0); + generator.write(singleItem); + + } else { + generator.writeStartArray(); + for (String item0 : this.storedFields) { + generator.write(item0); + } + generator.writeEnd(); } - generator.writeEnd(); } if (this.suggest != null) { diff --git a/java-client/src/main/java/co/elastic/clients/elasticsearch/core/search/Hit.java b/java-client/src/main/java/co/elastic/clients/elasticsearch/core/search/Hit.java index f9b7efa07..58f753b26 100644 --- a/java-client/src/main/java/co/elastic/clients/elasticsearch/core/search/Hit.java +++ b/java-client/src/main/java/co/elastic/clients/elasticsearch/core/search/Hit.java @@ -72,6 +72,7 @@ public class Hit implements JsonpSerializable { private final String index; + @Nullable private final String id; @Nullable @@ -127,7 +128,7 @@ public class Hit implements JsonpSerializable { private Hit(Builder builder) { this.index = ApiTypeHelper.requireNonNull(builder.index, this, "index"); - this.id = ApiTypeHelper.requireNonNull(builder.id, this, "id"); + this.id = builder.id; this.score = builder.score; this.type = builder.type; this.explanation = builder.explanation; @@ -161,8 +162,9 @@ public final String index() { } /** - * Required - API name: {@code _id} + * API name: {@code _id} */ + @Nullable public final String id() { return this.id; } @@ -311,9 +313,11 @@ protected void serializeInternal(JsonGenerator generator, JsonpMapper mapper) { generator.writeKey("_index"); generator.write(this.index); - generator.writeKey("_id"); - generator.write(this.id); + if (this.id != null) { + generator.writeKey("_id"); + generator.write(this.id); + } if (this.score != null) { generator.writeKey("_score"); generator.write(this.score); @@ -458,6 +462,7 @@ public static class Builder extends WithJsonObjectBuilderBase> { private String index; + @Nullable private String id; @Nullable @@ -523,9 +528,9 @@ public final Builder index(String value) { } /** - * Required - API name: {@code _id} + * API name: {@code _id} */ - public final Builder id(String value) { + public final Builder id(@Nullable String value) { this.id = value; return this; } diff --git a/java-client/src/main/java/co/elastic/clients/elasticsearch/doc-files/api-spec.html b/java-client/src/main/java/co/elastic/clients/elasticsearch/doc-files/api-spec.html index 4ec471f3a..51a56434f 100644 --- a/java-client/src/main/java/co/elastic/clients/elasticsearch/doc-files/api-spec.html +++ b/java-client/src/main/java/co/elastic/clients/elasticsearch/doc-files/api-spec.html @@ -2351,10 +2351,10 @@ if (hash.length > 1) { hash = hash.substring(1); } - window.location = "https://github.com/elastic/elasticsearch-specification/tree/3458c5d2594e7ad33da1b128469faa09881bbead/specification/" + (paths[hash] || ""); + window.location = "https://github.com/elastic/elasticsearch-specification/tree/60128dd705a0e7c7f4da6044f1c54ff6a86157eb/specification/" + (paths[hash] || ""); - Please see the Elasticsearch API specification. + Please see the Elasticsearch API specification.