Skip to content

Commit ae73670

Browse files
authored
Mark SearchSourceBuilder as ToXContentObject (#24795)
SearchSourceBuilder#toXContent prints out a complete object, hence it should implement ToXContentObject
1 parent deb7caf commit ae73670

File tree

2 files changed

+6
-9
lines changed

2 files changed

+6
-9
lines changed

core/src/main/java/org/elasticsearch/search/builder/SearchSourceBuilder.java

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import org.elasticsearch.common.logging.Loggers;
3333
import org.elasticsearch.common.unit.TimeValue;
3434
import org.elasticsearch.common.xcontent.ToXContent;
35+
import org.elasticsearch.common.xcontent.ToXContentObject;
3536
import org.elasticsearch.common.xcontent.XContentBuilder;
3637
import org.elasticsearch.common.xcontent.XContentParser;
3738
import org.elasticsearch.index.query.QueryBuilder;
@@ -69,7 +70,7 @@
6970
*
7071
* @see org.elasticsearch.action.search.SearchRequest#source(SearchSourceBuilder)
7172
*/
72-
public final class SearchSourceBuilder extends ToXContentToBytes implements Writeable {
73+
public final class SearchSourceBuilder extends ToXContentToBytes implements Writeable, ToXContentObject {
7374
private static final DeprecationLogger DEPRECATION_LOGGER =
7475
new DeprecationLogger(Loggers.getLogger(SearchSourceBuilder.class));
7576

@@ -1098,12 +1099,6 @@ public void parseXContent(QueryParseContext context) throws IOException {
10981099
@Override
10991100
public XContentBuilder toXContent(XContentBuilder builder, Params params) throws IOException {
11001101
builder.startObject();
1101-
innerToXContent(builder, params);
1102-
builder.endObject();
1103-
return builder;
1104-
}
1105-
1106-
public void innerToXContent(XContentBuilder builder, Params params) throws IOException {
11071102
if (from != -1) {
11081103
builder.field(FROM_FIELD.getPreferredName(), from);
11091104
}
@@ -1199,7 +1194,7 @@ public void innerToXContent(XContentBuilder builder, Params params) throws IOExc
11991194

12001195
if (aggregations != null) {
12011196
builder.field(AGGREGATIONS_FIELD.getPreferredName(), aggregations);
1202-
}
1197+
}
12031198

12041199
if (highlightBuilder != null) {
12051200
builder.field(HIGHLIGHT_FIELD.getPreferredName(), highlightBuilder);
@@ -1232,6 +1227,8 @@ public void innerToXContent(XContentBuilder builder, Params params) throws IOExc
12321227
if (collapse != null) {
12331228
builder.field(COLLAPSE.getPreferredName(), collapse);
12341229
}
1230+
builder.endObject();
1231+
return builder;
12351232
}
12361233

12371234
public static class IndexBoost implements Writeable, ToXContent {

core/src/test/java/org/elasticsearch/search/builder/SearchSourceBuilderTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public void testFromXContent() throws IOException {
6363
assertParseSearchSource(testSearchSourceBuilder, createParser(builder));
6464
}
6565

66-
private void assertParseSearchSource(SearchSourceBuilder testBuilder, XContentParser parser) throws IOException {
66+
private static void assertParseSearchSource(SearchSourceBuilder testBuilder, XContentParser parser) throws IOException {
6767
QueryParseContext parseContext = new QueryParseContext(parser);
6868
if (randomBoolean()) {
6969
parser.nextToken(); // sometimes we move it on the START_OBJECT to

0 commit comments

Comments
 (0)