diff options
author | Ryan Ernst <ryan@iernst.net> | 2017-05-25 12:18:45 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-05-25 12:18:45 -0700 |
commit | 8aaea51a0a0d822e67404e3af6b970e8a323b877 (patch) | |
tree | 1d008a9db65c784419fe6edfcb93e365bc103c7e /core/src/main/java/org/elasticsearch/search/aggregations/metrics | |
parent | 59c052e76f7428427c8f7e995285bd0b05e82c08 (diff) |
Scripting: Move context definitions to instance type classes (#24883)
This is a simple refactoring to move the context definitions into the
type that they use. While we have multiple context names for the same
class at the moment, this will eventually become one ScriptContext per
instance type, so the pattern of a static member on the interface called
CONTEXT can be used. This commit also moves the consolidated list of
contexts provided by core ES into ScriptModule.
Diffstat (limited to 'core/src/main/java/org/elasticsearch/search/aggregations/metrics')
3 files changed, 6 insertions, 5 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/InternalScriptedMetric.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/InternalScriptedMetric.java index b0a4836a69..a309a0ddcc 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/InternalScriptedMetric.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/InternalScriptedMetric.java @@ -96,7 +96,7 @@ public class InternalScriptedMetric extends InternalAggregation implements Scrip vars.putAll(firstAggregation.reduceScript.getParams()); } ExecutableScript.Compiled compiled = reduceContext.scriptService().compile( - firstAggregation.reduceScript, ScriptContext.AGGS_EXECUTABLE); + firstAggregation.reduceScript, ExecutableScript.AGGS_CONTEXT); ExecutableScript script = compiled.newInstance(vars); aggregation = Collections.singletonList(script.run()); } else if (reduceContext.isFinalReduce()) { diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/ScriptedMetricAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/ScriptedMetricAggregationBuilder.java index 6865d6a211..34c06ec3c5 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/ScriptedMetricAggregationBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/scripted/ScriptedMetricAggregationBuilder.java @@ -186,14 +186,15 @@ public class ScriptedMetricAggregationBuilder extends AbstractAggregationBuilder QueryShardContext queryShardContext = context.getQueryShardContext(); Function<Map<String, Object>, ExecutableScript> executableInitScript; if (initScript != null) { - executableInitScript = queryShardContext.getLazyExecutableScript(initScript, ScriptContext.AGGS_EXECUTABLE); + executableInitScript = queryShardContext.getLazyExecutableScript(initScript, ExecutableScript.AGGS_CONTEXT); } else { executableInitScript = (p) -> null; } - Function<Map<String, Object>, SearchScript> searchMapScript = queryShardContext.getLazySearchScript(mapScript, ScriptContext.AGGS); + Function<Map<String, Object>, SearchScript> searchMapScript = + queryShardContext.getLazySearchScript(mapScript, SearchScript.AGGS_CONTEXT); Function<Map<String, Object>, ExecutableScript> executableCombineScript; if (combineScript != null) { - executableCombineScript = queryShardContext.getLazyExecutableScript(combineScript, ScriptContext.AGGS_EXECUTABLE); + executableCombineScript = queryShardContext.getLazyExecutableScript(combineScript, ExecutableScript.AGGS_CONTEXT); } else { executableCombineScript = (p) -> null; } diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/tophits/TopHitsAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/tophits/TopHitsAggregationBuilder.java index 0ff94e9aa9..94467add51 100644 --- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/tophits/TopHitsAggregationBuilder.java +++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/tophits/TopHitsAggregationBuilder.java @@ -534,7 +534,7 @@ public class TopHitsAggregationBuilder extends AbstractAggregationBuilder<TopHit if (scriptFields != null) { for (ScriptField field : scriptFields) { SearchScript searchScript = context.getQueryShardContext().getSearchScript(field.script(), - ScriptContext.SEARCH); + SearchScript.CONTEXT); fields.add(new org.elasticsearch.search.fetch.subphase.ScriptFieldsContext.ScriptField( field.fieldName(), searchScript, field.ignoreFailure())); } |