diff options
Diffstat (limited to 'core/src/main/java/org/elasticsearch/search/suggest/completion')
-rw-r--r-- | core/src/main/java/org/elasticsearch/search/suggest/completion/CompletionSuggestionBuilder.java | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/suggest/completion/CompletionSuggestionBuilder.java b/core/src/main/java/org/elasticsearch/search/suggest/completion/CompletionSuggestionBuilder.java index 09382d9aaf..0fd3726384 100644 --- a/core/src/main/java/org/elasticsearch/search/suggest/completion/CompletionSuggestionBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/suggest/completion/CompletionSuggestionBuilder.java @@ -42,7 +42,6 @@ import org.elasticsearch.search.suggest.completion.context.ContextMapping; import org.elasticsearch.search.suggest.completion.context.ContextMappings; import java.io.IOException; -import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -233,10 +232,7 @@ public class CompletionSuggestionBuilder extends SuggestionBuilder<CompletionSug regexOptions.toXContent(builder, params); } if (contextBytes != null) { - try (XContentParser contextParser = XContentFactory.xContent(XContentType.JSON).createParser(contextBytes)) { - builder.field(CONTEXTS_FIELD.getPreferredName()); - builder.copyCurrentStructure(contextParser); - } + builder.rawField(CONTEXTS_FIELD.getPreferredName(), contextBytes); } return builder; } @@ -270,7 +266,8 @@ public class CompletionSuggestionBuilder extends SuggestionBuilder<CompletionSug CompletionFieldMapper.CompletionFieldType type = (CompletionFieldMapper.CompletionFieldType) mappedFieldType; suggestionContext.setFieldType(type); if (type.hasContextMappings() && contextBytes != null) { - try (XContentParser contextParser = XContentFactory.xContent(contextBytes).createParser(contextBytes)) { + try (XContentParser contextParser = XContentFactory.xContent(contextBytes).createParser(context.getXContentRegistry(), + contextBytes)) { if (type.hasContextMappings() && contextParser != null) { ContextMappings contextMappings = type.getContextMappings(); contextParser.nextToken(); |