summaryrefslogtreecommitdiff
path: root/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript')
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregationBuilder.java7
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregator.java70
2 files changed, 29 insertions, 48 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregationBuilder.java b/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregationBuilder.java
index 1e285c24a1..4925de9c77 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregationBuilder.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregationBuilder.java
@@ -47,7 +47,7 @@ import static org.elasticsearch.search.aggregations.pipeline.PipelineAggregator.
import static org.elasticsearch.search.aggregations.pipeline.PipelineAggregator.Parser.GAP_POLICY;
public class BucketScriptPipelineAggregationBuilder extends AbstractPipelineAggregationBuilder<BucketScriptPipelineAggregationBuilder> {
- public static final String NAME = BucketScriptPipelineAggregator.TYPE.name();
+ public static final String NAME = "bucket_script";
public static final ParseField AGGREGATION_NAME_FIELD = new ParseField(NAME);
private final Script script;
@@ -56,8 +56,7 @@ public class BucketScriptPipelineAggregationBuilder extends AbstractPipelineAggr
private GapPolicy gapPolicy = GapPolicy.SKIP;
public BucketScriptPipelineAggregationBuilder(String name, Map<String, String> bucketsPathsMap, Script script) {
- super(name, BucketScriptPipelineAggregator.TYPE.name(), new TreeMap<>(bucketsPathsMap).values()
- .toArray(new String[bucketsPathsMap.size()]));
+ super(name, NAME, new TreeMap<>(bucketsPathsMap).values().toArray(new String[bucketsPathsMap.size()]));
this.bucketsPathsMap = bucketsPathsMap;
this.script = script;
}
@@ -70,7 +69,7 @@ public class BucketScriptPipelineAggregationBuilder extends AbstractPipelineAggr
* Read from a stream.
*/
public BucketScriptPipelineAggregationBuilder(StreamInput in) throws IOException {
- super(in, BucketScriptPipelineAggregator.TYPE.name());
+ super(in, NAME);
int mapSize = in.readVInt();
bucketsPathsMap = new HashMap<String, String>(mapSize);
for (int i = 0; i < mapSize; i++) {
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregator.java b/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregator.java
index 35893c7d09..008b0217c6 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregator.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketscript/BucketScriptPipelineAggregator.java
@@ -29,14 +29,12 @@ import org.elasticsearch.search.DocValueFormat;
import org.elasticsearch.search.aggregations.AggregationExecutionException;
import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.InternalAggregation.ReduceContext;
-import org.elasticsearch.search.aggregations.InternalAggregation.Type;
import org.elasticsearch.search.aggregations.InternalAggregations;
import org.elasticsearch.search.aggregations.InternalMultiBucketAggregation;
import org.elasticsearch.search.aggregations.bucket.MultiBucketsAggregation.Bucket;
import org.elasticsearch.search.aggregations.pipeline.BucketHelpers.GapPolicy;
import org.elasticsearch.search.aggregations.pipeline.InternalSimpleValue;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
-import org.elasticsearch.search.aggregations.pipeline.PipelineAggregatorStreams;
import java.io.IOException;
import java.util.ArrayList;
@@ -50,28 +48,10 @@ import java.util.stream.StreamSupport;
import static org.elasticsearch.search.aggregations.pipeline.BucketHelpers.resolveBucketValue;
public class BucketScriptPipelineAggregator extends PipelineAggregator {
-
- public static final Type TYPE = new Type("bucket_script");
-
- public static final PipelineAggregatorStreams.Stream STREAM = in -> {
- BucketScriptPipelineAggregator result = new BucketScriptPipelineAggregator();
- result.readFrom(in);
- return result;
- };
-
- public static void registerStreams() {
- PipelineAggregatorStreams.registerStream(STREAM, TYPE.stream());
- }
-
- private DocValueFormat formatter;
- private GapPolicy gapPolicy;
-
- private Script script;
-
- private Map<String, String> bucketsPathsMap;
-
- public BucketScriptPipelineAggregator() {
- }
+ private final DocValueFormat formatter;
+ private final GapPolicy gapPolicy;
+ private final Script script;
+ private final Map<String, String> bucketsPathsMap;
public BucketScriptPipelineAggregator(String name, Map<String, String> bucketsPathsMap, Script script, DocValueFormat formatter,
GapPolicy gapPolicy, Map<String, Object> metadata) {
@@ -82,9 +62,29 @@ public class BucketScriptPipelineAggregator extends PipelineAggregator {
this.gapPolicy = gapPolicy;
}
+ /**
+ * Read from a stream.
+ */
+ @SuppressWarnings("unchecked")
+ public BucketScriptPipelineAggregator(StreamInput in) throws IOException {
+ super(in);
+ script = new Script(in);
+ formatter = in.readNamedWriteable(DocValueFormat.class);
+ gapPolicy = GapPolicy.readFrom(in);
+ bucketsPathsMap = (Map<String, String>) in.readGenericValue();
+ }
+
@Override
- public Type type() {
- return TYPE;
+ protected void doWriteTo(StreamOutput out) throws IOException {
+ script.writeTo(out);
+ out.writeNamedWriteable(formatter);
+ gapPolicy.writeTo(out);
+ out.writeGenericValue(bucketsPathsMap);
+ }
+
+ @Override
+ public String getWriteableName() {
+ return BucketScriptPipelineAggregationBuilder.NAME;
}
@Override
@@ -136,22 +136,4 @@ public class BucketScriptPipelineAggregator extends PipelineAggregator {
}
return originalAgg.create(newBuckets);
}
-
- @Override
- protected void doWriteTo(StreamOutput out) throws IOException {
- script.writeTo(out);
- out.writeNamedWriteable(formatter);
- gapPolicy.writeTo(out);
- out.writeGenericValue(bucketsPathsMap);
- }
-
- @SuppressWarnings("unchecked")
- @Override
- protected void doReadFrom(StreamInput in) throws IOException {
- script = new Script(in);
- formatter = in.readNamedWriteable(DocValueFormat.class);
- gapPolicy = GapPolicy.readFrom(in);
- bucketsPathsMap = (Map<String, String>) in.readGenericValue();
- }
-
}