summaryrefslogtreecommitdiffstats
path: root/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java
diff options
context:
space:
mode:
Diffstat (limited to 'metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java')
-rw-r--r--metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java18
1 files changed, 18 insertions, 0 deletions
diff --git a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java
index 8030e03b0ff..95f58813e6e 100644
--- a/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java
+++ b/metrics-proxy/src/main/java/ai/vespa/metricsproxy/metric/Metric.java
@@ -8,6 +8,7 @@ import ai.vespa.metricsproxy.metric.model.MetricId;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
+import java.util.Objects;
import java.util.Set;
/**
@@ -106,6 +107,23 @@ public class Metric {
return new Metric(name, value, time, new LinkedHashMap<>(dimensions), getDescription());
}
+ @Override
+ public boolean equals(Object obj) {
+ if ( ! (obj instanceof Metric) ) return false;
+ Metric rhs = (Metric) obj;
+ return name.equals(rhs.name)
+ && description.equals(rhs.description)
+ && value.equals(rhs.value)
+ && (time == rhs.time)
+ && Objects.equals(dimensions, rhs.dimensions)
+ && Objects.equals(consumers, rhs.consumers);
+ }
+
+ @Override
+ public int hashCode() {
+ return Objects.hash(name, description, value, dimensions, consumers, time);
+ }
+
/**
* @return the description of this metric
*/