mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-03-09 14:34:43 +00:00
Handle removal of IndiciesQueriesRegistry
It has been replaced by `XContentParser#namedObject`. Original commit: elastic/x-pack-elasticsearch@fd316791a2
This commit is contained in:
parent
1178112c4a
commit
483711ed20
@ -14,7 +14,6 @@ import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.common.unit.TimeValue;
|
||||
import org.elasticsearch.common.xcontent.XContentParser;
|
||||
import org.elasticsearch.index.query.QueryParseContext;
|
||||
import org.elasticsearch.indices.query.IndicesQueriesRegistry;
|
||||
import org.elasticsearch.rest.RestController;
|
||||
import org.elasticsearch.rest.RestRequest;
|
||||
import org.elasticsearch.rest.action.RestToXContentListener;
|
||||
@ -38,8 +37,6 @@ import static org.elasticsearch.xpack.graph.action.GraphExploreAction.INSTANCE;
|
||||
* @see GraphExploreRequest
|
||||
*/
|
||||
public class RestGraphAction extends XPackRestHandler {
|
||||
|
||||
private IndicesQueriesRegistry indicesQueriesRegistry;
|
||||
public static final ParseField TIMEOUT_FIELD = new ParseField("timeout");
|
||||
public static final ParseField SIGNIFICANCE_FIELD = new ParseField("use_significance");
|
||||
public static final ParseField RETURN_DETAILED_INFO = new ParseField("return_detailed_stats");
|
||||
@ -60,11 +57,9 @@ public class RestGraphAction extends XPackRestHandler {
|
||||
public static final ParseField TERM_FIELD = new ParseField("term");
|
||||
|
||||
@Inject
|
||||
public RestGraphAction(Settings settings, RestController controller, IndicesQueriesRegistry indicesQueriesRegistry) {
|
||||
public RestGraphAction(Settings settings, RestController controller) {
|
||||
super(settings);
|
||||
|
||||
this.indicesQueriesRegistry = indicesQueriesRegistry;
|
||||
|
||||
// @deprecated Remove in 6.0
|
||||
// NOTE: Old versions did not end with "/_explore"; they were just "/explore"
|
||||
controller.registerWithDeprecatedHandler(GET, "/{index}" + URI_BASE + "/_graph/_explore", this,
|
||||
@ -92,7 +87,7 @@ public class RestGraphAction extends XPackRestHandler {
|
||||
Hop currentHop = graphRequest.createNextHop(null);
|
||||
|
||||
try (XContentParser parser = request.contentOrSourceParamParser()) {
|
||||
QueryParseContext context = new QueryParseContext(indicesQueriesRegistry, parser, parseFieldMatcher);
|
||||
QueryParseContext context = new QueryParseContext(parser, parseFieldMatcher);
|
||||
|
||||
XContentParser.Token token = parser.nextToken();
|
||||
|
||||
|
@ -403,7 +403,7 @@ public class SecurityIndexSearcherWrapper extends IndexSearcherWrapper {
|
||||
}
|
||||
};
|
||||
QueryRewriteContext copy = new QueryRewriteContext(original.getIndexSettings(), original.getMapperService(), scriptService,
|
||||
original.getXContentRegistry(), null, client, original.getIndexReader(), original::nowInMillis);
|
||||
original.getXContentRegistry(), client, original.getIndexReader(), original::nowInMillis);
|
||||
queryBuilder.rewrite(copy);
|
||||
}
|
||||
}
|
||||
|
@ -74,7 +74,7 @@ public class WatcherSearchTemplateService extends AbstractComponent {
|
||||
BytesReference source = request.getSearchSource();
|
||||
if (source != null && source.length() > 0) {
|
||||
try (XContentParser parser = XContentFactory.xContent(source).createParser(xContentRegistry, source)) {
|
||||
sourceBuilder.parseXContent(new QueryParseContext(searchRequestParsers.queryParsers, parser, parseFieldMatcher),
|
||||
sourceBuilder.parseXContent(new QueryParseContext(parser, parseFieldMatcher),
|
||||
searchRequestParsers.aggParsers, searchRequestParsers.suggesters, searchRequestParsers.searchExtParsers);
|
||||
searchRequest.source(sourceBuilder);
|
||||
}
|
||||
|
@ -36,7 +36,6 @@ import org.elasticsearch.index.query.QueryShardContext;
|
||||
import org.elasticsearch.index.query.TermQueryBuilder;
|
||||
import org.elasticsearch.index.query.TermsQueryBuilder;
|
||||
import org.elasticsearch.index.shard.ShardId;
|
||||
import org.elasticsearch.indices.query.IndicesQueriesRegistry;
|
||||
import org.elasticsearch.license.XPackLicenseState;
|
||||
import org.elasticsearch.script.ScriptService;
|
||||
import org.elasticsearch.test.ESTestCase;
|
||||
@ -70,12 +69,11 @@ public class SecurityIndexSearcherWrapperIntegrationTests extends ESTestCase {
|
||||
FieldPermissions(),
|
||||
singleton(new BytesArray("{\"match_all\" : {}}")));
|
||||
IndexSettings indexSettings = IndexSettingsModule.newIndexSettings(shardId.getIndex(), Settings.EMPTY);
|
||||
IndicesQueriesRegistry indicesQueriesRegistry = mock(IndicesQueriesRegistry.class);
|
||||
Client client = mock(Client.class);
|
||||
when(client.settings()).thenReturn(Settings.EMPTY);
|
||||
final long nowInMillis = randomPositiveLong();
|
||||
QueryShardContext realQueryShardContext = new QueryShardContext(shardId.id(), indexSettings, null, null, mapperService, null,
|
||||
null, xContentRegistry(), indicesQueriesRegistry, client, null, () -> nowInMillis);
|
||||
null, xContentRegistry(), client, null, () -> nowInMillis);
|
||||
QueryShardContext queryShardContext = spy(realQueryShardContext);
|
||||
QueryParseContext queryParseContext = mock(QueryParseContext.class);
|
||||
IndexSettings settings = IndexSettingsModule.newIndexSettings("_index", Settings.EMPTY);
|
||||
|
@ -815,7 +815,7 @@ public class SecurityIndexSearcherWrapperUnitTests extends ESTestCase {
|
||||
Client client = mock(Client.class);
|
||||
when(client.settings()).thenReturn(Settings.EMPTY);
|
||||
final long nowInMillis = randomPositiveLong();
|
||||
QueryRewriteContext context = new QueryRewriteContext(null, mapperService, scriptService, xContentRegistry(), null, client, null,
|
||||
QueryRewriteContext context = new QueryRewriteContext(null, mapperService, scriptService, xContentRegistry(), client, null,
|
||||
() -> nowInMillis);
|
||||
QueryBuilder queryBuilder1 = new TermsQueryBuilder("field", "val1", "val2");
|
||||
SecurityIndexSearcherWrapper.failIfQueryUsesClient(scriptService, queryBuilder1, context);
|
||||
|
@ -12,7 +12,6 @@ import org.elasticsearch.common.xcontent.NamedXContentRegistry;
|
||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
||||
import org.elasticsearch.common.xcontent.XContentParser;
|
||||
import org.elasticsearch.common.xcontent.support.XContentMapValues;
|
||||
import org.elasticsearch.indices.query.IndicesQueriesRegistry;
|
||||
import org.elasticsearch.plugins.Plugin;
|
||||
import org.elasticsearch.plugins.ScriptPlugin;
|
||||
import org.elasticsearch.script.MockMustacheScriptEngine;
|
||||
@ -145,8 +144,7 @@ public class SearchInputTests extends ESIntegTestCase {
|
||||
XContentParser parser = createParser(builder);
|
||||
parser.nextToken();
|
||||
|
||||
IndicesQueriesRegistry indicesQueryRegistry = internalCluster().getInstance(IndicesQueriesRegistry.class);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(indicesQueryRegistry, null, null, null);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(null, null, null);
|
||||
SearchInputFactory factory = new SearchInputFactory(Settings.EMPTY, WatcherClientProxy.of(client()),
|
||||
searchParsers, xContentRegistry(), scriptService());
|
||||
|
||||
|
@ -8,16 +8,18 @@ package org.elasticsearch.xpack.watcher.watch;
|
||||
import org.apache.logging.log4j.Logger;
|
||||
import org.elasticsearch.ElasticsearchParseException;
|
||||
import org.elasticsearch.action.search.SearchRequest;
|
||||
import org.elasticsearch.common.ParseField;
|
||||
import org.elasticsearch.common.bytes.BytesReference;
|
||||
import org.elasticsearch.common.logging.Loggers;
|
||||
import org.elasticsearch.common.settings.Settings;
|
||||
import org.elasticsearch.common.unit.TimeValue;
|
||||
import org.elasticsearch.common.xcontent.NamedXContentRegistry;
|
||||
import org.elasticsearch.common.xcontent.XContentBuilder;
|
||||
import org.elasticsearch.common.xcontent.XContentFactory;
|
||||
import org.elasticsearch.index.query.MatchAllQueryBuilder;
|
||||
import org.elasticsearch.index.query.QueryParser;
|
||||
import org.elasticsearch.index.query.QueryBuilder;
|
||||
import org.elasticsearch.index.query.QueryParseContext;
|
||||
import org.elasticsearch.index.query.ScriptQueryBuilder;
|
||||
import org.elasticsearch.indices.query.IndicesQueriesRegistry;
|
||||
import org.elasticsearch.license.XPackLicenseState;
|
||||
import org.elasticsearch.script.Script;
|
||||
import org.elasticsearch.script.ScriptService;
|
||||
@ -286,12 +288,7 @@ public class WatchTests extends ESTestCase {
|
||||
ActionRegistry actionRegistry = registry(Collections.emptyList(), conditionRegistry, transformRegistry);
|
||||
Watch.Parser watchParser = new Watch.Parser(settings, triggerService, actionRegistry, inputRegistry, null, Clock.systemUTC());
|
||||
|
||||
IndicesQueriesRegistry queryRegistry = new IndicesQueriesRegistry();
|
||||
QueryParser<MatchAllQueryBuilder> queryParser1 = MatchAllQueryBuilder::fromXContent;
|
||||
queryRegistry.register(queryParser1, MatchAllQueryBuilder.NAME);
|
||||
QueryParser<ScriptQueryBuilder> queryParser2 = ScriptQueryBuilder::fromXContent;
|
||||
queryRegistry.register(queryParser2, ScriptQueryBuilder.NAME);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(queryRegistry, null, null, null);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(null, null, null);
|
||||
WatcherSearchTemplateService searchTemplateService = new WatcherSearchTemplateService(settings, scriptService, searchParsers,
|
||||
xContentRegistry());
|
||||
|
||||
@ -412,12 +409,7 @@ public class WatchTests extends ESTestCase {
|
||||
Map<String, InputFactory> parsers = new HashMap<>();
|
||||
switch (inputType) {
|
||||
case SearchInput.TYPE:
|
||||
IndicesQueriesRegistry queryRegistry = new IndicesQueriesRegistry();
|
||||
QueryParser<MatchAllQueryBuilder> queryParser1 = MatchAllQueryBuilder::fromXContent;
|
||||
queryRegistry.register(queryParser1, MatchAllQueryBuilder.NAME);
|
||||
QueryParser<ScriptQueryBuilder> queryParser2 = ScriptQueryBuilder::fromXContent;
|
||||
queryRegistry.register(queryParser2, ScriptQueryBuilder.NAME);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(queryRegistry, null, null, null);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(null, null, null);
|
||||
parsers.put(SearchInput.TYPE, new SearchInputFactory(settings, client, searchParsers, xContentRegistry(), scriptService));
|
||||
return new InputRegistry(Settings.EMPTY, parsers);
|
||||
default:
|
||||
@ -465,10 +457,7 @@ public class WatchTests extends ESTestCase {
|
||||
}
|
||||
|
||||
private TransformRegistry transformRegistry() {
|
||||
IndicesQueriesRegistry queryRegistry = new IndicesQueriesRegistry();
|
||||
QueryParser<MatchAllQueryBuilder> queryParser = MatchAllQueryBuilder::fromXContent;
|
||||
queryRegistry.register(queryParser, MatchAllQueryBuilder.NAME);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(queryRegistry, null, null, null);
|
||||
SearchRequestParsers searchParsers = new SearchRequestParsers(null, null, null);
|
||||
Map<String, TransformFactory> factories = new HashMap<>();
|
||||
factories.put(ScriptTransform.TYPE, new ScriptTransformFactory(settings, scriptService));
|
||||
factories.put(SearchTransform.TYPE, new SearchTransformFactory(settings, client, searchParsers, xContentRegistry(), scriptService));
|
||||
@ -530,6 +519,16 @@ public class WatchTests extends ESTestCase {
|
||||
licenseState);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected NamedXContentRegistry xContentRegistry() {
|
||||
return new NamedXContentRegistry(Arrays.asList(
|
||||
new NamedXContentRegistry.Entry(QueryBuilder.class, new ParseField(MatchAllQueryBuilder.NAME), (p, c) ->
|
||||
MatchAllQueryBuilder.fromXContent((QueryParseContext) c)),
|
||||
new NamedXContentRegistry.Entry(QueryBuilder.class, new ParseField(ScriptQueryBuilder.NAME), (p, c) ->
|
||||
ScriptQueryBuilder.fromXContent((QueryParseContext) c))
|
||||
));
|
||||
}
|
||||
|
||||
static class ParseOnlyScheduleTriggerEngine extends ScheduleTriggerEngine {
|
||||
|
||||
public ParseOnlyScheduleTriggerEngine(Settings settings, ScheduleRegistry registry, Clock clock) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user