Add enable checks to missing enrich plugin methods (#47187)

Some of the server side objects that do not need to be created unless
enrich is enabled were still being created. This commit fixes that.
This commit is contained in:
Michael Basnight 2019-10-01 10:24:23 -05:00
parent fe937ea4b8
commit 0e1b77568a

View File

@ -63,6 +63,7 @@ import java.util.concurrent.TimeUnit;
import java.util.function.Supplier; import java.util.function.Supplier;
import static java.util.Collections.emptyList; import static java.util.Collections.emptyList;
import static java.util.Collections.emptyMap;
import static org.elasticsearch.xpack.core.XPackSettings.ENRICH_ENABLED_SETTING; import static org.elasticsearch.xpack.core.XPackSettings.ENRICH_ENABLED_SETTING;
public class EnrichPlugin extends Plugin implements ActionPlugin, IngestPlugin { public class EnrichPlugin extends Plugin implements ActionPlugin, IngestPlugin {
@ -104,6 +105,10 @@ public class EnrichPlugin extends Plugin implements ActionPlugin, IngestPlugin {
@Override @Override
public Map<String, Processor.Factory> getProcessors(Processor.Parameters parameters) { public Map<String, Processor.Factory> getProcessors(Processor.Parameters parameters) {
if (enabled == false) {
return emptyMap();
}
EnrichProcessorFactory factory = new EnrichProcessorFactory(parameters.client); EnrichProcessorFactory factory = new EnrichProcessorFactory(parameters.client);
parameters.ingestService.addIngestClusterStateListener(factory); parameters.ingestService.addIngestClusterStateListener(factory);
return Collections.singletonMap(EnrichProcessorFactory.TYPE, factory); return Collections.singletonMap(EnrichProcessorFactory.TYPE, factory);
@ -153,6 +158,7 @@ public class EnrichPlugin extends Plugin implements ActionPlugin, IngestPlugin {
if (enabled == false || transportClientMode) { if (enabled == false || transportClientMode) {
return emptyList(); return emptyList();
} }
EnrichPolicyLocks enrichPolicyLocks = new EnrichPolicyLocks(); EnrichPolicyLocks enrichPolicyLocks = new EnrichPolicyLocks();
EnrichPolicyExecutor enrichPolicyExecutor = new EnrichPolicyExecutor(settings, clusterService, client, threadPool, EnrichPolicyExecutor enrichPolicyExecutor = new EnrichPolicyExecutor(settings, clusterService, client, threadPool,
new IndexNameExpressionResolver(), enrichPolicyLocks, System::currentTimeMillis); new IndexNameExpressionResolver(), enrichPolicyLocks, System::currentTimeMillis);