aboutsummaryrefslogtreecommitdiffstats
path: root/docker-api
diff options
context:
space:
mode:
authorvalerijf <valerijf@yahoo-inc.com>2016-09-27 13:31:16 +0200
committervalerijf <valerijf@yahoo-inc.com>2016-09-29 09:45:46 +0200
commit86b706a244047e2b7f4e0a2443d3cc5e5a5c13c3 (patch)
treec2a5c9db5c5c20b72529fbc9d0f9300d08ad9946 /docker-api
parente35d3bdec5338dfae5883f23bd8814bde5bdcc15 (diff)
Added null implementations for metric wrappers
Diffstat (limited to 'docker-api')
-rw-r--r--docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/CounterWrapper.java16
-rw-r--r--docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/GaugeWrapper.java11
-rw-r--r--docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/MetricReceiverWrapper.java27
3 files changed, 53 insertions, 1 deletions
diff --git a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/CounterWrapper.java b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/CounterWrapper.java
index 7cfeb3d670e..0b3b4d8ada9 100644
--- a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/CounterWrapper.java
+++ b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/CounterWrapper.java
@@ -26,4 +26,18 @@ public class CounterWrapper implements MetricValue {
public Number getValue() {
return value;
}
-}
+
+
+ static final class NullCounter extends CounterWrapper {
+ NullCounter() {
+ super(null);
+ }
+
+ @Override
+ public void add() {
+ }
+
+ public void add(long n) {
+ }
+ }
+} \ No newline at end of file
diff --git a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/GaugeWrapper.java b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/GaugeWrapper.java
index 4d9d00dcb0b..9ef37132b14 100644
--- a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/GaugeWrapper.java
+++ b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/GaugeWrapper.java
@@ -19,4 +19,15 @@ public class GaugeWrapper implements MetricValue {
public Number getValue() {
return value;
}
+
+
+ final static class NullGauge extends GaugeWrapper {
+ NullGauge() {
+ super(null);
+ }
+
+ @Override
+ public void sample(double x) {
+ }
+ }
}
diff --git a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/MetricReceiverWrapper.java b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/MetricReceiverWrapper.java
index a7923bf4526..eb1cf31d8e9 100644
--- a/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/MetricReceiverWrapper.java
+++ b/docker-api/src/main/java/com/yahoo/vespa/hosted/dockerapi/metrics/MetricReceiverWrapper.java
@@ -3,6 +3,7 @@ package com.yahoo.vespa.hosted.dockerapi.metrics;
import com.google.inject.Inject;
import com.yahoo.metrics.simple.MetricReceiver;
+import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
@@ -12,6 +13,8 @@ import java.util.Set;
* @author valerijf
*/
public class MetricReceiverWrapper {
+ public static final MetricReceiverWrapper nullImplementation = new MetricReceiverWrapper.NullReceiver();
+
private final Map<String, MetricValue> metrics = new HashMap<>();
private final MetricReceiver metricReceiver;
@@ -39,4 +42,28 @@ public class MetricReceiverWrapper {
public MetricValue getMetricByName(String name) {
return metrics.get(name);
}
+
+
+ private static final class NullReceiver extends MetricReceiverWrapper {
+ NullReceiver() {
+ super(null);
+ }
+
+ @Override
+ public CounterWrapper declareCounter(String name) {
+ return new CounterWrapper.NullCounter();
+ }
+
+ public GaugeWrapper declageGauge(String name) {
+ return new GaugeWrapper.NullGauge();
+ }
+
+ public Set<String> getMetricNames() {
+ return Collections.emptySet();
+ }
+
+ public MetricValue getMetricByName(String name) {
+ return null;
+ }
+ }
}