Remove abstract InternalMetricsAggregation class (#23326)

This class doesn't seem to do much other than to group together
certain types of aggregations.
This commit is contained in:
Christoph Büscher 2017-02-23 18:03:40 +01:00 committed by GitHub
parent 7e3c06c55d
commit 8b1b152e91
7 changed files with 10 additions and 56 deletions

View File

@ -1,42 +0,0 @@
/*
* Licensed to Elasticsearch under one or more contributor
* license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright
* ownership. Elasticsearch licenses this file to you under
* the Apache License, Version 2.0 (the "License"); you may
* not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.elasticsearch.search.aggregations.metrics;
import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import java.io.IOException;
import java.util.List;
import java.util.Map;
public abstract class InternalMetricsAggregation extends InternalAggregation {
protected InternalMetricsAggregation(String name, List<PipelineAggregator> pipelineAggregators, Map<String, Object> metaData) {
super(name, pipelineAggregators, metaData);
}
/**
* Read from a stream.
*/
protected InternalMetricsAggregation(StreamInput in) throws IOException {
super(in);
}
}

View File

@ -20,6 +20,7 @@ package org.elasticsearch.search.aggregations.metrics;
import org.elasticsearch.common.io.stream.StreamInput; import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.search.DocValueFormat; import org.elasticsearch.search.DocValueFormat;
import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator; import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import java.io.IOException; import java.io.IOException;
@ -27,7 +28,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
public abstract class InternalNumericMetricsAggregation extends InternalMetricsAggregation { public abstract class InternalNumericMetricsAggregation extends InternalAggregation {
private static final DocValueFormat DEFAULT_FORMAT = DocValueFormat.RAW; private static final DocValueFormat DEFAULT_FORMAT = DocValueFormat.RAW;
@ -118,7 +119,7 @@ public abstract class InternalNumericMetricsAggregation extends InternalMetricsA
return false; return false;
} }
InternalNumericMetricsAggregation other = (InternalNumericMetricsAggregation) obj; InternalNumericMetricsAggregation other = (InternalNumericMetricsAggregation) obj;
return super.equals(obj) && return super.equals(obj) &&
Objects.equals(format, other.format); Objects.equals(format, other.format);
} }
} }

View File

@ -24,7 +24,6 @@ import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.StreamOutput;
import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentBuilder;
import org.elasticsearch.search.aggregations.InternalAggregation; import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.metrics.InternalMetricsAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator; import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import java.io.IOException; import java.io.IOException;
@ -32,7 +31,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
public class InternalGeoBounds extends InternalMetricsAggregation implements GeoBounds { public class InternalGeoBounds extends InternalAggregation implements GeoBounds {
final double top; final double top;
final double bottom; final double bottom;
final double posLeft; final double posLeft;

View File

@ -25,7 +25,6 @@ import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.StreamOutput;
import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentBuilder;
import org.elasticsearch.search.aggregations.InternalAggregation; import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.metrics.InternalMetricsAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator; import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import java.io.IOException; import java.io.IOException;
@ -35,7 +34,7 @@ import java.util.Map;
/** /**
* Serialization and merge logic for {@link GeoCentroidAggregator}. * Serialization and merge logic for {@link GeoCentroidAggregator}.
*/ */
public class InternalGeoCentroid extends InternalMetricsAggregation implements GeoCentroid { public class InternalGeoCentroid extends InternalAggregation implements GeoCentroid {
protected final GeoPoint centroid; protected final GeoPoint centroid;
protected final long count; protected final long count;

View File

@ -27,7 +27,6 @@ import org.elasticsearch.script.ExecutableScript;
import org.elasticsearch.script.Script; import org.elasticsearch.script.Script;
import org.elasticsearch.script.ScriptContext; import org.elasticsearch.script.ScriptContext;
import org.elasticsearch.search.aggregations.InternalAggregation; import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.metrics.InternalMetricsAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator; import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import java.io.IOException; import java.io.IOException;
@ -37,7 +36,7 @@ import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
public class InternalScriptedMetric extends InternalMetricsAggregation implements ScriptedMetric { public class InternalScriptedMetric extends InternalAggregation implements ScriptedMetric {
private final Script reduceScript; private final Script reduceScript;
private final List<Object> aggregation; private final List<Object> aggregation;

View File

@ -27,11 +27,10 @@ import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.StreamOutput;
import org.elasticsearch.common.lucene.Lucene; import org.elasticsearch.common.lucene.Lucene;
import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentBuilder;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.SearchHits; import org.elasticsearch.search.SearchHits;
import org.elasticsearch.search.aggregations.InternalAggregation; import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.metrics.InternalMetricsAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator; import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import org.elasticsearch.search.SearchHit;
import java.io.IOException; import java.io.IOException;
import java.util.Arrays; import java.util.Arrays;
@ -41,7 +40,7 @@ import java.util.Map;
/** /**
* Results of the {@link TopHitsAggregator}. * Results of the {@link TopHitsAggregator}.
*/ */
public class InternalTopHits extends InternalMetricsAggregation implements TopHits { public class InternalTopHits extends InternalAggregation implements TopHits {
private int from; private int from;
private int size; private int size;
private TopDocs topDocs; private TopDocs topDocs;
@ -117,7 +116,7 @@ public class InternalTopHits extends InternalMetricsAggregation implements TopHi
shardDocs = new TopFieldDocs[aggregations.size()]; shardDocs = new TopFieldDocs[aggregations.size()];
for (int i = 0; i < shardDocs.length; i++) { for (int i = 0; i < shardDocs.length; i++) {
InternalTopHits topHitsAgg = (InternalTopHits) aggregations.get(i); InternalTopHits topHitsAgg = (InternalTopHits) aggregations.get(i);
shardDocs[i] = (TopFieldDocs) topHitsAgg.topDocs; shardDocs[i] = topHitsAgg.topDocs;
shardHits[i] = topHitsAgg.searchHits; shardHits[i] = topHitsAgg.searchHits;
} }
reducedTopDocs = TopDocs.merge(sort, from, size, (TopFieldDocs[]) shardDocs); reducedTopDocs = TopDocs.merge(sort, from, size, (TopFieldDocs[]) shardDocs);

View File

@ -22,7 +22,6 @@ import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.common.io.stream.StreamOutput; import org.elasticsearch.common.io.stream.StreamOutput;
import org.elasticsearch.common.xcontent.XContentBuilder; import org.elasticsearch.common.xcontent.XContentBuilder;
import org.elasticsearch.search.aggregations.InternalAggregation; import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.metrics.InternalMetricsAggregation;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator; import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
import java.io.IOException; import java.io.IOException;
@ -35,7 +34,7 @@ import static java.util.Collections.emptyMap;
/** /**
* Computes distribution statistics over multiple fields * Computes distribution statistics over multiple fields
*/ */
public class InternalMatrixStats extends InternalMetricsAggregation implements MatrixStats { public class InternalMatrixStats extends InternalAggregation implements MatrixStats {
/** per shard stats needed to compute stats */ /** per shard stats needed to compute stats */
private final RunningStats stats; private final RunningStats stats;
/** final result */ /** final result */