summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorTanguy Leroux <tlrx.dev@gmail.com>2017-04-18 14:47:18 +0200
committerGitHub <noreply@github.com>2017-04-18 14:47:18 +0200
commitf217eb8ad8d3ecc82e2f926222b1f036b0d555b7 (patch)
tree3fd167783433bbbce86c4418866a869d508540cf /core
parentedada2581e75400da9fac82bdfbc7ec1f02ef0d8 (diff)
Merge Percentile class with interface (#24154)
This commit merges the Percentile interface with the InternalPercentile class, as we don't need to maintain both.
Diffstat (limited to 'core')
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/InternalPercentile.java41
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/Percentile.java37
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentileRanks.java3
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentiles.java3
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentileRanks.java3
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentiles.java3
-rw-r--r--core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketmetrics/percentile/InternalPercentilesBucket.java3
7 files changed, 39 insertions, 54 deletions
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/InternalPercentile.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/InternalPercentile.java
deleted file mode 100644
index bb8876d82f..0000000000
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/InternalPercentile.java
+++ /dev/null
@@ -1,41 +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.percentiles;
-
-public class InternalPercentile implements Percentile {
-
- private final double percent;
- private final double value;
-
- public InternalPercentile(double percent, double value) {
- this.percent = percent;
- this.value = value;
- }
-
- @Override
- public double getPercent() {
- return percent;
- }
-
- @Override
- public double getValue() {
- return value;
- }
-} \ No newline at end of file
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/Percentile.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/Percentile.java
index 96ad4f261a..ca62ca6b20 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/Percentile.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/Percentile.java
@@ -19,10 +19,41 @@
package org.elasticsearch.search.aggregations.metrics.percentiles;
-public interface Percentile {
+import java.util.Objects;
- double getPercent();
+public class Percentile {
- double getValue();
+ private final double percent;
+ private final double value;
+ public Percentile(double percent, double value) {
+ this.percent = percent;
+ this.value = value;
+ }
+
+ public double getPercent() {
+ return percent;
+ }
+
+ public double getValue() {
+ return value;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) {
+ return true;
+ }
+ if (o == null || getClass() != o.getClass()) {
+ return false;
+ }
+ Percentile that = (Percentile) o;
+ return Double.compare(that.percent, percent) == 0
+ && Double.compare(that.value, value) == 0;
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(percent, value);
+ }
} \ No newline at end of file
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentileRanks.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentileRanks.java
index 35234d73ac..cb058128c5 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentileRanks.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentileRanks.java
@@ -21,7 +21,6 @@ package org.elasticsearch.search.aggregations.metrics.percentiles.hdr;
import org.HdrHistogram.DoubleHistogram;
import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.search.DocValueFormat;
-import org.elasticsearch.search.aggregations.metrics.percentiles.InternalPercentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.PercentileRanks;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
@@ -109,7 +108,7 @@ public class InternalHDRPercentileRanks extends AbstractInternalHDRPercentiles i
@Override
public Percentile next() {
- final Percentile next = new InternalPercentile(percentileRank(state, values[i]), values[i]);
+ final Percentile next = new Percentile(percentileRank(state, values[i]), values[i]);
++i;
return next;
}
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentiles.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentiles.java
index 579f25c166..3967e94e48 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentiles.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/hdr/InternalHDRPercentiles.java
@@ -21,7 +21,6 @@ package org.elasticsearch.search.aggregations.metrics.percentiles.hdr;
import org.HdrHistogram.DoubleHistogram;
import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.search.DocValueFormat;
-import org.elasticsearch.search.aggregations.metrics.percentiles.InternalPercentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentiles;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
@@ -99,7 +98,7 @@ public class InternalHDRPercentiles extends AbstractInternalHDRPercentiles imple
@Override
public Percentile next() {
- final Percentile next = new InternalPercentile(percents[i], state.getValueAtPercentile(percents[i]));
+ final Percentile next = new Percentile(percents[i], state.getValueAtPercentile(percents[i]));
++i;
return next;
}
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentileRanks.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentileRanks.java
index 9e24ba5d86..666993f41f 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentileRanks.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentileRanks.java
@@ -20,7 +20,6 @@ package org.elasticsearch.search.aggregations.metrics.percentiles.tdigest;
import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.search.DocValueFormat;
-import org.elasticsearch.search.aggregations.metrics.percentiles.InternalPercentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.PercentileRanks;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
@@ -106,7 +105,7 @@ public class InternalTDigestPercentileRanks extends AbstractInternalTDigestPerce
@Override
public Percentile next() {
- final Percentile next = new InternalPercentile(percentileRank(state, values[i]), values[i]);
+ final Percentile next = new Percentile(percentileRank(state, values[i]), values[i]);
++i;
return next;
}
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentiles.java b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentiles.java
index ec61921911..5a62f24933 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentiles.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/InternalTDigestPercentiles.java
@@ -20,7 +20,6 @@ package org.elasticsearch.search.aggregations.metrics.percentiles.tdigest;
import org.elasticsearch.common.io.stream.StreamInput;
import org.elasticsearch.search.DocValueFormat;
-import org.elasticsearch.search.aggregations.metrics.percentiles.InternalPercentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentiles;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
@@ -95,7 +94,7 @@ public class InternalTDigestPercentiles extends AbstractInternalTDigestPercentil
@Override
public Percentile next() {
- final Percentile next = new InternalPercentile(percents[i], state.quantile(percents[i] / 100));
+ final Percentile next = new Percentile(percents[i], state.quantile(percents[i] / 100));
++i;
return next;
}
diff --git a/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketmetrics/percentile/InternalPercentilesBucket.java b/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketmetrics/percentile/InternalPercentilesBucket.java
index 059d72a8e1..375011c4e8 100644
--- a/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketmetrics/percentile/InternalPercentilesBucket.java
+++ b/core/src/main/java/org/elasticsearch/search/aggregations/pipeline/bucketmetrics/percentile/InternalPercentilesBucket.java
@@ -26,7 +26,6 @@ import org.elasticsearch.search.DocValueFormat;
import org.elasticsearch.search.aggregations.InternalAggregation;
import org.elasticsearch.search.aggregations.metrics.InternalNumericMetricsAggregation;
import org.elasticsearch.search.aggregations.metrics.max.InternalMax;
-import org.elasticsearch.search.aggregations.metrics.percentiles.InternalPercentile;
import org.elasticsearch.search.aggregations.metrics.percentiles.Percentile;
import org.elasticsearch.search.aggregations.pipeline.PipelineAggregator;
@@ -136,7 +135,7 @@ public class InternalPercentilesBucket extends InternalNumericMetricsAggregation
@Override
public Percentile next() {
- final Percentile next = new InternalPercentile(percents[i], percentiles[i]);
+ final Percentile next = new Percentile(percents[i], percentiles[i]);
++i;
return next;
}